CentOS系统下zabbix监控之使用sendEmail邮件报警(解决发送邮件内容附件格式的问题 )

一、邮件客户端以及脚本相关配置

1、安装sendmail
[root@localhost ~]# cd /usr/lib/zabbix/alertscripts
安装[root@localhost alertscripts]# yum install sendmail
启动[root@localhost alertscripts]# service sendmail start
设置开机启动[root@localhost alertscripts]# chkconfig sendmail on

2、安装邮件发送工具mailx
[root@localhost alertscripts]# yum install mailx -y

3、设置发送邮件的email,用于邮件发送
[root@localhost alertscripts]# vi /etc/mail.rc
配置发送帐号和密码

set from=11111111@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=11111111@qq.com
set smtp-auth-password=11111111
set smtp-auth=login

注意:邮箱需要打开POP3服务,密码用授权码填写
在这里插入图片描述
发送邮件测试;测试是否能正常发送邮件。
[root@localhost alertscripts]# echo "这里是内容" | mail -s '这里是标题' 这里是邮箱.com

4.查看zabbix服务器发送脚本配置
进入zabbix的安装目录
[root@localhost ~]# cd /usr/lib/zabbix/alertscripts/
[root@localhost alertscripts]# vi /etc/zabbix/zabbix_server.conf

找到AlertScriptsPath选项,可以自定义位置;新增自定义的脚本位置 增加 AlertScriptsPath=/usr/local/zabbix/alertscripts
在这里插入图片描述

5.编写发送邮件脚本
安装dos2unix转换工具( 解决发出的邮件是附件格式的问题 )
[root@localhost alertscripts]# yum install dos2unix
修改邮件脚本
[root@localhost alertscripts]# vi sendmail.sh

修改邮件发送脚本内容:

#!/bin/bash
#export.UTF-8  #解决发送的中文变成了乱码的问题 
FILE=/tmp/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE  #解决了发送的邮件内容变成附件的问题
/bin/mail -s "$2" $1 < $FILE

创建临时文件并授权
[root@localhost alertscripts]# touch /tmp/mailtmp.txt
[root@localhost alertscripts]# chown zabbix.zabbix /tmp/mailtmp.txt
给脚本添加权限
[root@localhost alertscripts]# chmod 755 /usr/lib/zabbix/alertscripts/sendmail.sh
给日志添加权限
[root@localhost alertscripts]# chown zabbix.zabbix /tmp/sendmail.log

二、 配置web页面

1、创建媒体类型

管理–>报警媒介类型–>创建媒体类型
在这里插入图片描述
在这里插入图片描述
sendmail
sendmail.sh
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

2、给用户添加报警媒介

此处以Admin用户为例 管理–>用户–>点击Admin –>报警媒介–>添加
在这里插入图片描述

3、创建动作

3.1配置–>动作–>Report problems to Zabbix administrators–>操作
在这里插入图片描述问题警告: {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-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。 假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件

3.2恢复操作
在这里插入图片描述
可在客户端关闭zabbix_agent测试是否可以正常收到邮件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值