1. 編輯 zabbix_server.conf 配置 zabbix 告警腳本路徑
AlertScriptsPath=/usr/local/share/zabbix/alertscripts/
2. 建立發送消息腳本
#!/usr/bin/env python
#coding=utf-8
import requests
import json
import os
import sys
# 基本信息
CropID = 'xxxxxxxxxx'
Secret = 'xxxxxxxxxx'
agentid = 'xxxxxxxxx'
touser = 'xxxxxxxxxx'
# 獲取Token
GetToken ="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid="+ CropID + "&corpsecret=" + Secret
headers = {'Content-Type': 'application/json'}
json_data = json.loads(requests.get(GetToken).content.decode())
token = json_data["access_token"]
# 消息發送接口
Purl = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + token
# 消息發送函數
def sendmsg(message):
weixin_msg = {
"touser" : "TangYingJie",
"msgtype" : "text",
"agentid" : 1000002,
"text" : {
"content" : message
},
}
print requests.post(Purl,json.dumps(weixin_msg),headers=headers)
if __name__ == '__main__':
message = sys.argv[1] #獲取第二個參數
sendmsg(message)
./wechat.py 測試消息
3. 進入 zabbix 主界面配置
報警媒介類型
用戶 -> 報警媒介
動做 -> 操做
{TRIGGER.STATUS} : {TRIGGER.NAME}
當前狀態 : {TRIGGER.STATUS}
告警主機 : {HOST.NAME}
告警地址 : {HOST.IP}
告警時間 : {EVENT.DATE} {EVENT.TIME}
告警等級 : {TRIGGER.SEVERITY}
告警信息 : {TRIGGER.NAME}
監控取值 : {ITEM.VALUE}
監控項目 : {ITEM.NAME}
持續時間 : {EVENT.AGE}
事件ID : {ITEM.ID}
動做 -> 恢復操做