日志收集采用的技术方案是elasticsearch+td-agent+kibanna。bosun可接入elasticsearch作为数据源,从而实现日志报警
Bosun是由Stack Exchange团队打造的一套基于时间序列的监控预警系统,系统开源并遵守MIT协议。
Bosun拥有非常强大的表达式语言,能够灵活地定义预警规则以及展示预警通知。
Bosun能够让你利用历史数据来测试预警规则,这样能大大加快开发效率。
可接入的数据源:OpenTSDB、Graphite、Elastic。
(1)Docker支持的版本
0.5.0, latest Release Notes
0.6.0-pre 1a9d75de9668515429859d8486554e7425ba45ca
(2)安装命令
docker run -d -p 4242:4242 -p 8070:8070 stackexchange/bosun
(3)升级
$ apt-get update && apt-get install -y wget
$ wget -O /bosun/bosun <bosun-release-URL>
$ kill -HUP 1
0.6.0之后的版本,配置文件为bosun.toml和规则配置文件
在ElasticConf配置项下配置集群,默认为default集群,在后面查询数据时不指定集群时默认为default集群。
Hosts:集群列表
Version: 接入的es版本,支持v2,v5,v6
SimpleClient:设置为true
SMTPConf用来配置邮件发送的信息
EmailFrom:发送邮件的邮箱
Host:发送邮件服务器
Username:用户名
Password:密码
Bosun的内部存储器,用来存储预警事件等信息。
DB可以选择redis和go内置的ledis,默认时ledis。当配置了RedisHost时,Ledis的相关配置会失效。在生产环境上建议使用redis。
RedisHost:redis的地址
RedisDb:指定redis的db,默认为0
RedisPassword:redis密码
设置为True时,可以通过api和ui来保存规则配置文件,默认为False
规则文件的路径以及文件名配置
$ bosun -c /data/bosun.toml
生产环境上可在supervisor中启动。
启动成功后,访问http://127.0.0.1:8080/