zabbix報警媒介------>微信報警
作者:尹正傑
版權聲明:原創作品,謝絕轉載!否則將追究法律責任。
歡迎加入高級運維工程師之路:598432640
微信在我們的生活中使用的比較頻繁,有時候你們發現身上沒帶錢,照樣可以購物啥的,之前我們介紹了zabbix監控媒介的一種方式就是
郵件報警,但是郵件報警可能我們不會及時看到相應的信息,因此,微信就是一個不錯的媒介工具。哎~再實現監控報警的過程中是很痛苦的,
幸好我的一個貴人(曹艷飛)給我指點迷津,才有了今天的這篇文章,所以花點時間記錄一下這個過程,希望大家不要踩坑了。
一.申請微信公眾號
1.根據官網的提示注冊一個微信公眾號。
https://qy.weixin.qq.com/
2.選擇企業號
3.填寫相應的信息
4.綁定一個手機號
5.注冊成功
6.添加一個成員,到時候監控的消息會發到這個用戶上的
7.創建應用中心
8.創建一個管理者用戶
9.微信接口調用
微信企業號接口調試地址: http://qydev.weixin.qq.com/debug
調用微信接口需要一個調用接口的憑證:access_token
通過CorpID和Secret可以獲得access_token
zabbix服務器端配置
1.修改配置文件,在配置文件添加報警腳本路徑的存放位置
[root@yinzhengjie ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
添加下面的一行,請根據你的實際安裝情況來確定路徑喲:
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
[root@yinzhengjie ~]# /etc/init.d/zabbix_server restart
添加完畢重啟服務
2.編寫發送微信的shell腳本
[root@yinzhengjie ~]# cd /usr/local/zabbix/share/zabbix/alertscripts
[root@yinzhengjie alertscripts]# more weixin.sh
#!/bin/bash
CropID='wxc1d03e690e8df6dc' //這個地方是你的corpid
Secret='EcVKMs5QikQc60P0D5qrgyhl3bo9F0Rn4x6NnRADWhy_3EONshXa197MCkbyXy_j' //這個地方是你的corpsecret,這個和上面的cropID跟你您的實際情況修改
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret"
Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" '{print $4}')
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken"
function body() {
local int AppID=3 //此處是企業號中的應用
id,你需要根據你的實際情況來定。
local UserID=$1
local PartyID=1
local Msg=$(echo "$@" | cut -d" " -f3-)
printf '{\n'
printf '\t"touser": "'"$UserID"\"",\n"
printf '\t"toparty": "'"$PartyID"\"",\n"
printf '\t"msgtype": "text",\n'
printf '\t"agentid": "'" $AppID "\"",\n"
printf '\t"text": {\n'
printf '\t\t"content": "'"$Msg"\""\n"
printf '\t},\n'
printf '\t"safe":"0"\n'
printf '}\n'
}
/usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
[root@yinzhengjie alertscripts]#
如何查看你的應用ID
3.在zabbix的web端配置報警媒介
1>.添加報警媒介
2>.配置用戶
3>.定義發件人和報警媒介類型
4>.點擊更新
4.定義action
1>.開啟恢復告警提示
2>.添加想匹配的action的觸發器
3>.定義具體操作步驟
在儀表盤中查看短信的發送結果
好了,以上就是服務器設置的過程,下面。看看你的微信是否收到報警了吧