本文章簡單演示zabbix 3.2配置阿里雲釘釘報警。
提示:配置阿里雲釘釘報警的前提需要註冊釘釘並且創建羣組。
1、參考釘釘開發者中心:https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7629140.0.0.TwwXP7&treeId=257&articleId=105735&docType=1
2、編寫腳本,配置zabbix_server文件
$ grep alertscripts /etc/zabbix/zabbix_server.conf
# AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/lib/zabbix/alertscripts
$ cat /usr/lib/zabbix/alertscripts/dingding.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import urllib3
import json
import sys
http = urllib3.PoolManager()
token = "https://oapi.dingtalk.com/robot/send?access_token=e40d4908101336542cd45ae64ced1dce9a46ad7eda686843f6f6041d83a7a4ag"
head = {'Content-Type':'application/json'}
message = sys.argv[1]
text = '>%s' %(message)
data = {
"msgtype": "markdown",
"markdown": {
"title": "監控小釘報告",
"text": text
}
}
encode_data = json.dumps(data).encode('utf-8')
r = http.request(
'POST',
token,
body = encode_data,
headers = head
)
1、配置Media types
2、配置用戶選擇Media types
3、配置觸發器,觸發後的action
報警信息:
#### 服務器報警:
#### 告警主機:{HOSTNAME1}
#### 告警IP: {HOST.IP}
#### 告警時間:{EVENT.DATE} {EVENT.TIME}
#### 告警等級:{TRIGGER.SEVERITY}
#### 觸發名稱: {TRIGGER.NAME}
#### 告警項目:{TRIGGER.KEY1}
#### 問題詳情:{ITEM.NAME}:{ITEM.VALUE}
#### 當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
#### 事件ID:{EVENT.ID}
#### 事件狀態:{EVENT.STATUS}
恢復信息:
#### 服務器恢復:
#### 告警主機:{HOSTNAME1}
#### 告警主機IP:{HOST.IP}
#### 告警時間:{EVENT.DATE} {EVENT.TIME}
#### 告警等級:{TRIGGER.SEVERITY}
#### 告警信息:{TRIGGER.NAME}
#### 告警項目:{TRIGGER.KEY1}
#### 問題詳情:{ITEM.NAME}:{ITEM.VALUE}
#### 當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
#### 事件ID:{EVENT.ID}
#### 事件狀態:{EVENT.STATUS}
報警效果: