zabbix3.0.4设置邮件告警

Posted

tags:

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

一.安装sendEmail

[[email protected] ~]# wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz

[[email protected] ~]# mkdir /usr/local/bin

[[email protected] ~]# tar zxvf sendEmail-v1.56.tar.gz

[[email protected] ~]# cd sendEmail-v1.56

[[email protected] sendEmail-v1.56]# cp -a sendEmail /usr/local/bin

[[email protected] sendEmail-v1.56]# chmod +x /usr/local/bin/sendEmail

二.查找脚本存放路径

[[email protected] ~]# vim /etc/zabbix/zabbix_server.conf

在457行左右

AlertScriptsPath=/usr/local/zabbix/alertscripts

注意:此路径为我自己修改后的路径。默认路径为/usr/lib/zabbix/alertscripts/,可以用默认路径存放脚本。 如果修改路径,必须重启服务。 我修改完路径没重启服务,zabbix还是从默认路径调用脚本,导致无法发送邮件。   修改完路径后,需要创建路径

[[email protected] ~]#mkdir -p /usr/local/zabbix/alertscripts/

三.设置发送脚本

[[email protected] ~]# cat /usr/local/zabbix/alertscripts/mailx.sh

#!/bin/bash
SMTP_server=‘smtp.mxhichina.com‘    # SMTP服务器
username=‘[email protected]‘     # 用户名
password=‘xxxxxxx‘             # 密码
from_email_address=‘[email protected]‘ # 发件人Email地址
to_email_address="$1"               # 收件人Email地址,zabbix传入的第一个参数
message_subject_utf8="$2"           # 邮件标题,zabbix传入的第二个参数
message_body_utf8="$3"              # 邮件内容,zabbix传入的第三个参数
# 转换邮件标题为GB2312,解决邮件标题含有中文,收到邮件显示乱码的问题。
message_subject_gb2312=`iconv -t GB2312 -f UTF-8 << EOF
$message_subject_utf8
EOF`
[ $? -eq 0 ] && message_subject="$message_subject_gb2312" || message_subject="$message_subject_utf8"
# 转换邮件内容为GB2312
message_body_gb2312=`iconv -t GB2312 -f UTF-8 << EOF
$message_body_utf8
EOF`
[ $? -eq 0 ] && message_body="$message_body_gb2312" || message_body="$message_body_utf8"
# 发送邮件
sendEmail=‘/usr/local/bin/sendEmail‘
$sendEmail -s "$SMTP_server" -xu "$username" -xp "$password" -f "$from_email_address" -t  "$to_email_address" -u "$message_subject" -m "$message_body" -o message-content-type=text -o message-charset=gb2312
echo "`date +"%F %T"` send to $to_email_address" >> /tmp/mailx.log

注意:倒数2 3 4贴到脚本里后,整成一行。

添加执行权限

[[email protected] alertscripts]# chmod +x mailx.sh

[[email protected] ~]# /usr/local/zabbix/alertscripts/mailx.sh  [email protected] zabbixtest "zabbix test!"

如果能发送邮件,说明前面的都设置成功!

三.zabbix 设置邮件发送

  1. 创建报警媒介

管理--报警媒介类型--创建媒体类型

技术分享

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}


2.创建发送邮件用户

管理--用户--创建用户

创建用户有三个选项,用户,报警媒介,权限

用户

技术分享

报警媒介--添加    注意:类型要跟报警媒介类型的名称一致

技术分享

用户   给个超级管理员权限

技术分享

3.创建动作

配置--动作--创建动作

创建动作里有 动作,条件,操作三个选项

动作,此为发送邮件入口

技术分享

默认接收人  故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生:{TRIGGER.NAME}故障!

默认信息

告警主机:{HOSTNAME1}

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

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

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

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

事件ID:{EVENT.ID}

恢复信息也跟上面一样


条件, 触发器--选择-选中需要邮件告警的触发器--添加--更新

技术分享

技术分享

技术分享


操作 

默认操作步骤持续时间: 间隔600秒发送一次报警邮件

操作细节--步骤--  1  -  5   5表示最多发送5封告警邮件  0表示无限制次数发送

技术分享

 

至此,邮件告警设置完成,只要有达到触发器阈值的,就会发送告警邮件。


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

6、zabbix告警邮件文本信息无法换行

zabbix3.0.4安装部署文档--邮件报警

配置邮件告警

zabbix-创建与设置邮件告警

Granfana设置邮件告警

zabbix--邮件告警