1. 程式人生 > >zabbix3.0.9郵件告警

zabbix3.0.9郵件告警

步驟 -- end 操作 -s zabbix3 test dmi mailx

設置mailx發送郵件的賬號

yum -y install mailx

ln -s /bin/mailx /bin/mail

cat /etc/mail.rc  //內容如下
set from=123456@126.com
set smtp=smtp.126.com
set smtp-auth-user=123456
set smtp-auth-password=123456
set smtp-auth=login

發送郵件測試

echo test | mail -s " test" [email protected] 查看編輯腳本配置 進入zabbix的安裝目錄 [[email protected]
/* */ ~]# cd /usr/local/zabbix/etc/ 可以查看zabbix_server.conf配置文件AlertScriptsPath變量是如何定義的。
vim zabbix_server.conf

找到AlertScriptsPath選項,可以自定義位置

### Option: AlertScriptsPath
#       Full path to location of custom alert scripts.
#       Default depends on compilation options.
#
# Mandatory: no
# Default:
# AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/local/zabbix/alertscripts

cd /usr/local/zabbix/alertscripts/

vim sendEmail.sh
#!/bin/bash
#zabbix郵件告警腳本
#auth:zhangyong
#time:2017-03-21
#Version:V1.0

mail=$1
title=$2
message=$3

echo "${message}" | /usr/bin/iconv -t GB2312 -f UTF-8 | mailx -s "${title}" ${mail} >> /tmp/mailx.log 2>&1

exit $?

測試郵件

[[email protected]

/* */ etc]# /usr/local/zabbix/alertscripts/sendmail.sh [email protected] "測試郵件標題" "測試郵件內容"

zabbix 頁面配置

技術分享

技術分享

解釋:很多人安裝zabbix 3.0之後,寫的腳本一直發信不成功,手動執行時可以的。
那是因為zabbix3.0之後,可以自定義參數了。所以不寫參數,它是不會傳參數的。
在2.x版本不存在這個問題,默認會傳3個參數。

新增一個用戶,添加報警媒介----類型選擇剛才的 sendmail

技術分享

權限 全部都添加

技術分享

技術分享

技術分享

技術分享

修改動作 發送的內容為中文 默認與恢復一樣

告警主機:{HOSTNAME1}

告警時間:{EVENT.DATE} {EVENT.TIME}

告警等級:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警項目:{TRIGGER.KEY1}

問題詳情:{ITEM.NAME}:{ITEM.VALUE}

當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

操作

技術分享

解釋:
默認的步驟是1-1,也即是從1開始到1結束。一旦故障發生,就是執行sendEmail.sh腳本發生報警郵件給Admin用戶和zabbix administrator組。
假如故障持續了1個小時,它也只發送一次。如果改成1-0,0是表示不限制.無限發送
間隔就是默認持續時間60秒。那麽一個小時,就會發送60封郵件。
如果需要短信報警的話,可以再創建一條新的動作,選擇短信腳本。

點擊報表->動作日誌 可以看到觸發動作的次數。只會有3次,除非test主機狀態改變,也就是正常的時候,會觸發一次,否則不會再觸發。

 

zabbix3.0.9郵件告警