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

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

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

触发报警:

解决报警后

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

时间: 2024-10-10 19:47:17

Zabbix邮件告警的相关文章

Zabbix邮件告警提示Couldn't resolve host name解决办法

zabbix设置好邮件告警,当有触发时邮件未发送 查看zabbix server日志,提示不能连接邮件发送服务器,但是ping是可以通的 Zabbix邮件告警提示Couldn't resolve host name解决办法 原文地址:https://www.cnblogs.com/minseo/p/9025362.html

项目实战:zabbix邮件告警设置

自定义邮件报警 1.安装前准备 (1)安装依赖包 python-pip python-argparse python-redmine PyYAML apt-get install python-dev python-pip python-notify (2)PyYAML安装 wget http://pyyaml.org/download/pyyaml/PyYAML-3.11.tar.gz tar -zxvf PyYAML-3.11.tar.gz cd PyYAML-3.11 python set

zabbix邮件告警python脚本

#!/usr/bin/python # -*- coding: utf-8 -*- """ Zabbix SMTP Alert script from qq. auth:json """ import sys import email import smtplib import os from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipar

zabbix 邮件告警

zabbix环境安装好后,用shell写了个邮件脚本测试都没有问题,就是不发邮件,后来写了个python的邮件替换上了,可以正常发送邮件了,不知道是zabbix不支持shell还是其他问题! #!/usr/bin/python import smtplib import string import sys HOST = "smtp.163.com" SUBJECT = sys.argv[2] TO = sys.argv[1] FROM = "[email protected]

zabbix 邮件告警配置

使用外部邮箱账号发送报警邮件设置 一.关闭sendmail或者postfix 1 service sendmail stop #关闭 2 chkconfig sendmail off #禁止开机启动 3 service postfix stop 4 chkconfig postfix off 备注: 使用外部邮箱账号时,不需要启动sendmail或者postfix 如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱 配置信息. 二.安装邮件发送工具ma

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

大家应该心理有底,做监控不是只为了看服务器状态,虽然那也是监控的目的之一,但绝对不是全部,大家做监控的目的肯定是想预警,甚至是出问题就告警,毫无疑问zabbix也是支持告警规则的,现在来介绍传统的添加邮件告警,后面还会介绍微信告警. 添加邮件告警配置: 关于zabbix邮件告警的原理,其实是调用脚本,然后脚本通过邮件功能来向外发邮件,后面介绍的微信告警也是通过脚本调用微信接口来做的. 所以,告警的关键,就是脚本了,其实zabbix邮件告警这个功能很多文章有写,也有很多脚本可以参考,只是大部分版本

Zabbix 邮件报警

搞zabbix监控,如果出了问题不能及时收到响应.监控就失去了意义.所有实现zabbix邮件告警是有相当的必要... 一.整体思路 当在定义一个项目的时候(项目是真正的数据来源 通过键值来采集  zabbix 默认自带很多键值提供使用 zabbix自定义键值来采集数据 这个也是zabbix 一个很强大之处).一般也会定义一个触发器(就是用来判断采集出来的数据 是否正常 可以定义一个判断公式 来判断当前采集的一个值处于什么状态),最后在弄个动作 (动作的触发 都是基于状态来的  说白了也是基于触发

zabbix3.0.9邮件告警

设置mailx发送邮件的账号 yum -y install mailx ln -s /bin/mailx /bin/mail cat /etc/mail.rc //内容如下 set from=123456@126.com set smtp=smtp.126.com set smtp-auth-user=123456 set smtp-auth-password=123456 set smtp-auth=login 发送邮件测试 echo  test | mail -s " test" 

zabbix使用msmtp&&mutt搭建邮件告警服务

zabbix使用msmtp&&mutt搭建邮件告警服务 zabbix可以通过脚本和邮件服务器搭建邮件告警服务,以下就是告警服务实现的流程图 关注点一: 脚本需要放在zabbix安装目录下../share/zabbix/alertscripts/目录 脚本内容 关注点二: msmtp是一个SMTP客户端. 在默认模式下,它将邮件发送到SMTP服务器(例如,163.com邮箱服务器),该服务器负责进一步的传送.要将此程序与您的邮件用户代理(MUA)一起使用,请使用邮件帐户创建一个配置文件,并告