邮件告警,微信告警

创建Python脚本

Zabbix默认报警脚本路径,可以自行修改

1 vim /etc/zabbix/zabbix_server.conf
2 AlertScriptsPath=/usr/lib/zabbix/alertscripts #默认路径

在/usr/lib/zabbix/alertscripts目录下创建python脚本。

 1 #!/usr/bin/env python
 2 #coding:utf-8
 3 import smtplib
 4 from email.mime.text import MIMEText
 5 import sys
 6 LOG_FILENAME="/var/log/email_python.log"
 7 mail_host = 'smtp.qq.com'                  #定义smtp服务器
 8 mail_user = '45xxxx6@qq.com'               #发件人邮箱
 9 mail_pass = 'xxxxx'                        #发件人邮箱密码
10 mail_port = 465                            #smtp服务器的端口号,不同的邮箱服务器端口号不同
11 def send_mail(to_list,subject,content):
12     me="Zabbix Monitor"+"<"+mail_user+">"  #定义发件人显示名称为Zabbix Monitor
13     msg=MIMEText(content,_subtype='plain',_charset='gb2312')
14     msg['Subject']=subject                 #定义邮件主题
15     msg['From']=me                         #发送方
16     msg['to']=to_list                      #接收方
17     try:
18         s=smtplib.SMTP_SSL()               #创建一个smtp对象                     
19         s.connect(mail_host,mail_port)     #通过connect方法连接smtp主机
20         s.login(mail_user,mail_pass)       #邮箱账户登录认证
21         s.sendmail(me,to_list,msg.as_string()) #发送邮件
22         s.close()                             #断开smtp连接
23         return True
24     except Exception,e:
25         print str(e)
26         return False
27 if __name__ == "__main__":
28     send_mail(sys.argv[1],sys.argv[2],sys.argv[3])

 

修改脚本文件的权限和属主属组

1 chown zabbix:zabbix mail.py
2 chmod +x mail.py

设置以root用户启动

1 vim /etc/zabbix/zabbix_server.conf
2 AllowRoot=1

测试脚本邮件是否成功发送

1 cd  /usr/lib/zabbix/alertscripts
2 ./mail.py xxxxx@xx.com "Subject" "Content"

 

创建Media

Administrator -> Media Type -> Create media type

 

添加邮件接收用户

Administrator -> Users -> Media

 

 

 

 

 

 

posted @ 2017-10-26 11:32  瑶瑶仔  阅读(197)  评论(0)    收藏  举报