这是使用Golang为zabbix写的一个钉钉报警插件。
可以将zabbix的报警消息推送给钉钉,实现使用钉钉APP接收zabbix的报警消息。
之前也写过[url=]ZABBIX云之家报警插件[/url]。
钉钉(阿里)和云之家(金蝶)可以免费无限次的给自己的应用推送消息,而微信有很多限制,要实现推送消息,首先需要缴费认证才可以,所以选择了钉钉和云之家。
下面的教程仅支持zabbix3.0及以上版本。。 程序使用方法实际上,本程序是这样发送消息的,下面zabbix配置完成以后,就可以这样调用这个程序来发送消息。 您还可以加 -h 或 --help参数来查看帮助。
下载程序 golang-zabbix-alter-to-dingding-linux32dl?did=86
golang-zabbix-alter-to-dingding-linux64 dl?did=87
消息效果
下面是部署方法: 注册钉钉企业 部署报警程序 创建报警媒介 创建动作 为用户增加报警媒介
注册钉钉企业
步骤省略
请按照下图获取agentid\corpid\corpsecret
部署报警程序
下载上面的文件,根据你的系统类型部署32位或64位程序。
部署的目录在/etc/zabbix/zabbix_server.conf中查看。
需要注意的是为程序增加执行权限。
创建报警媒介
根据下图的描述,创建你的报警媒介。
请不要遗漏脚本参数,不然会导致收不到消息。
-agentid\-corpid\-corpsecret这三个参数请根据你申请到的如实填写。
-to参数您可以省略(移除该项),也可以写一个或多个例如:
-to=user1
-to=user1|user2|user3 创建动作根据下面图中的描述,创建报警动作。
其中 "color":"FFE61A1A", color后面为消息头部的颜色,您可以自定义。
其中前两位为透明度,后六位为颜色值,您可以通过查询取色器来获取这个颜色值。
动作内容:
1、默认信息
2、恢复信息
2016-08-02增加了xml格式,解决了json中获取zabbix变量不能有引号的问题,推荐使用。 为用户增加报警媒介
为用户增加报警媒介以后,用户才能收到消息。
结语
到了这里,如果您严格按照我写的步骤操作的话,您应该可以收到消息了。
您还可以创建多个报警媒介、动作中创建多个步骤,来实现消息分级。
例如:
1、1-10条消息仅发送给运维,11条开始也要发送给运维主管。
2、某类的消息发给运维的同时,还要发给DBA。
zabbix是个很灵活的工具,希望大家能使用它来帮助自己做更多的事情。
如果您想查看本程序的源码,请访问Github:[url=]internelp/golang-zabbix-alter-to-dingding[/url] 原创:枫叶
|