zabbix报警媒介:自定义脚本Custom alertscripts

邮件报警准备工作:安装sendEmail

zabbix-server 的 配置文件 /etc/zabbix/zabbix_server.conf 中的参数 “AlertScriptsPath=/usr/lib/zabbix/alertscripts” 指zabbix-server可以调用的脚本

编写zabbix发送报警的脚本:[root@localhost data]# vim /usr/lib/zabbix/alertscripts/sendmail.sh

#!/bin/bash
SMTP_server='smtp.test.com' # SMTP服务器
username='yunwei@test.com' # 发件人邮箱用户名
password='qweryyui' # 发件人邮箱密码
from_email_address='yunwei@test.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- << EOF
$message_subject_utf8
EOF`
[ $? -eq ] && message_subject="$message_subject_gb2312" || message_subject="$message_subject_utf8"
# 转换邮件内容为GB2312
message_body_gb2312=`iconv -t GB2312 -f UTF- << EOF
$message_body_utf8
EOF`
[ $? -eq ] && message_body="$message_body_gb2312" || message_body="$message_body_utf8"
# 发送邮件
sendEmail='/usr/bin/sendEmail'
$sendEmail -s "$SMTP_server" -xu "$username" -xp "$password" -f "$from_email_address" -t "$to_email_address" -u "$messa
ge_subject" -m "$message_body" -o message-content-type=text -o message-charset=gb2312
echo "`date +"%F %T"` send to $to_email_address" >> /tmp/send.log

zabbix媒介类型包括mail、sms、自定义脚本,我们用的最多的还是脚本媒介,再次我们就不讲另外两个媒介了。当事件通知到脚本,会传递三个参数它,分别为$1(发送给谁) $2(标题) $3(内容)。

媒介配置
点击administrator->media types->create media types

zabbix媒介配置

  • Name:触发器名称
  • Type: 介质类型
  • script name:脚本名称(需要先定义AlertScriptsPath,mail.sh放在这个目录下,写绝对路径没用)
  • Enabled:状态

配置AlertScriptsPath

# mkdir /usr/local/zabbix/alertscripts
# vim /usr/local/zabbix/etc/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts 监控脚本路径这样设置一条记录。
脚本编写
# cd /usr/local/zabbix/alertscripts
# vi mail.sh
#!/bin/sh
to=$
subject=$
body=$
#/usr/local/bin/sendEmail -f root@test.com -t "$to" -s mail.test.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu root@test.com -x root -m "$body" &gt;&gt;/tmp/sendmail.log

注意脚本设置号以后要设置权限,否则无法执行:

chown zabbix.zabbix mail.sh
chmod +x mail.sh

用户媒介
给用户指定媒介:
*点击Administration→Users->打开用户属性表单->在Media tab点击Add

zabbix媒介配置
参数介绍

  • Type: 选择媒介类型,这边选自定义媒介
  • Send to:发送到哪,例如705754153@qq.com,他就是脚本中的$1
  • When active:报警时间限定,我们设置24小时不间断监控。
  • Use if severity:严重性类型,只接收指定的类型,不想接受的,那我不勾选即可。
  • Status:媒介状态Enabled – 启用中.Disabled – 已禁用.

zabbix发送报警的脚本的更多相关文章

  1. 使用python脚本配置zabbix发送报警邮件

    #前提得在zabbix_server配置文件中配置触发脚本的目录,例如,我配置的在/usr/local/zabbix/server/scripts目录下 编写python脚本如下 因为我的服务器在腾讯 ...

  2. zabbix邮件报警通过脚本来发送邮件

    zabbix默认邮件报警会将各个报警接收人单独发送邮件,为了使邮件能以群发的方式统一一封邮件发送所有接收人,需要改成脚本的形式: sendemail.py: #!/usr/bin/python imp ...

  3. zabbix 发送报警邮件

  4. Zabbix邮件报警-->Script

    Version:3.0.1 邮件报警有两种media 1.Email zabbix发送报警邮件到指定smtp服务器(使用系统自带的sendmail,发送邮箱是zabbix服务器的本地邮箱账号) 再由s ...

  5. Zabbix邮件报警-->Email

    Version:3.0.1 邮件报警有两种media 1.Email zabbix发送报警邮件到指定smtp服务器(使用系统自带的sendmail,发送邮箱是zabbix服务器的本地邮箱账号) 再由s ...

  6. Nagios+msn+fetion自定义时间发送报警消息

    转自http://blog.csdn.net/deccmtd/article/details/6063467 Nagios+fetion发送手机报警使用了几个月.每次报警短信来都要看下手机.感觉麻烦. ...

  7. 通过脚本发送zabbix微信报警

    实现zabbix通过微信报警的方式也是通过脚本来实现,与邮件报警不同的是,脚本调用的微信的相关接口的获取相对复杂一点 1.申请一个微信公众号(企业号) 申请方法不多说,如果已申请请忽略 2.在微信企业 ...

  8. 通过脚本发送zabbix邮件报警

    zabbix原生的报警媒介类型中,邮件报警是我们常用的方式.当我们在CentOS6上面安装zabbix3.0并配置邮件报警的时候,在邮件配置正确的前提下,不管触发器如何触发,邮件总是发送不出去,但是在 ...

  9. zabbix配置发送报警邮件

    配置邮件分为两种情况: 第一种:使用远端邮件服务器发送报警邮件 Linux系统版本:CentOS6.5-64 下载mailx: http://nchc.dl.sourceforge.net/proje ...

随机推荐

  1. 如何使用EF?

    方法1: 新建好项目之后 → 右击类库 → 新建项 → ADO.NET实体数据模型(在Visual C#项中) → 从数据库生成 → 选择你要映射的数据库的数据源(将 『是,在连接字符串中包含敏感数据 ...

  2. 在一般处理程序中使用session

    public class Handler1 : IHttpHandler, IRequiresSessionState 需要继承 IRequiresSessionState接口,告诉程序要使用sess ...

  3. SpringBoot启动加载yml配置文件出现编码格式错误

    Caused by: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input l ...

  4. Eclipse Setting

    下载 https://www.eclipse.org/downloads/packages/ 自动保存代码 编码设置 代码自动提示 .abcdefghijklmnopqrstuvwxyz 字体大小设置 ...

  5. Mysql的BTREE和HASH索引

    建议默认使用BTree索引,如果时间太长,可以尝试HAST索引,但限制如下: 不支持between and 只支持 = IN <> 不支持范围查询如between and和like. 无法 ...

  6. vue问题八:动态加载loading、浏览器图标

    全局动态加载loading: 参考文档:https://blog.csdn.net/qq_34825875/article/details/79570301 在main.js或者index.js引用  ...

  7. 阶段3 2.Spring_10.Spring中事务控制_8 spring基于纯注解的声明式事务控制

    新建项目 把之前项目src下的内容全部复制过来 pom.xml内复制过来 开始配置 新建一个config的包,然后再新建配置文件类SpringConfiguration @Configuration这 ...

  8. 90子集II

    题目:给定一个可能包含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集).说明:解集不能包含重复的子集. 输入:[1,2,2]   输出:[[2],[1],[1,2,2],[2,2],[1 ...

  9. Linux监控命令之==>ps

    一.命令说明 ps 命令是最基本同时也是非常强大的进程查看命令.使用该命令可以确定有哪些进程正在运行和运行的状态.进程是否结束.进程有没有僵死.哪些进程占用了过多的资源等等.总之大部分信息都是可以通过 ...

  10. 机器学习之K近邻算法

    K 近邻 (K-nearest neighbor, KNN) 算法直接作用于带标记的样本,属于有监督的算法.它的核心思想基本上就是 近朱者赤,近墨者黑. 它与其他分类算法最大的不同是,它是一种&quo ...