官方介绍:http://caspian.dotconf.net/menu/Software/SendEmail/

1、sendEmail部署
下载安装包到本地、解压
[root@localhost SendEmail]# wget -c http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
---- ::-- http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
正在解析主机 caspian.dotconf.net... 69.164.196.234
正在连接 caspian.dotconf.net|69.164.196.234|:... 已连接。
已发出 HTTP 请求,正在等待回应... OK
长度: (29K) [application/x-gzip]
正在保存至: “sendEmail-v1..tar.gz” %[=================================================>] , 100K/s in .3s -- :: ( KB/s) - 已保存 “sendEmail-v1..tar.gz” [/]) [root@localhost SendEmail]# ls
sendEmail-v1..tar.gz
[root@localhost SendEmail]# tar zxvf sendEmail-v1..tar.gz
sendEmail-v1./
sendEmail-v1./CHANGELOG
sendEmail-v1./README
sendEmail-v1./README-BR.txt
sendEmail-v1./TODO
sendEmail-v1./sendEmail
sendEmail-v1./sendEmail.pl
[root@localhost SendEmail]# cd sendEmail-v1.
[root@localhost sendEmail-v1.]# cp -a sendEmail /usr/local/bin/
[root@localhost sendEmail-v1.]# chmod +x /usr/local/bin/sendEmail
[root@localhost sendEmail-v1.]# file /usr/local/bin/sendEmail
/usr/local/bin/sendEmail: a /usr/bin/perl -w script text executable

sendemail命令帮助信息

[root@localhost sendEmail-v1.]# /usr/local/bin/sendEmail 

sendEmail-1.56 by Brandon Zehm <caspian@dotconf.net>

Synopsis:  sendEmail -f ADDRESS [options]

  Required:
-f ADDRESS from (sender) email address
* At least one recipient required via -t, -cc, or -bcc
* Message body required via -m, STDIN, or -o message-file=FILE Common:
-t ADDRESS [ADDR ...] to email address(es)
-u SUBJECT message subject
-m MESSAGE message body
-s SERVER[:PORT] smtp mail relay, default is localhost: Optional:
-a FILE [FILE ...] file attachment(s)
-cc ADDRESS [ADDR ...] cc email address(es)
-bcc ADDRESS [ADDR ...] bcc email address(es)
-xu USERNAME username for SMTP authentication
-xp PASSWORD password for SMTP authentication Paranormal:
-b BINDADDR[:PORT] local host bind address
-l LOGFILE log to the specified file
-v verbosity, use multiple times for greater effect
-q be quiet (i.e. no STDOUT output)
-o NAME=VALUE advanced options, for details try: --help misc
-o message-content-type=<auto|text|html>
-o message-file=FILE -o message-format=raw
-o message-header=HEADER -o message-charset=CHARSET
-o reply-to=ADDRESS -o timeout=SECONDS
-o username=USERNAME -o password=PASSWORD
-o tls=<auto|yes|no> -o fqdn=FQDN Help:
--help the helpful overview you're reading now
--help addressing explain addressing and related options
--help message explain message body input and related options
--help networking explain -s, -b, etc
--help output explain logging and other output options
--help misc explain -o options, TLS, SMTP auth, and more

安装依赖包

[root@localhost sendEmail-v1.]# yum -y install perl-Net-SSLeay perl-IO-Socket-SSL

报警脚本

[root@localhost lib]# find /usr/ -name alertscripts    #脚本存放目录
/usr/local/zabbix/share/zabbix/alertscripts
[root@localhost sendEmail-v1.]# cd /usr/local/zabbix/share/zabbix/alertscripts/

[root@localhost alertscripts]# cat zabbixmail.sh
#!/bin/bash
SMTP_server='smtp.163.com'                        #smtp服务器
username='zabbix*****@163.com'             #用户名
password='********'                  #密码 提醒:写邮箱客户端授权密码

如您仍选择采用IMAP协议访问,可通过以下方式开启:
  1、登录网页版网易邮箱,在【设置】-【POP3/SMTP/IMAP】中开启;

from_email_address='zabbix****@163.com'       #发件人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_utf"

# 转换邮件内容为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

/usr/local/bin/sendEmail 命令主程序
-f zabbix*****@163.com  发件人邮箱
-s smtp.163.com       发件人邮箱的smtp服务器
-u "我是邮件主题"     邮件的标题
-o message-content-type=html   邮件内容的格式,html表示它是html格式
-o message-charset=utf8        邮件内容编码
-xu zabbix*****@163.com         发件人邮箱的用户名
-xp *******                      发件人邮箱密码
-m "我是邮件内容"        邮件的具体内容
发送成功之后会有如下提示:
Apr 29 22:22:19 server sendEmail[75870]: Email was sent successfully!

设置脚本权限

[root@localhost alertscripts]# chmod +x zabbixmail.sh
[root@localhost alertscripts]# chown zabbix.zabbix zabbixmail.sh

这只zabbix用户报警

打开zabbix——管理——报警媒介类型——创建媒体类型

添加以下3个参数,分别对sendEmail.sh脚本需要的三个参数:收件人、主题、详细内容

{ALERT.SENDTO}

{ALERT.SENDTO}

{ALERT.MESSAGE}

管理——用户——Admin——报警媒介

设置zabbix出发报警动作

配置——动作——创建动作

名称:Action-SendEmail

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

默认信息:

告警主机:{HOSTNAME1}

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

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

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

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

事件ID:{EVENT.ID}

恢复信息:打钩
恢复主题:恢复OK, 服务器:{HOSTNAME1}:{HOST.CONN}的 {TRIGGER.NAME}已恢复! 恢复信息: 告警主机:{HOSTNAME1} 告警时间:{EVENT.DATE} {EVENT.TIME} 告警等级:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警项目:{TRIGGER.KEY1} 问题详情:{ITEM.NAME}:{ITEM.VALUE} 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID} 已启用:打钩

切换到操作选项

关闭一台服务器的zabbix_agentd 服务、测试邮件是否能发送成功

[root@test3 /]# /etc/init.d/zabbix_agentd stop
Shutting down zabbix_agentd: [ OK ]

到邮箱查看

告警邮件

CentOS 6.5 zabbix 3.0.4 SendEmail报警的更多相关文章

  1. 解决CentOS 7安装zabbix 3.0 无法启动zabbix-server的问题[segfault at 18 ip 00007f78842b4bd0 sp 00007fff1995a818 error 4 in libpthread-2.17.so[7f78842ab000+16000]]

    解决CentOS 7安装zabbix 3.0 无法启动zabbix-server的问题 [root@localhost sbin]# service zabbix-server start Redir ...

  2. centos 6 安装zabbix 3.0

    1.安装PHP Zabbix 3.0对PHP的要求最低为5.4,而CentOS6默认为5.3.3,完全不满足要求,故需要利用第三方源,将PHP升级到5.4以上,注意,不支持PHP7 rpm -ivh  ...

  3. centos 7 上zabbix 3.0 服务端安装

    zabbix服务端安装 安装完毕mysql-5.6.php5.6 mysql-5.6安装:https://www.cnblogs.com/xzlive/p/9771642.html  创建zabbix ...

  4. CentOS 7 安装 Zabbix 3.0

    CentOS7搭建Zabbix 一.安装数据库: 1.  安装数据库:sudo  yum  grouinstall mariadb –y 2.  启动数据库:sudo systemctl  start ...

  5. CentOS 6.5 zabbix 3.0.4 监控MySQL性能

    安装mysql [root@test3 /]# yum -y install mysql mysql-server 初始化数据库 [root@test3 /]# /etc/init.d/mysqld ...

  6. CentOS 6.5 zabbix 3.0.4 乱码问题

    中文支持 修改web端源文件来开启语言 [root@localhost /]# vim /var/www/html/zabbix/include/locales.inc.php 'zh_CN' =&g ...

  7. CentOS 6.6 搭建Zabbix 3.0.3 过程

    分享CentOS 6.6下搭建Zabbix 3.0.3 的过程,希望都大家有所帮助. 环境安装 系统环境: # cat /etc/RedHat-release CentOS release 6.6 ( ...

  8. CentOS 7 源码安装 Zabbix 6.0

    Zabbix 主要有以下几个组件组成: Zabbix Server:Zabbix 服务端,是 Zabbix 的核心组件.它负责接收监控数据并触发告警,还负责将监控数据持久化到数据库中. Zabbix ...

  9. zabbix3.0.4安装部署与SendEmail报警配置

    MySQL:5.6.21 nginx:1.62 PHP:5.7 pcre:8.32 zabbix:3.0.4 LNMP安装步骤略过 # tar xvf zabbix-3.0.4.tar.gz # cd ...

随机推荐

  1. mybatis的分页插件使用方法

    1.下载所需要的jar包,如果使用maven可以在maven中添加依赖: 插件的实现原理: 如果你想使用本项目的jar包而不是直接引入类,你可以在这里下载各个版本的jar包(点击Download下的j ...

  2. BZOJ4668: 冷战

    并查集,按秩合并,树高log,暴力查询. 果然bzoj新挂的题中过的人多的全是sb题. 写了一发秒WA,发现姿势不对.(@_@) 然后过了50min,开始怀疑人生.(*_*) 这么长时间我lct都写完 ...

  3. Java-IO之DeflaterOutputStream和InflaterOutputStream

    此类为使用 "deflate" 压缩格式压缩数据实现输出流过滤器 example import java.io.File; import java.io.FileInputStre ...

  4. js JS 浮点计算BUG

    Number.prototype.toRound = function(d) { var s=this+"";if(!d)d=0; if(s.indexOf(".&quo ...

  5. IBatis一对多查询

    public class User { public int UserId { get; set; } public string UserName { get; set; } } public cl ...

  6. split shell tools

    split [-bl] file [prefix] 参数说明: -b, --bytes=SIZE:对file进行切分,每个小文件大小为SIZE.可以指定单位b,k,m. -l, --lines=NUM ...

  7. 新创建一个git远程仓库

    1.git 服务器项目初始化已经完毕,请把相关的资料和源码上传到git服务器. 2.第一次需要clone,执行命令:git clone git@192.168.10.184:listenbox_mc_ ...

  8. MySQL取每组的前N条记录

    一.对分组的记录取前N条记录:例子:取前 2条最大(小)的记录 .用子查询: SELECT * FROM right2 a WHERE > (SELECT COUNT(*) FROM right ...

  9. awk操作数组注意几点

    awk的数组跟其他程序设计语言的数组有所不同:1.可以直接在awk中定义数组:2.数组元素的初始值为0或空字符串,除非他们被显示的指定初始化:3.数组可以自动扩展:4.都是关联数组,数字下标也会转成字 ...

  10. 使用EntityFramework6.1的DbCommandInterceptor拦截生成的SQL语句

    开始 EF6.1也出来不少日子了,6.1相比6.0有个很大的特点就是新增了System.Data.Entity.Infrastructure.Interception 命名空间,此命名空间下的对象可以 ...