1、管理--->報警媒價類型
配置--->動作
操作
恢復操作
點用戶頭像---用戶基本---報警媒介----類型選擇:腳本名稱---->添加---->更新。
2、添加報警信息
郵件報警再添加以下3個參數,分別對應腳本需要的3個參數:收件人地址、主題、詳細內容 {ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE} 告警郵件中文顯示 告警主機:{HOSTNAME1} 告警時間:{EVENT.DATE}{EVENT.TIME} 告警等級:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警項目:{TRIGGER.KEY1} 問題詳情:{ITEM.NAME}:{ITEM.VALUE} 當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID}
3、配置發送郵件腳本
#查看腳本執行路徑
vi /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts #默認腳本存放路徑
mail.sh
#!/usr/bin/sh echo 'start' >> /tmp/zabbix.log messages=`echo $3 | tr '\r\n' '\n'` subject=`echo $2 | tr '\r\n' '\n'` echo "${messages}" | mail -s "${subject}" $1 echo "end" >> /tmp/zabbix.log
mail.py
#!/usr/bin/python #coding:utf-8 import smtplib from email.mime.text import MIMEText import sys,os os.system("echo 'start' >> /tmp/ok") #郵箱服務器地址 mail_host = 'smtp.126.com' #郵箱用戶名 mail_user = 'xx@126.com' #郵箱密碼 mail_pass = 'xxxxx' mail_postfix = '126.com' def send_mail(to_list,subject,content): me = mail_user+"<"+mail_user+"@"+mail_postfix+">" msg = MIMEText(content) msg['Subject'] = subject msg['From'] = me msg['to'] = to_list try: s = smtplib.SMTP() s.connect(mail_host) s.login(mail_user,mail_pass) s.sendmail(me,to_list,msg.as_string()) s.close() return True except Exception,e: print str(e) return False if __name__ == "__main__": send_mail(sys.argv[1], sys.argv[2], sys.argv[3]) os.system("echo 'end' >> /tmp/ok")
執行腳本(腳本要權限755 ,並且權限和屬主都改成zabbix。
#修改所屬主 [root@zabbix-server alertscripts]# chown zabbix.zabbix mail.sh #添加執行權限 [root@zabbix-server alertscripts]# chmod +x mail.sh [root@zabbix-server alertscripts]# ll 總用量 8 -rwxr-xr-x 1 zabbix zabbix 510 7月 3 11:50 check_port1.py -rwxr-xr-x 1 zabbix zabbix 195 7月 4 15:12 mail.sh
發送郵件,傳三個參數進去。
如果發送失敗,查看日志,並刪除tmp目錄下生成的日志文件。
修改配置信息
#下面是系統默認的參數:
接收人:
{TRIGGER.STATUS}: {TRIGGER.NAME}
默認信息:
Trigger: {TRIGGER.NAME} Trigger status: {TRIGGER.STATUS} Trigger severity: {TRIGGER.SEVERITY} Trigger URL: {TRIGGER.URL} Item values: 1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1} 2. {ITEM.NAME2} ({HOST.NAME2}:{ITEM.KEY2}): {ITEM.VALUE2} 3. {ITEM.NAME3} ({HOST.NAME3}:{ITEM.KEY3}): {ITEM.VALUE3} Original event ID: {EVENT.ID}