“Zabbix邮件报警”的版本间的差异

来自linux中国网wiki
跳到导航 跳到搜索
→‎3
(未显示同一用户的2个中间版本)
第64行: 第64行:
 
/bin/mail -s "$2" $1
 
/bin/mail -s "$2" $1
  
#这样会少个$3
+
 
cat >>  /etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh  << EOF
 
#!/bin/sh
 
#export.UTF-8 
 
export LANG=zh_CN.UTF-8  #(解决标题乱码)
 
FILE=/tmp/mailtmp.txt
 
echo "$3"  >$FILE
 
dos2unix -k $FILE  #(解决内容乱码)
 
/bin/mail -s "$2" $1 < $FILE
 
EOF
 
  
 
touch /tmp/mailtmp.txt
 
touch /tmp/mailtmp.txt
第90行: 第81行:
 
./sendmail.sh  emailadd  "标题"  "内容"
 
./sendmail.sh  emailadd  "标题"  "内容"
  
/etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh  evan886@gmail.com "title "  "love evan" </pre>
+
/etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh  evan886@gmail.com "title "  "love evan"  
 +
 
 +
 
 +
 
 +
 
 +
trouble
 +
#这样会少个$3
 +
cat >>  /etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh  << EOF
 +
#!/bin/sh
 +
#export.UTF-8 
 +
export LANG=zh_CN.UTF-8  #(解决标题乱码)
 +
FILE=/tmp/mailtmp.txt
 +
echo "$3"  >$FILE
 +
dos2unix -k $FILE  #(解决内容乱码)
 +
/bin/mail -s "$2" $1 < $FILE
 +
EOF
 +
 
  
 +
会不会影响
 +
su  -l zabbix -c "/usr/lib/zabbix/alertscripts/sendmail.sh" evan886@qq.com  "title" "love evan "
 +
This account is currently not available.
 +
 +
 +
 +
</pre>
  
 
==zabbix web 添加脚本==
 
==zabbix web 添加脚本==
第106行: 第120行:
  
 
===2修改用户警告类型===
 
===2修改用户警告类型===
管理--> 用户-- 选择你的用户 然后 --> 报警媒介  --> 类型 sendmail 收件人 你要填写的email
+
管理--> 用户-- 选择你的用户 然后   --> 报警媒介  -->添加 --> 类型 sendmail 收件人 你要填写的email
  
 
===3===
 
===3===
 
<pre>配置-->动作--> create -->动作
 
<pre>配置-->动作--> create -->动作
 
名称 actionemail
 
名称 actionemail
 +
 +
 +
条件 A 触发器示警度 大于等于 警告
 +
 +
  
 
默认接收人 故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
 
默认接收人 故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

2019年11月7日 (四) 06:57的版本

安装mailx

#现在是12.5 应该不用操作了 我试一下先 
# mailx是UNIX系统上用来处理邮件的工具,使用它可以发送,读取邮件
yum -y   remove  mailx 
yum -y   install patch  dos2unix
wget -c  http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2
tar xvf mailx-12.4.tar.bz2   
cd mailx-12.4

wget http://www.linuxfromscratch.org/patches/blfs/7.6/mailx-12.4-openssl_1.0.0_build_fix-1.patch
patch -Np1 -i mailx-12.4-openssl_1.0.0_build_fix-1.patch

make   -j4                  
make install UCBINSTALL=/usr/bin/install
ln -s /usr/local/bin/mailx /bin/mail      #创建   mailx到mail的软连接
ln -s /etc/nail.rc /etc/mail.rc #创建mailx配置文件软连接

配置

修改配置文件

vi /etc/mail.rc

echo '# Only include selected header fields when forwarding messages.
fwdretain subject date from to
set from=zabbix@mail.cc  smtp=mail.cc
set smtp-auth-user=zabbix  smtp-auth-password=zabbix
set smtp-auth=login ' >>/etc/mail.rc




#by evan2019
set from=linux@126.com  smtp=smtp.126.com
set smtp-auth-user=linux smtp-auth-password=1234
set smtp-auth=login


发送示列

# body |mail -s "title"
echo " test mail" |mail -s "mylove201910" evan886@gmail.com

修改zabbix_server.conf指定脚本路径

#AlertScriptsPath=/etc/zabbix/zabbix_server.conf.d/alertscripts/
AlertScriptsPath=/data/apps/zabbix/zabbix-server/share/zabbix/alertscripts/
service  zabbix_server  restart 

mkdir -p  /etc/zabbix/zabbix_server.conf.d/alertscripts/
#[root@test ~]# cat /etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh 

配置脚本

vi  /etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh
#!/bin/sh
#export.UTF-8  
export LANG=zh_CN.UTF-8  #(解决标题乱码)
FILE=/tmp/mailtmp.txt
echo "$3"  >$FILE
dos2unix -k $FILE   #(解决内容乱码)
/bin/mail -s "$2" $1



touch /tmp/mailtmp.txt


#注意:给mailtmp.txt权限,否则收件内容为空,因为zabbix没有权限写入。
chown   zabbix:zabbix  /tmp/mailtmp.txt



给脚本设置zabbix运行权限
chown zabbix:zabbix  /etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh 
chmod  +x   /etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh 

测试发送最好使用zabbix用户测试,因为使用root会改变mailtmp.txt文件权限,导致发送邮件内容还是空或是测试写入的内容。
./sendmail.sh   emailadd  "标题"  "内容"

/etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh  evan886@gmail.com "title "  "love evan" 




trouble 
#这样会少个$3
cat >>  /etc/zabbix/zabbix_server.conf.d/alertscripts/sendmail.sh   << EOF
#!/bin/sh
#export.UTF-8  
export LANG=zh_CN.UTF-8  #(解决标题乱码)
FILE=/tmp/mailtmp.txt
echo "$3"  >$FILE
dos2unix -k $FILE   #(解决内容乱码)
/bin/mail -s "$2" $1 < $FILE
EOF


会不会影响 
su  -l zabbix -c "/usr/lib/zabbix/alertscripts/sendmail.sh" evan886@qq.com  "title" "love evan "
This account is currently not available.



zabbix web 添加脚本

1

管理-->报警媒介类型 --> creat -->
##内容
名称 sendmail 
类型 脚本 
脚本参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

2修改用户警告类型

管理--> 用户-- 选择你的用户 然后 --> 报警媒介 -->添加 --> 类型 sendmail 收件人 你要填写的email

3

配置-->动作--> create -->动作
名称 actionemail


条件 A	触发器示警度 大于等于 警告



默认接收人 故障{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}


还有恢复信息 

恢复{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}

4

配置-->动作--> create -->操作

操作类型 发送到用户 仅送到 默认信息等等

记得要 两次更新

see also

http://www.cnblogs.com/hanyifeng/p/5366855.html

zabbix3.2.0触发邮件告警流程

zabbix不发送邮件

添加自定义监控项目,配置邮件告警,测试告警,不发邮件的问题处理

添加自定义监控项目 配置邮件告警 测试告警 不发邮件的问题处理

自动化监控Zabbix之邮件报警

zabbix email报警