分散式監控系統Zabbix-3.0.3-新版微信報警(企業微信取代企業號)

散盡浮華發表於2016-09-05

 

一般來說,Zabbix可以通過多種方式把告警資訊傳送到指定人,常用的有郵件,簡訊報警方式,但是現在越來越多的企業開始使用zabbix結合微信作為主要的告警方式,這樣可以及時有效的把告警資訊推送到接收人,方便告警的及時處理。之前介紹了分散式監控系統Zabbix-3.0.3-完整安裝記錄(6)-微信報警部署,然而新版微信已取消了企業號改用企業微信。使用微訊號發簡訊一般會有條數限制,企業微信沒有這個限制,而且成員分組也方便。比起之前的微信企業號,企業微信方式在zabbix報警設定上還是有一點不一樣的。廢話不多說了,下面簡單記錄下:

一、企業微信註冊

地址:http://work.weixin.qq.com/
註冊步驟沒有什麼可說的,按照提示資訊填入資訊即可。如下,可以選擇"沒有營業執照,繼續註冊"

提示:這裡簡單的說一下,微信企業號和微信公眾號是不一樣的。具體按照新版本的註冊資訊進行即可,在此就不多做截圖了~~~~~

二、配置微信企業號

當設定完微訊號的資訊之後,請繼續下面操作。中間有些步驟不是特別全,省略掉了,就是設定企業的資訊。可以參考分散式監控系統Zabbix-3.0.3-完整安裝記錄(6)-微信報警部署的一些設定。

新增成員時,注意賬號一定要是唯一的。

 

要邀請同事加入該企業微信中

重點是新增應用。"企業應用"->"建立應用"

 可以發現以前企業公眾號的應用ID和組ID已經被取消

準備事項:
-> 微信企業號
-> 企業號已經被部門成員關注
-> 企業號有一個可以傳送訊息的應用,一個授權管理員,可以使用應用給成員傳送訊息

需要得到的資訊
-> 記錄使用者的賬號(唯一ID)
-> CorpID
-> Secret、Agentld

三、Zabbix微信報警設定

設定zabbix預設指令碼路徑,這樣在web端就可以獲取到指令碼

[root@zabbix ~]# cat /data/zabbix/etc/zabbix_server.conf|grep alertscripts
AlertScriptsPath=/data/zabbix/alertscripts

下載wechat指令碼

下載地址:https://pan.baidu.com/s/1eS082J4
提取密碼:kry2

[root@zabbix ~]# cd /data/zabbix/alertscripts/
[root@zabbix alertscripts]# chmod   755 wechat
[root@zabbix alertscripts]# chown  zabbix:zabbix wechat

測試

[root@zabbix alertscripts]# ./wechat --corpid=****** --corpsecret=****** --msg="您好,告警測試" --user=******  --agentid=******
{"errcode":0,"errmsg":"ok","invaliduser":""} 
[root@zabbix alertscripts]#

提示:
--corpid= 我們企業裡面的id
--corpsecret= 這裡就是我們Secret裡面的id
-msg= 內容
-user=邀請使用者的賬號

因為wechat指令碼是編譯過的,無法進行編輯,我們可以使用./wechat -h or --help 檢視

登入微信檢視

四、zabbix web 介面配置

新增"報警媒介"

兩個變數,一個是傳送給哪些使用者,一個是傳送的內容:
--user={ALERT.SENDTO}
--msg={ALERT.MESSAGE}

新增"使用者的報警媒介",這裡選擇admin使用者

新增報警觸發的"動作"

預設收件人:

故障{TRIGGER.STATUS},伺服器:{HOSTNAME1}發生: {TRIGGER.NAME}故障!

預設資訊:

告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警資訊: {TRIGGER.NAME}
告警專案:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

然後進行測試:關閉備份機的zabbix_agent,即關閉10050埠。過一會兒觀察微信的報警資訊:

重新開啟備份機的zabbix_agent,同樣會受到報警恢復的資訊。

相關文章