統計數據收集代理:Telegraf
Telegraf 是一個用 Go 編寫的代理程序,可收集系統和服務的統計數據,并寫入到 InfluxDB 數據庫。
Telegraf 具有內存占用小的特點,通過插件系統開發人員可輕松添加支持其他服務的擴展。
目前已有的插件包括:
-
System (memory, CPU, network, etc.)
-
Docker
-
MySQL
-
PostgreSQL
-
Redis
示例代碼:
package cn.huxi.tools.util; // simple.go import "github.com/influxdb/telegraf/plugins" type Simple struct { Ok bool } func (s *Simple) Description() string { return "a demo plugin" } func (s *Simple) SampleConfig() string { return "ok = true # indicate if everything is fine" } func (s *Simple) Gather(acc plugins.Accumulator) error { if s.Ok { acc.Add("state", "pretty good", nil) } else { acc.Add("state", "not great", nil) } return nil } func init() { plugins.Add("simple", func() plugins.Plugin { &Simple{} }) }
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!