Zabbix 實現微信報警

Zabbix沒有爲我們提供微信報警的媒介,我們需要自己創建,通過腳本來發消息。主要分爲三部分:(1)zabbix server端配置報警媒介,以及發給誰  (2)微信報警腳本   (3)在企業微信創建應用API(供zabbix報警調用)以及用戶的賬號(收報警信息)

 

配置Zabbix微信報警媒介


Administration-->Media Types-->Create Media Type

腳本加入三個參數:{ALERT.SENDTO} 發送給誰、{ALERT.SUBJECT} 發送信息的標題、{ALERT.MESSAGE} 發送內容

腳本文件放在服務端即server端:微信腳本是放在服務端的weixin.sh

 

 

 

配置收件人


配置報警郵件的接收人,到底寫誰??這個收件人必須擁有企業微信賬號,後面會說,可以先配置

至此 發送端接收端都已經配置好了  微信監控報警配置完畢

 

配置action


 

 

微信報警腳本使用


[root@localhost src]# ls   --上傳微信報警包,並且解壓縮

debug  kernels  zabbix_weixin  zabbix_weixin.x86_64.tar.gz

[root@localhost zabbix_weixin]# ll

total 6712

-rwxr-xr-x. 1 root wheel 6868856 Jan 27  2016 weixin  --可以看到是一個可執行腳本文件,有x權限

-rw-r--r--. 1 root wheel      99 Jan 27  2016 weixincfg.json  --配置文件

[root@localhost zabbix_weixin]# mv weixin weixin.sh   --因爲zabbix媒介weixin裏面配置腳本名稱就是weixin.sh,一個二進制文件(這個腳本名字要和媒介裏面的微信腳本名稱保持一致)

 

配置server端報警文件的路徑,即腳本存放的路徑

[root@localhost zabbix_weixin]# vim /etc/zabbix_server.conf

AlertScriptsPath=/var/lib/zabbixsrv/alertscripts

 

將腳本拷貝到該目錄

[root@localhost zabbixsrv]# mkdir -p /var/lib/zabbixsrv/alertscripts

[root@localhost ~]# cp /usr/src/zabbix_weixin/weixin.sh  /var/lib/zabbixsrv/alertscripts/

[root@localhost ~]# cd /var/lib/zabbixsrv/alertscripts/

[root@localhost alertscripts]# ls

weixin.sh

 

[root@localhost alertscripts]# cp /usr/src/zabbix_weixin/weixincfg.json /etc/  --微信配置文件拷貝到/etc下面,這個文件配置在企業微信配置好後面配置

 

微信腳本關聯企業微信


 在企業微信創建消息應用,在企業微信的後臺創建應用,就是消息應用,微信報警的應用要綁定部門成員,只有在該部門裏面的成員纔可以接收到微信信息

創建運維部門

 創建應用,這個應用就是用來實現報警的API, 可見範圍就是哪些人可以使用該應用,即報警

創建用戶,這些用戶屬於運維部門,就是用來接收報警信息的,注意賬號,這個賬號是在zabbix配置收件人需要配置的,即send to

 

應用測試


這個應用爲報警提供了API接口,可以看到產生了AgentId  Secret 這個都需要添加到配置文件裏面,下面先來測試發信息

 可以看到通過該API可以向運維部的成員發送消息,要讓zabbix觸發器滿足某個條件通過該API來實現微信報警

 

實現微信報警


[root@localhost zabbix_weixin]# vim /etc/weixincfg.json

{
"corp": {
        "corpid": "ww0ba7f12c8be29fdf",
        "secret": "rDAdRGMdb5YilAWoChY5bJFCp1yS6t500i66LmoysDM",
        "agentid": 1000004
    }
}

這三行就是api接口會去調用的,copyid相當於企業ID  secret+agentid相當於一個應用,這個應用就是來實現報警的

[root@localhost ~]# systemctl restart zabbix-server  --監控端重啓讓配置生效

[root@localhost ~]# pkill nginx   --被監控端殺掉nginx

 

 [root@localhost ~]# nginx  --被監控端重啓nginx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章