Linux运维Python运维与数据分析

zabbix邮件报警配置

2017-08-18  本文已影响119人  独云

1. 安装mailx 服务 通过mailx 配置好外部SMTP服务器相关信息发送邮件(这里是配置发信的地址):

yum -yinstallmailx

vim /etc/mail.rc增加以下内容:

setbsdcompatsetfrom=test@163.com smtp=smtp.163.com   #这里是邮局服务器和SMTP服务器信息,这里使用163的,其他邮箱自行修改一下

setsmtp-auth-user=test@163.com smtp-auth-password=yourpassword  #smtp-auth-user自然是指邮局用户,需要写完整地址,然后是密码set

smtp-auth=login

使用命令行测试一下是否配置成功

echo“zabbixtestmail” | mail-s“zabbix”test@163.com

2.创建示警媒介

1.进入【管理】-【示警媒介类型】-【创建媒体类型】

注意我们选择使用脚本方式,名称可自定义,脚本名称设定需要和以后创建的脚本相同,这里还需要添加参数,否则无法接受到系统传递的信息进行发送:

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}

2.创建用户接收邮箱:

【管理】-【用户】-选择对应的用户默认Admin -切换到【示警媒介】选项卡-类型处选择为刚才我们创建的示警媒介名称,收件人填写为需要接收邮件的地址

3.创建触发动作:

【组态】-【动作】-【创建动作】

名称:Action-Email

默认接收人:Problem:{TRIGGER.NAME}

默认信息:

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

恢复主旨:Recover:{TRIGGER.NAME}

恢复信息:

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

注意: 这里改了图片里面的默认接收人和恢复主旨,之前的太长邮件显示不全。还有:设置后不要点击【添加】,这里点击更新是无法保存的,切换到【操作】选项卡

添加用户,按照下图设置勾选即可。

四.创建邮件发送脚本:

1.先查看一下/usr/local/etc/zabbix中的AlertScriptsPath是否已经指定了,这里是指定zabbix程序调用脚本的目录,设置为:

AlertScriptsPath=/usr/local/share/zabbix/alertscripts

2.在该目录/usr/local/share/zabbix/alertscripts下创建脚本文件

vim sendmail.sh

#!/bin/bash

file=/tmp/zabbix_mail.txt

echo"$3">$file

dos2unix -k$file

/bin/mail-s"$2"$1<$file

# echo "$3" | mail -s "$2" $1 #如果发送邮件完全是英文的,可以只使用这一条

:wq保存退出

设置权限以及所属用户:

chown zabbix.zabbix /usr/local/share/zabbix/alertscripts/sendmail.sh

chmod +x /usr/local/share/zabbix/alertscripts/sendmail.sh

yum install dos2unix -y

注:使用dos2unix工具是为解决zabbix发送邮件出现乱码和收到的邮件是*.bin的情况。#$3 代表邮件内容,也就是对应参数{ALERT.MESSAGE}

#$2 代表邮件主题,也就是对应参数{ALERT.SUBJECT}

#$1 代表收件人,也就是对应参数{ALERT.SENDTO}

上一篇下一篇

猜你喜欢

热点阅读