diff --git a/CHANGELOG.md b/CHANGELOG.md index 3aca132f8..728479937 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,9 +9,13 @@ - [#90](https://github.com/influxdb/telegraf/issues/90): Add Docker labels to tags in docker plugin - [#223](https://github.com/influxdb/telegraf/pull/223): Add port tag to nginx plugin. Thanks @neezgee! - [#227](https://github.com/influxdb/telegraf/pull/227): Add command intervals to exec plugin. Thanks @jpalay! +- Memory plugin: cached and buffered measurements re-added +- Logging: additional logging for each collection interval, track the number +of metrics collected and from how many plugins. ### Bugfixes - [#228](https://github.com/influxdb/telegraf/pull/228): New version of package will replace old one. Thanks @ekini! +- [#232](https://github.com/influxdb/telegraf/pull/232): Fix bashism run during deb package installation. Thanks @yankcrime! ## v0.1.9 [2015-09-22] diff --git a/agent.go b/agent.go index d6674f885..c1c9fcf14 100644 --- a/agent.go +++ b/agent.go @@ -177,12 +177,15 @@ func (a *Agent) crankParallel() error { var wg sync.WaitGroup + start := time.Now() + counter := 0 for _, plugin := range a.plugins { if plugin.config.Interval != 0 { continue } wg.Add(1) + counter++ go func(plugin *runningPlugin) { defer wg.Done() @@ -216,6 +219,9 @@ func (a *Agent) crankParallel() error { bp.Points = append(bp.Points, sub.Points...) } + elapsed := time.Since(start) + log.Printf("Cranking default (%s) interval, gathered %d metrics from %d plugins in %s\n", + a.Interval, len(bp.Points), counter, elapsed) return a.flush(&bp) } @@ -252,6 +258,7 @@ func (a *Agent) crankSeparate(shutdown chan struct{}, plugin *runningPlugin) err for { var bp BatchPoints var outerr error + start := time.Now() bp.Debug = a.Debug @@ -270,6 +277,9 @@ func (a *Agent) crankSeparate(shutdown chan struct{}, plugin *runningPlugin) err bp.Time = bp.Time.UTC() } + elapsed := time.Since(start) + log.Printf("Cranking separate (%s) interval, gathered %d metrics from %s in %s\n", + plugin.config.Interval, len(bp.Points), plugin.name, elapsed) if err := a.flush(&bp); err != nil { outerr = errors.New("Error encountered processing plugins & outputs") } diff --git a/cmd/telegraf/telegraf.go b/cmd/telegraf/telegraf.go index bb1e0121d..bf53d45b2 100644 --- a/cmd/telegraf/telegraf.go +++ b/cmd/telegraf/telegraf.go @@ -132,12 +132,9 @@ func main() { log.Printf("Starting Telegraf (version %s)\n", Version) log.Printf("Loaded outputs: %s", strings.Join(outputs, " ")) log.Printf("Loaded plugins: %s", strings.Join(plugins, " ")) - if ag.Debug { - log.Printf("Debug: enabled") - log.Printf("Agent Config: Interval:%s, Debug:%#v, Hostname:%#v, "+ - "Precision:%#v, UTC: %#v\n", - ag.Interval, ag.Debug, ag.Hostname, ag.Precision, ag.UTC) - } + log.Printf("Agent Config: Interval:%s, Debug:%#v, Hostname:%#v, "+ + "Precision:%#v, UTC: %#v\n", + ag.Interval, ag.Debug, ag.Hostname, ag.Precision, ag.UTC) log.Printf("Tags enabled: %s", config.ListTags()) if *fPidfile != "" { diff --git a/plugins/system/memory.go b/plugins/system/memory.go index 93cf7dc21..11e7afbb1 100644 --- a/plugins/system/memory.go +++ b/plugins/system/memory.go @@ -28,6 +28,8 @@ func (s *MemStats) Gather(acc plugins.Accumulator) error { acc.Add("available", vm.Available, vmtags) acc.Add("used", vm.Used, vmtags) acc.Add("free", vm.Free, vmtags) + acc.Add("cached", vm.Cached, vmtags) + acc.Add("buffered", vm.Buffers, vmtags) acc.Add("used_percent", 100*float64(vm.Used)/float64(vm.Total), vmtags) acc.Add("available_percent", 100*float64(vm.Available)/float64(vm.Total), diff --git a/scripts/package.sh b/scripts/package.sh index ace553e57..e88e52f9e 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -149,7 +149,7 @@ ln -sfn $INSTALL_ROOT_DIR/versions/$version/telegraf $INSTALL_ROOT_DIR/telegraf if ! id telegraf >/dev/null 2>&1; then useradd --help 2>&1| grep -- --system > /dev/null 2>&1 old_useradd=\$? - if [[ \$old_useradd == 0 ]] + if [ \$old_useradd -eq 0 ] then useradd --system -U -M telegraf else