Zabbix邮件告警

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix邮件告警相关的知识,希望对你有一定的参考价值。

1、Zabbix邮件告警

说明:

Zabbix监控服务端、客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常。

实现目的:

Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱

 

 

首先在配置文件里修改AlertScriptsPath

[[email protected] alertscripts]# vim /usr/local/zabbix/etc/zabbix_server.conf

AlertScriptsPath=/usr/local/zabbix/alertscripts

 

qq邮箱里面生成一个授权码作为给脚本授权帮你发邮件使用

技术分享 

 

编写一个发邮件的Python脚本

[[email protected] alertscripts]# cd /usr/local/zabbix/alertscripts/

[[email protected] alertscripts]# ls

linkedsee.sh  weixin.py  zabbix_mail.py

[[email protected] alertscripts]# cat zabbix_mail.py

#!/usr/bin/python

#coding: utf-8

import smtplib

import sys

from email.mime.text import MIMEText

_user = "[email protected]"    ##填写作为邮件报警发送端

_pwd  = "zpys"       ###填写刚刚邮箱里面生成的授权码

#_to   = "[email protected]"

 

def send_mail(to,subject,contain):

    msg = MIMEText(contain)

    msg["Subject"] = subject

    msg["From"]    = _user

    msg["To"]      = to

 

    try:

        s = smtplib.SMTP_SSL("smtp.qq.com", 465)

 

        s.login(_user, _pwd)

        s.sendmail(_user, to, msg.as_string())

        s.quit()

        with open(‘/tmp/zabbix.log‘, ‘w‘) as f:

            f.write("%s\n%s\n%s\n"%(to,subject,contain))

#        print "Success!"

    except smtplib.SMTPException,e:

        print "Falied,%s"%e

if __name__ == "__main__":

    send_mail(sys.argv[1], sys.argv[2], sys.argv[3])

 

[[email protected] alertscripts]#

 

zabbix配置  管理-->报警媒介类型-->创建报警媒介类型(类型需要选择脚本,脚本名称与编写的脚本名字一样,下面三个参数代表发送给那个邮件、标题是什么、内容是什么。 )

技术分享 

在用户配置报警媒介 需要填写收件人的邮箱和类型

技术分享技术分享 

然后配置-->动作-->创建动作--操作-->恢复操作

技术分享技术分享技术分享 

技术分享 

触发报警:

技术分享 

解决报警后

技术分享 

成功演示了服务器报警后自动发生邮件给我的邮箱


本文出自 “第一个legehappy51cto博客” 博客,请务必保留此出处http://legehappy.blog.51cto.com/13251607/1966057

以上是关于Zabbix邮件告警的主要内容,如果未能解决你的问题,请参考以下文章

zabbix详解:添加邮件告警配置

Zabbix邮件告警配置(zabbix4.4)

zabbix 服务器重启了,怎么取消邮件告警

zabbix系列之邮件告警

Zabbix——Zabbix实现邮件微信告警

. Zabbix监控告警-邮件告警