Zabbix 短信報警 示例:
注意zabbix 腳本文件默認放置目錄是 alertscripts (zabbix 動作調用腳本目錄)
# 編輯 zabbix_server.conf # AlertScriptsPath=${datadir}/zabbix/alertscripts
# 默認在 四百多行
2、創建短信報警腳本 sms.sh
# cat alertscripts/sms.sh
#!/bin/bash LOGFILE="/var/log/sms.log" # 腳本日志文件 :>"$LOGFILE" exec 1>"$LOGFILE" exec 2>&1 mobile=$1 # 手機號 # $2沒有用到 content=$3 # 短信內容 XXD="/usr/bin/xxd" TIMEOUT=5 MESSAGE_ENCODE=$(echo "$content" | ${XXD} -ps | sed 's/\(..\)/%\1/g' | tr -d '\n') # 短信編碼處理 curl -d "mobile=${mobile}&content=${MESSAGE_ENCODE}" http://172.16.5.110/sms/ # 配置提交短信接口發送; http://172.16.5.110/sms 為短信接口地址, # 測試: # /alertscripts/sms.sh 1880000000 "" "發送報警測試" # 腳本執行第一個參數為手機號;第二個設置空;第三個參數為短信內容。 # 腳本執行后,到日志文件 /var/log/sms.log 里查看返回值,如果大於0代表發送成功,小於0發送失敗。
3、修改j腳本執行權限
chown -R zabbix:zabbix alertscripts/sms.sh
4、測試腳本:
./alertscripts/sms.sh 1880000000 "" "發送報警測試" # 腳本執行第一個參數為手機號;第二個設置空;第三個參數為短信內容。 # 腳本執行后,到日志文件 /var/log/sms.log 里查看返回值,如果大於0代表發送成功,小於0發送失敗。
5、Zabbix 平台配置。
腳本名稱和服務端配置的文件名一致 sms.sh
添加 用戶: (可以配置成 一個用戶組)
報警動作 配置 : (【事件源】 選擇 【 觸發器 】)
配置 【動作】 - 【條件】 - 【操作】 (默認配置 或者更改為中文標題 )
默認接收人
故障{TRIGGER.STATUS},服務器:{HOSTNAME1}發生: {TRIGGER.NAME}故障
默認信息
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
報警 【條件】 配置: (也可以默認)
報警 【操作】 配置 (默認的 管理員賬戶組權限,可以加一個 報警賬戶組 )
默認配置事件 - 操作賬戶 - 發送方式 短信腳本。