简言
如果领导想要看面板图的日报邮件怎么办呢?
这是一个常见的需求,但是目前Grafana并没有直接支持。所以需要一些特别的方法。这里我们记录一下!
方案:Grafana-reporter
首先有一个开源工具叫Grafana reporter。他的做法是另起一个服务,然后利用Grafana的一个功能:Links.
在Grafana的Dashboard界面,点击设置按钮可以看到左边的标签中有一个“Links”,该功能可以给当前面板上加一些按钮,来调用某些链接(Link)。所以这个工具的做法是另外运行一个HTTP服务,然后在Grafana的面板中添加这个链接,点击后可以生成当前面板的PDF文件,当然也可以下载该PDF文件。
那么利用这个工具,你就可以自行访问该链接,拼装Dashboard的uid进去,得到该面板的PDF文件,通过脚本下载下来后再发邮件就行了。
这个方法的麻烦之处在于需要另外跑一个服务来提供PDF生成能力,而且PDF也不太好直接放在邮件正文里展现,更适合作为附件存在。
1 | yum install go |
注意: 需设置grafana允许匿名访问
匿名访问步骤
1 | 编辑/etc/grafana下的grafana.ini文件 |
然后就可以了
再分享两个小技巧,假设你现在匿名访问了grafana,如何切换登录呢?
IP:3000/login
退出登录
IP:3000/logout
grafana网页,随便一面板,点击settings——Likns——New——Type:link Url:http://ip:8686/api/v5/report/面板uid(可在网址上看到,http://ip:3000/d/uid) Title随便写,Tooltip随便写,Include全勾——add——会在右上角生成附件图标,点击图标会网页打开pdf内容,可点击下载或打印
举例子
这是我的一个SLA的面板,它的地址是http://192.168.4.200:3000/d/UxvOdcmGk/san-si-slafu-wu?orgId=1&panelId=&fullscreen=&edit=
那么它的uid是UxvOdcmGk,即Link中的地址这样写
http://192.168.4.200:8686/api/v5/report/UxvOdcmGk
完成之后会生成这样的内容
也可命令行通过wget下载为pdf:
1 | wget -O shserver.pdf http://ip:8686/api/v5/report/000000095?from=now-7d&to=now |
发送邮件:
echo “aa” | mail -s “bb” -a shserver.pdf zhi.yang@ming.com
可写成shell并设置crontab自动发送
参考另一个教程
http://www.bujarra.com/generando-informes-con-grafana-y-programar-su-envio/?lang=zh