zabbix-sendemail报警
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix-sendemail报警相关的知识,希望对你有一定的参考价值。
这两天在学习zabbix,在设置邮件报警时遇到了点状况。zabbix web端时间记录显示邮件已发送,sendEmail邮件却发送失败,查看/tmp/22.log日志文件有以下错误日志
Dec 27 18:27:30 chensh sendEmail[5440]: ERROR => You must specify at least o ne recipient via -t, -cc, or -bcc
380 print() on closed filehandle LOGFILE at /usr/local/bin/sendEmail/sendEmail l ine 1136.
收索网上的资料多有不全,经过不懈寻找终于解决了问题,是WEB端没有配置脚本传参的缘故。特此整合下分享给童鞋们,希望后者一切顺利,并谢过前者。
一、安装sendEmail
sendEmail下载地址:
http://caspian.dotconf.net/menu/Software/SendEmail/
[[email protected] ~]chmod
755 /usr/local/bin/sendEmail
二、网易邮箱设置
选择【设置】->【OP3/SMTP】开通POP3/SMTP服务
POP3服务器: pop.163.com
SMTP服务器: smtp.163.com
三、zabbix服务器端发送邮件脚本
[[email protected] ~]mkdir -p /usr/local/zabbix/share/zabbix/alertscripts
[[email protected] ~]vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=
/usr/local/zabbix/share/zabbix/alertscripts
重启zabbix server
[[email protected] ~]vim /usr/local/zabbix/share/zabbix/alertscripts/mail.sh
#!/bin/bash
# 脚本的日志文件
LOGFILE=
"/tmp/Email.log"
:>
"$LOGFILE"
exec
1>
"$LOGFILE"
exec
2>&1
SMTP_server=
‘smtp.163.com‘
# SMTP服务器,变量值需要自行修改
password=
‘zabbix‘
# 密码,变量值需要自行修改
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/zabbix/share/zabbix/alertscripts/mail.sh‘
set
-x
$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
[[email protected] ~]touch /tmp/Email.log
[[email protected] ~]chown zabbix:zabbix /tmp/Email.log
[[email protected] ~]chown zabbix:zabbix /usr/local/zabbix/share/zabbix/alertscripts/mail.sh
[[email protected] ~]chmod +x /usr/local/zabbix/share/zabbix/alertscripts/mail.sh
四、zabbixWEB配置Email告警方式
选择【Administration】->【Users】,配置user。
选择【Administration】->【Users】,配置Media。
【Administration】->【media types】
【configuration】->【actions】->【actions】
【configuration】->【actions】->【conditions】
【configuration】->【actions】->【operations】
五、测试
关闭agent服务器,查看报警邮箱能否收到报警,有问题请查看/tmp/22.log日志文件解决。
本文出自 “来之火星的你” 博客,谢绝转载!
以上是关于zabbix-sendemail报警的主要内容,如果未能解决你的问题,请参考以下文章
163VS2022调试通过海康明眸门禁报警事件中的报警布防C++示例代码