look321 发表于 2019-1-24 11:51:27

Zabbix 3.0 自定义脚本报警(邮件报警)

  一、邮件客户端配置
1、安装mail工具

# yum-yinstallmailx
# ln-s/bin/mailx/bin/mail
  2、配置发件人账号

# cat >> /etc/mail.rc   set from=发件人邮箱
> set smtp=smtp.163.com
> set smtp-auth-user= 发件人邮箱
> set smtp-auth-password=邮箱密码
> set smtp-auth=login
> EOF
  3、测试发送邮件

# echo "This is a test mail." | mail -s "Zabbix Test"收件人邮箱
http://i2.运维网.com/images/blog/201802/10/7357aa65b9ec385b696df1a580c19640.png
收到邮件,测试完成,可进行下一步;
  二、配置发送邮件脚本
1、修改zabbix配置文件

# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/etc/zabbix/alertscripts
  2、添加脚本

# mkdir /etc/zabbix/alertscripts
# cat >> /etc/zabbix/alertscripts/sendmail.sh!/bin/bash
> messages=`echo $3 | tr '\r\n' '\n'`
> subject=`echo $2 | tr '\r\n' '\n'`
> echo "${messages}" | mail -s "${subject}" $1 >>/tmp/sendmail.log 2>&1
> EOF
  3、添加执行权限

# chown zabbix:zabbix /etc/zabbix/alertscripts/sendmail.sh
# chmod 755 /etc/zabbix/alertscripts/sendmail.sh
  4、测试发送邮件

# /etc/zabbix/alertscripts/sendmail.sh 收件人邮箱 "Test mail" "This is a test mail.."
http://i2.运维网.com/images/blog/201802/10/b21d39f5a17cd1f531488588ad74a616.png
收到邮件,测试完成,可进行下一步;
三、配置Zabbix_Web
1、添加Media Types
http://i2.运维网.com/images/blog/201802/10/d88b14ad7d02370397e97cb88dd3a0ee.png

Name:自定义
Type:选择script
Scripts name:填写脚本名称
Script parameters:脚本参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
最后点Add即可添加完成;
  2、添加用户
http://i2.运维网.com/images/blog/201802/10/0ab18b1a601f870f6fae1f4c9c2be796.png

Alias:用户名
Groups:用户所属组
Password:用户密码
http://i2.运维网.com/images/blog/201802/10/afa9eb48c0e77c314d3b8771712ffbe0.png

Type:选择刚才添加的Media Types
Send to:收件人,若要通知多个用户,可在这里设置多个邮箱,以逗号分隔
When active:接收邮件时间
Use if severity:选择哪些级别发送邮件
点击Add,Media即可添加完成;
http://i2.运维网.com/images/blog/201802/28/1775b4877200f15fcd30afe79813f52a.png

User Type必须选择为Super Admin,否则收不到通知
最后点击Add,用户添加成功;
  3、添加Actions
http://i2.运维网.com/images/blog/201802/28/2dec4ab49d6c92d181c2b087f892d6f0.png

Name:动作名称
Default subject:邮件主题
Default message:邮件内容
Recovery message:勾选恢复通知信息
Recovery subject:恢复主题
Recovery message:恢复内容
Enabled:启动
Default subject:Zabbix 监控告警 : {TRIGGER.NAME}!
Default message:
告警信息:{TRIGGER.NAME}
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
From:Zabbix.guoxh.cn
Recovery subject:Zabbix 监控恢复 : {TRIGGER.NAME} !!
Recovery message:
告警信息:{TRIGGER.NAME}
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
From:Zabbix.guoxh.cn
http://i2.运维网.com/images/blog/201802/10/2b4d591a511f123bd6245ddb7cf4471b.png

Send to user:添加通知用户
Send only to:通知方式为刚添加的Media Types
最后点击Add,Actions即可添加完成;
  四、测试
自己想办法搞点事情,触发报警通知,比如停掉agent服务;

# systemctlstop zabbix-agent
  收到邮件如下:
http://i2.运维网.com/images/blog/201802/28/d72daf4d9398f4e266dfe01ffd628b5e.png
  到这里,Zabbix邮件通知配置完毕!



页: [1]
查看完整版本: Zabbix 3.0 自定义脚本报警(邮件报警)