zabbix脚本报警介质自定义(35)

  • A+
所属分类:zabbix

概述

zabbix媒介类型包括mail、sms、自定义脚本,我们用的最多的还是脚本媒介,再次我们就不讲另外两个媒介了。当事件通知到脚本,会传递三个参数它,分别为$1(发送给谁) $2(标题) $3(内容)。例如发送邮件给support@ttlsa.com,标题为nginx离线,内容是IP地址:1.1.1.1,nginx离线,请立即处理。

媒介配置

点击administrator->media types->create media types

Linux

zabbix媒介配置(一)

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

配置AlertScriptsPath

脚本编写

备注:sendEmail需要额外安装,请参考《sendEmail发送邮件

用户媒介

给用户指定媒介:

*点击Administration→Users->打开用户属性表单->在Media tab点击Add

Linux

zabbix媒介配置(二)

参数介绍

Type:选择媒介类型,这边选自定义媒介

Send to:发送到哪,例如monitor@ttlsa.com,他就是脚本中的$1

When active:报警时间限定,例如1-5,09:00-18:00,只有工作日的9点到18点才会通知,实际工作中,我们应该是相反。

Use if severity:严重性类型,只接收指定的类型,例如info不想接收,那我不勾选即可。

Status:媒介状态Enabled - 启用中.Disabled - 已禁用.

最后

自定义脚本搞定,后面教程将会用到指定脚本来报警。请继续关注ttlsa.com。

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~

评论已关闭!

目前评论:6   其中:访客  5   博主  0   引用   1

    • Cumin 0

      你好,我想请教下,自定义的报警脚本是不是只能传3个zabbix的宏?{ALERT.MESSAGE}{ALERT.SENDTO}{ALERT.SUBJECT} 这3个?我测试了下其他宏,都不生效

      • 运维生存时间 7

        $1是to,你写成路径有什么意义呢?

        • Debug 9

          您好,我sendto能否写为文件路径?脚本写成echo "$2:$3" << $1/problem.log ?

          • wood 9

            $1能不能自定义收件人,让系统判断是哪台机器发生的故障,就发送给谁,而不是固定的几个收件人

              • wood 9

                @wood 这在少量服务器是可以实现的,但是数量多就很难处理了
                例如有1000台机器,分别属于500个用户,那就需要配置500个action?而且更改用户的话还要另外修改action

            • 来自外部的引用: 1

              • 跟着ttlsa一起学zabbix监控呗 | 运维笔记