話很少說,我們直接進入正題golang
釘釘報警時基於zabbix,訪問釘釘應用接口去推送的報警消息,因此咱們須要一個在釘釘建立一個報警應用json
一、 我作的釘釘報警是基於釘釘自定義應用進行推送的因此須要登陸釘釘管理後臺進行建立(zabbix自定義應用)運維
添加自建應用ide
配置
測試
完成以後直接提交便可this
2、建立完畢以後須要查看此應用的agentid 並進行復制(一會在zabbix服務端配置會用到)url
3、點擊à應用開發,複製corpid,和corpSecret spa
記住這兩個ID一會配置zabbixserver端須要使用3d
到這裏在釘釘平臺上建立的自定義應用就完畢了rest
4、如今配置服務端。
上傳文件到golang-zabbix-alter-to-dingding-64 -à /usr/local/zabbix/share/zabbix/alertscripts
chmod +x /usr/local/zabbix/share/zabbix/alertscripts/*
在zabbix_server.conf 添加
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
這是指定腳本位置
/etc/init.d/zabbix_server restart
五、測試腳本
golang-zabbix-alter-to-dingding.exe -agentid=應用ID -corpid=corpidID -corpsecret=CorpasecertID -to=06511352172666 -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\" }"
六、建立一個報警媒介
以上agentid、corpid、secret等按要求寫就行,-to是發送給誰,這個指定了一個,也能夠指定多個,若是不寫會默認發送到全部運維組。在釘釘裏邊點擊我的查看
-msg爲發送消息的內容{}裏面是變量。--style=xml 指定發送文件格式,默認爲json格式
7、配置獨立用戶的報警
8、配置監控動做
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<from>{HOSTNAME1}</from>
<time>{EVENT.DATE} {EVENT.TIME}</time>
<level>{TRIGGER.SEVERITY}</level>
<name>{TRIGGER.NAME}</name>
<key>{TRIGGER.KEY1}</key>
<value>{ITEM.VALUE}</value>
<now>{ITEM.LASTVALUE}</now>
<id>{EVENT.ID}</id>
<ip>{HOST.IP}</ip>
<color>FFE61A1A</color>
<url>http://60.205.249.122:5521</url>
<age>{EVENT.AGE}</age>
<status>{EVENT.STATUS}</status>
<acknowledgement> {EVENT.ACK.STATUS} </acknowledgement>
<acknowledgementhistory> {EVENT.ACK.HISTORY}</acknowledgementhistory>
</root>
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<from>{HOSTNAME1}</from>
<time>{EVENT.DATE} {EVENT.TIME}</time>
<level>{TRIGGER.SEVERITY}</level>
<name>{TRIGGER.NAME}</name>
<key>{TRIGGER.KEY1}</key>
<value>{ITEM.VALUE}</value>
<now>{ITEM.LASTVALUE}</now>
<id>{EVENT.ID}</id>
<ip>{HOST.IP}</ip>
<color>FF4A934A</color>
<url>http://60.205.249.122:5521</url>
<age>{EVENT.AGE}</age>
<recoveryTime>{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}</recoveryTime>
<status>OK</status>
</root>
配置完畢直接保存。
測試:關閉一臺監控端的agent進程
查看自帶的日誌是否發送
九、查看釘釘信息
文章到這裏就已經結束了,但願本篇博客能夠幫助到您。