统计数据收集代理: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 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
转载本站原创文章,请注明出处,并保留原始链接、图片水印。
本站是一个以用户分享为主的开源技术平台,欢迎各类分享!