配置微信告警:
準(zhǔn)備事項(xiàng):
成都創(chuàng)新互聯(lián)主營尋烏網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都App定制開發(fā),尋烏h5小程序開發(fā)搭建,尋烏網(wǎng)站營銷推廣歡迎尋烏等地區(qū)企業(yè)咨詢
微信企業(yè)號(hào)?
企業(yè)號(hào)已經(jīng)被部門成員關(guān)注?
企業(yè)號(hào)有一個(gè)可以發(fā)送消息的應(yīng)用,一個(gè)授權(quán)管理員,可以使用應(yīng)用給成員發(fā)送消息
需要得到的信息
成員賬號(hào)
組織部門ID
應(yīng)用ID
CorpID和Secret
首先我們登陸企業(yè)微信-→ 應(yīng)用于小程序 ?創(chuàng)建我們的zabbix告警
完成后點(diǎn)擊我們創(chuàng)建的小程序 即可獲得 對(duì)應(yīng)的ID信息:
獲取我們的企業(yè)corpid:
為zabbix_server 增加wechat告警腳本和告警媒介:
將腳本復(fù)制到/usr/lib/zabbix/alertscripts默認(rèn)腳本存放路徑,名字任意。
#!/usr/bin/python2.7
#_*_coding:utf-8 _*_
import requests,sys,json
import urllib3
urllib3.disable_warnings()
reload(sys)
sys.setdefaultencoding('utf-8')
def GetToken(Corpid,Secret):
Url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken"
Data = {
"corpid":Corpid,
"corpsecret":Secret
}
r = requests.get(url=Url,params=Data,verify=False)
Token = r.json()['access_token']
return Token
def SendMessage(Token,User,Agentid,Subject,Content):
Url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s" % Token
Data = {
"touser": User, # 企業(yè)號(hào)中的用戶帳號(hào),在zabbix用戶Media中配置,如果配置不正常,將按部門發(fā)送。
#"totag": Tagid, # 企業(yè)號(hào)中的部門id,群發(fā)時(shí)使用。
"msgtype": "text", # 消息類型。
"agentid": Agentid, # 企業(yè)號(hào)中的應(yīng)用id。
"text": {
"content": Subject + '\n' + Content
},
"safe": "0"
}
r = requests.post(url=Url,data=json.dumps(Data),verify=False)
return r.text
if __name__ == '__main__':
User = sys.argv[1] # zabbix傳過來的第一個(gè)參數(shù)
Subject = sys.argv[2] # zabbix傳過來的第二個(gè)參數(shù)
Content = sys.argv[3] # zabbix傳過來的第三個(gè)參數(shù)
Corpid = "XXXXXXXXXXXXXXf" # CorpID是企業(yè)號(hào)的標(biāo)識(shí)
Secret = "XXXXXXXXXXXXXXXXXX" # Secret是管理組憑證密鑰
#Tagid = "1" # 通訊錄標(biāo)簽ID
Agentid = "xxxxxx" # 應(yīng)用ID
Token = GetToken(Corpid, Secret)
Status = SendMessage(Token,User,Agentid,Subject,Content)
print Status
新增告警媒介:
增加告警信息模板:內(nèi)容可根據(jù)自己需求填寫
企業(yè)號(hào)通訊錄:把所有要接收告警的人都添加到企業(yè)號(hào)通信錄里面。
最后測(cè)試告警發(fā)送即可: