參考博主的文章: https://www.cnblogs.com/LyShark/p/10884630.html
本次測試官方詳細註釋:
不是本章重點直接貼圖,不做詳解
一、創建監控項
二、創建觸發器
三、配置釘釘
四、創建報警腳本
參看文檔
1、查看官方提示
2、創建腳本
vim healthcheckv1.sh
#!/usr/bin/bash
sendkey=釘釘token值
curl 'https://oapi.dingtalk.com/robot/send?access_token='$sendkey \
-H 'Content-Type: application/json' \
-d "
{
\"actionCard\": {
\"title\": \"$2\",
\"text\": \"$3\",
\"hideAvatar\": \"0\",
\"btnOrientation\": \"0\",
\"btns\": [
{
\"title\": \" 請趕快處理\"
}
]
},
\"msgtype\": \"actionCard\"
}"
3、賦予執行權限測試腳本
chmod +x healthcheckv1.sh
sh -x healthcheckv1.sh 1 測試 告警
五、zabbix創建釘釘報警
六、 創建動作
設置觸發告警信息:
默認操作步驟持續時間:1m
默認標題:
故障{TRIGGER.STATUS},服務器:{HOST.NAME1}發生: {TRIGGER.NAME}故障!
消息內容:
告警主機: {HOST.NAME1} \n
告警地址: {HOST.IP} \n
告警時間: {EVENT.DATE} {EVENT.TIME} \n
告警等級: {TRIGGER.SEVERITY} \n
告警信息: {TRIGGER.NAME} \n
告警項目: {ITEM.KEY} \n
問題詳情: {ITEM.NAME}:{ITEM.VALUE} \n
當前狀態: {TRIGGER.VALUE} \n
事件ID: {EVENT.ID}
下圖表示觸發無限次動作,每隔60秒觸發一次,告警發給 admin 用戶,用釘釘媒介發送.
詳細解釋官方介紹
設置恢復操作信息:
默認標題:
恢復:{EVENT.RECOVERY.STATUS},服務器:{HOST.NAME1} 觸發器: {TRIGGER.NAME}恢復正常!
消息內容:
恢復主機: {HOST.NAME1} \n
恢復地址: {HOST.IP} \n
恢復時間: {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME} \n
恢復等級: {TRIGGER.SEVERITY} \n
恢復信息: {TRIGGER.NAME} \n
恢復項目: {ITEM.KEY} \n
問題詳情: {ITEM.NAME} 最新值:{ITEM.VALUE} \n
當前狀態: {TRIGGER.VALUE} \n
事件ID: {EVENT.RECOVERY.ID}
六、爲用戶添加報警媒介
七、使其主機CPU飆高
cat /dev/urandom | md5sum
八、查看釘釘消息
觸發告警消息內容:
九、中止CPU飆高
觸發恢復消息內容:
實際報警內容,更具自己想要的內容進行修改就好了。 ,也可以使用開頭提到博主的方式(釘釘 text方式)報警。
後期修改報警內容格式
利用宏報警主題、內容
報警:
告警主機:{HOST.NAME} \n
告警地址:{HOST.IP} \n
告警時間:{EVENT.DATE} {EVENT.TIME} \n
告警等級:{TRIGGER.SEVERITY} \n
告警觸發:{TRIGGER.NAME} \n
告警項目:{ITEM.KEY} \n
警告監控:{ITEM.NAME} \n
警告取值:{ITEM.VALUE} \n
當前狀態:{TRIGGER.STATUS} \n
事件ID:{EVENT.ID} \n
訪問地址: http://192.168.11.132/zabbix/zabbix.php?action=problem.view&filter_triggerids%5B%5D={TRIGGER.ID}&filter_set=1
恢復正常:
恢復主機: {HOST.NAME1} \n
恢復地址: {HOST.IP} \n
恢復時間: {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME} \n
恢復等級: {TRIGGER.SEVERITY} \n
告警觸發:{TRIGGER.NAME} \n
告警項目:{ITEM.KEY} \n
警告監控:{ITEM.NAME} \n
警告取值:{ITEM.VALUE} \n
當前狀態: {TRIGGER.STATUS} \n
事件ID: {EVENT.RECOVERY.ID}