概述
之前公司zabbix一直使用的是微信企业号告警,有时候接口不稳定,报错时而不正常。便在网上查找钉钉企业号告警的配置内容。
与微信告警机制类似,先注册一个企业号,企业号提供一个接口,zabbix通过接口将告警信息发送至json格式文本消息到微信或钉钉
钉钉脚本及方法提供的大神地址:https://www.qiansw.com/golang-zabbix-alter-to-dingding.html
一、.注册钉钉企业号,并找到发送信息最重要的三个参数CorpID、CorpSecret、AgentID
1.注册钉钉企业号:(目前只在钉钉app上找到添加入口),在钉钉app上——找到“联系人”——右上角“添加”——“创建团队”填写相应内容,团队人员不可低于6人
2.查看CorpID、CorpSecret:在钉钉电脑版上,左下角“管理”登录管理平台
输入管理密码:
在“企业应用”——“工作台设置”中可以查看CorpID和CorpSecret
3.添加微应用,成功后可查看agentid
企业应用——应用管理——自建应用——提交,提交后,进入该应用的设置,可查看agentid
**************************************************************************************************************************************************
二、在大神的网址中找到的插件文件,安装,并测试插件功能
(64位linux版)http://file.qiansw.com/usr/uploads/2017/01/golang-zabbix-alter-to-dingding-64
(32位linux版)http://file.qiansw.com/usr/uploads/2017/01/golang-zabbix-alter-to-dingding-32
1.将文件上传到zabbix server端的该路径下,并重命名为dingding.golang(源文件是go语言),添加执行权限x
2.测试插件文件能否发送告警信息到钉钉
查看UserID,-to传送的参数为UserID(通讯录——组织架构——部门人员)
进入到插件文件夹下,配置传入参数
cd /usr/local/zabbix/share/zabbix/alterscripts
./dingding.sh -agentid=(钉钉上查看) -corpid=(钉钉上查看) -corpsecret=(钉钉上查看) -to=(钉钉上查看) -msg="{ "from": "Tomcat03", "time": "2016.07.28 14:45:24", "level": "Warning", "name": "Response time is too high on Tomcat03", "key": "icmppingsec", "value": "31ms", "now": "31ms", "id": "1618", "ip": "10.139.105.107", "color":"FF4A934A", "age":"3m", "recoveryTime":"2016.07.28 14:48:24", "status":"OK" }"
发送成功,则在钉钉上可查看告警信息(查看详情页为新增微应用时填入的首页地址)
*****************************************************************************************************************************************************************
三、配置zabbix告警,关联钉钉插件
zabbix配置告警机制三步骤:添加告警媒介,添加用户,添加动作
添加告警媒介:管理——报警媒介类型——添加媒介类型
添加用户:管理——用户——创建用户
添加动作:配置——动作——创建动作
(具体配置,大神网站上有,就不贴了)
*******************************************************************************************************************************************************
四、对源码的修改
领导要求统一的告警页面,所以需要对源码进行修改
大神源码的传送门:https://github.com/internelp/golang-zabbix-alter-to-dingding
我就简单添加了所需要的内容,与微信告警不同,钉钉告警的动作定义了所有需要的宏所对应的字符,在go脚本中对告警内容进行调用。
修改区域:
**********************************************************************************************************************************************************
五、遇到的问题
1.首先是之前,在微信告警时,在配置ping丢包率的监控项的时候,单位为%,但是告警内容却是显示 “},”,并且后面内容显示不正常。后面的解决方式使用%%,但这样钉钉告警内容的单位也为%%。暂时没有想到好方法,有懂的,请赐教,谢谢
2.使用下来,感觉钉钉告警不是很稳定,网上有人说,钉钉官方会限制相同字段内容告警,但是如果是zabbix告警时间不同,应该不会有影响,反正我这个告警,我有时候正常,有时候不正常,一般出现三条告警,后面就没了,但是查看zabbix的动作日志却是显示成功送达。有哪位同学有这个经验,或者使用正常的请赐教,如果一样的话,可以使用钉钉群机器人来发送告警,这是大神的配置的内容,问题不大,就不赘诉了(以我现在的能力,不能完全原创,我也很绝望啊,只能分享使用经验了)https://www.qiansw.com/golang-zabbix-dingding-robot.html
2017年4月29日jecht更新
最后
以上就是欣慰冥王星为你收集整理的zabbix之告警杂谈(钉钉告警)的全部内容,希望文章能够帮你解决zabbix之告警杂谈(钉钉告警)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复