zabbix 3.0 监控邮件报警
1、在监控服务器的/usr/local/zabbix/bin创建发送邮件脚本 vim send.py #!/usr/bin/env python # -*- coding: utf-8 -*- #!/usr/bmport pdb import smtplib import string import time import sys reload(sys) sys.setdefaultencoding(‘utf-8‘) #pdb.set_trace() #HOST = "mail.gw.com.cn" def S_Mail(): HOST = "mail.xxxx.com" #邮件服务器 SUBJECT = sys.argv[2].decode(‘utf-8‘).encode(‘gbk‘) #主题 TO =sys.argv[1] #收件邮箱 FROM = "send address" text = sys.argv[3].decode(‘utf-8‘).encode(‘gbk‘) #发件内容 BODY = string.join(( "FROM: %s" % FROM, "To: %s" % TO, "Subject: %s" %SUBJECT, "", text ),"\r\n") server = smtplib.SMTP() server.connect(HOST,发送邮件的端口) #server.starttls() server.login("send address","password") server.sendmail(FROM,[TO],BODY) server.quit() # email log 记录日志 with open(‘/tmp/Email.log‘, ‘a‘) as f: date=time.strftime("%y-%m-%d %H:%M:%S") str = date + " " + TO +" " + SUBJECT + "\r\n" + "\n" str1 = str.decode(‘gbk‘).encode(‘utf-8‘) # print("%s" %str1) f.write(str1) if __name__==‘__main__‘: S_Mail()
2、给发送邮件脚本授权
chown -R zabbix.zabbix /usr/local/zabbix/bin/send.py
chmod a+x /usr/local/zabbix/bin/send.py
3、修改/usr/local/zabbix/etc/zabbix_server.conf
AlertScriptsPath = /usr/local/zabbix/bin
4、重启zabbix服务器。
pkill zabbix
/usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
5、利用编写的脚本发送邮件做测试。
./send.py "test@qq.com" "thisis test python send mail" "test test"
6、配置zabbix的界面。
(1)、创建Media types
注意:此处要传参进去,是三个,对于脚本中的参数(1,2,3)
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
(2)、配置接收报警邮件的用户并授权
(3)、新创建报警的动作action
(4)、查看报警媒介和报警动作是否匹配成功。
7、关闭本机的zabbix_agentd可以看邮件是否报警成功,报警成功,则OK。
8、补充内容(触发动作条件)
默认接收人:故障{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}
恢复信息:打钩
恢复主旨:恢复{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}
已启用:打钩
原文:http://yanruohan.blog.51cto.com/9740053/1876078