編輯zabbix_server.conf文件,修改AlertScriptsPath參數,該參數用於指定外部腳本的絕對路徑。python
vim /etc/zabbix/zabbix_server.confAlertScriptsPath=/usr/lib/zabbix/alertscripts
上傳Python腳本send_mail.py至此路徑(/usr/lib/zabbix/alertscripts)下,腳本內容以下:web
''' 發送txt文本郵件 '''import smtplib from email.mime.text import MIMEText from sys import argv
mailto_list=[]
mail_host="smtp.163.com:25"
mail_user="gxxxxx@163.com"
mail_pass="ZHAxxxxxx"
debug_level=0
def send_mail(to_list,sub,content):
me=mail_user
msg = MIMEText(content,_subtype='plain',_charset='utf-8')
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
server = smtplib.SMTP()
server.set_debuglevel(debug_level)
server.connect(mail_host)
server.login(mail_user,mail_pass)
server.sendmail(me, to_list, msg.as_string())
server.close()
return True
except Exception, e:
print str(e)
return False if __name__ == '__main__':
try:
mailto_list=argv[1].split(';')
sub=argv[2]
content=argv[3]
except:
print "python send_mail.py 'user1@xx.com;user2@xx.com' sub content"
exit()
if send_mail(mailto_list,sub,content):
print "發送成功"
else:
print "發送失敗"
腳本上傳以後,修改權限:vim
chmod +x send_mail.py
管理——>報警媒介類型——>建立媒體類型
ruby
告警消息模板微信
接收人:{TRIGGER.STATUS}: {TRIGGER.NAME}
告警主機:{HOST.NAME}
主機地址:{HOST.IP}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
事件代碼:{EVENT.ID}
ide
恢復消息模板
接收人:{TRIGGER.STATUS}: {TRIGGER.NAME}
恢復主機:{HOST.NAME}
主機地址:{HOST.IP}
恢復時間:{EVENT.DATE} {EVENT.TIME}
恢復等級:{TRIGGER.SEVERITY}
恢復信息:{TRIGGER.NAME}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
事件代碼:{EVENT.ID}測試
利用本機添加的日誌監控進行測試,在日誌中輸入yyy則報警,輸入111則問題解決。
ui
本文分享自微信公衆號 - 業餘草(yyucao)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。spa