码迷,mamicode.com
首页 > 编程语言 > 详细

zabbix通过python脚本实现邮件报警

时间:2015-07-17 14:25:35      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:zabbix   python脚本   邮件通知报警   

1.修改zabbix server端的配置文件,启用AlertScriptsPath,使其支持脚本功能

1.编辑zabbix server端的配置文件,并重启服务

# vim /etc/zabbix/zabbix_server.conf

     AlertScriptsPath=/usr/local/zabbix/alertscripts


 # /etc/init.d/zabbix_server restart


2.在服务端添加邮件报警的python脚本,并给脚本执行权限

 邮件报警,并记录日志

# vim /usr/local/zabbix/alertscripts/zabbix_sendmail.py

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import 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 = "smtp.exmail.qq.com"                           #邮件服务器
    SUBJECT = sys.argv[2].decode(‘utf-8‘).encode(‘gbk‘)   #主题
    TO =sys.argv[1]                                       #收件邮箱
    FROM = "admin@qq.cn"
    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,25)
    #server.starttls()
    server.login("发件邮箱","密码")
    server.sendmail(FROM,[TO],BODY)
    server.quit()
# email log 记录日志
    with open(‘/data/logs/zabbix/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()


# chmod +x /usr/local/zabbix/alertscripts/zabbix_sendmail.py


3.验证脚本

# ./zabbix_sendmail.py 收件邮箱 主题  测试

技术分享


4.创建报警媒介,类型选择脚本

技术分享



5. 创建用户,并实现邮件报警

1)

技术分享

2)选择媒介

技术分享


6. 为方便管理,创建群组,将用户添加至群组中

技术分享


7.选择"组态"-->"动作" 创建 “action",实现邮件报警

1)

技术分享

2)

技术分享

3)

技术分享


验证结果

通过"审计" -->"Action log" 查看日志

技术分享

并且已经发送有邮件

故障邮件

技术分享


恢复后发送的邮件

技术分享


并且可以通过日志查看记录

技术分享

本文出自 “Linux之旅” 博客,请务必保留此出处http://openlinuxfly.blog.51cto.com/7120723/1675509

zabbix通过python脚本实现邮件报警

标签:zabbix   python脚本   邮件通知报警   

原文地址:http://openlinuxfly.blog.51cto.com/7120723/1675509

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!