bosun grafana plugin

最近一直在部署bosun监控项及报警系统,改写了不少指标值收集脚本,写了个自动部署脚本,目前已经在小范围内测试。越来越喜欢bosun的报警的强大及灵活性,但是还有觉得不太满意的是:

  1. 没有类似zabbix中的维护时间,只能用band函数取时间区段模拟,不过我们可以调用silence接口,使用系统的定时任务做处理,当然这就加重了耦合性,这点我们接下来再研究下;
  2. 可视化图表颜值太低,另外最要命的一点是只能用utc时区显示。因此,本文总结的是怎么使用grafana来改善bosun的颜值。

grafana安装

直接使用官方提供的rpm包进行安装:

wget -c https://grafanarel.s3.amazonaws.com/builds/grafana-2.6.0-1.x86_64.rpm -O grafana-2.6.0-1.x86_64.rpm  
rpm -ivh grafana-2.6.0-1.x86_64.rpm  

bosun插件安装

git clone https://github.com/grafana/grafana-plugins  
cp -av grafana-plugins/datasources/bosun /usr/share/grafana/public/app/plugins/datasource/  

启动grafana

service grafana-server start  

这就完成了!

grafana默认端口是3000,默认用户名和密码都是admin,按需要修改下。

增加datasource

看图,Type下拉菜单选择BosunUrl填上你自己的bosun服务端:

修正一个Bug

然后在添加dashboard图表的时候发现了一个bug:

通过google发现,这貌似是一个go的函数问题,估计是bosun使用的函数跟插件里的请求不兼容,没google到有人遇到这个问题,当然也没有解决办法,没办法,只好手动修改下js源码了:

# vim /usr/share/grafana/public/app/plugins/datasource/bosun/datasource.js
      // var exprTime = options.range.to.utc().format('HH:mm:ss');
      var exprTime = options.range.to.utc().format('HH:mm');

好了,现在有图表了:

Have fun!

后记

目前(2016/12/05)最新版本的bosun插件已经没有上述问题了。