zabbix中监控项仅负责收集数据,而通常收集数据的目的还包括在某指标对应的数据超出合理范围时给相关人员发送告警信息,"触发器"正式 用于为监控项所收集的数据定义阈值,每一个触发器仅能管理至一个监控项,但是可以为一个监控项同时使用多个触发器;意思就是,为一个监控项定义多个具有不同阈值的触发器,可以实现不同级别的报警。一个触发器由一个表达式构成,它定义了监控项所采集的数据的一个阈值,一旦某次采集的数据超出了触发器定义的阈值,触发器状态将会转为"problem";而当采取的数据再次回归至合理的范围内时,其状态将重新返回到"OK"。

1、触发器表达式

触发器表达式的格式为

{<server>:<key>.<function>(<parameter>)}<operator><constant>

某主机上某个key使用某个函数(参数)所得的值 和 设定的值比较

server:主机名称

key:主机上相应监控项的key

function:评估采集到的数据是否在合理范围内时所使用的函数,其评估过程可以根据采取的数据、当前时间及其它因素进行

2、触发器表达式支持的函数

avg     求平均值

count     指定时间内或次数内数值统计

change     指定时间内或次数内倒数第2次于倒数第1次的差值,对于字符串,0没有变化,1表示有变化;

date     当前日期

dayofweek 本周第几天 dayofmonth 本月第几天

delta     指定时间内或次数内最大值与最小值的差

diff     指定时间内或次数内倒数第2次于倒数第1次的值,有没有不同;常用于监控文件

regexp 检查最后一次采样的数据是否能够被指定的模式所匹配:1表示匹配,0表示不匹配

iregexp     不区分大小的正则表达式

last     最近采样的数据

max、min、nodata没有数据

now 返回时间戳

prev 倒数第二个采样值

str     从最后一次的采样中查找此处指定的字符串;0表示找到,1表示没找到

strlen     字符串长度比较

sum 求和

3、触发器实例

触发器可以创建在模板或者某台主机上

例一:自定义触发器监控登录用户数,zabbix的Template OS Linux模板中有Number of logged in users监控项,即监控当前登录的用户数,可以自定义触发器来监控登录个数,当触发某个阈值如3的时候就发送报警

点击:配置——>主机,选择主机,点击——>触发器——>创建触发器

触发器名称

创建触发器表达式

对触发器进行触发报警测试

查看动作日志

例二:监控平均一分钟内的cpu负载,操作步骤同上

触发器表达式为{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5

最新的CPU负载值如果大于5,那么表达式会返回true,这样一来触发器状态就改变为"problem"了

例三:监控/etc/passwd文件是否被修改(系统自带监控项)

触发器表达式为{www.zabbix.com:vfs.file.cksum[/etc/passwd].diff(0)}>0

最新的checksum与上一次获取到的checksum不同,表达式将会返回true. 我们可以使用同样的方法监控系统重要的配置文件,例如/etc/passwd,/etc/inetd.conf等等

例四:监控主机网卡流量

触发器表达式为{www.zabbix.com:net.if.in[eth0,bytes].min(5m)}>100K

当主机网卡eth0最后5分钟内接收到的流量超过100KB那么触发器表达式将会返回true

例五:监控主机是否可达

触发器表达式为{zabbix.zabbix.com:icmpping.count(30m,0)}>5

表示最近30分钟zabbix.zabbix.com这个主机超过5次不可到达

 

部分内容参考来源:https://www.cnblogs.com/zhaijunming5/p/6889336.html

zabbix自定义触发器的更多相关文章

  1. 【Linux】Zabbix自定义触发器语法

    Zabbix触发器的语法如下: {<server>:<key>.<function>(<parameter>)}<operator>< ...

  2. zabbix自定义触发器进行监控

    给某一主机创建触发器 触发器属性,其中centos是主机名,也就是你监控的那台主机的名字,可以点击bp2,查看该主机的hostname 检测该触发器 在该主机下可以看到刚创建的触发器 最后我们给该主机 ...

  3. zabbix自定义web检测

    zabbix自定义web检测 本博客使用zabbix 版本 4.0.3 Web监控的原理 Web监控即对HTTP服务的监控,模拟用户去访问网站,对特定的结果进行比较,如状态码.返回字符串等特定的数据进 ...

  4. zabbix 自定义监控nginx

    zabbix自定义nginx监控项 查看nginx编译安装是否加上该选项,如果没有请重新编译安装 配置nginx.conf vim /usr/local/cpgroup/nginx/conf/vhos ...

  5. Zabbix 自定义Key

    系统:Linux Centos 7.4 x64.Windos 2008 x64 服务:Zabbix 3.0.16 说明1:自定义Key 主要通过自定义 脚本 或者 命令 来实现自定义监控类型,需要在a ...

  6. (27)zabbix自定义图表Graph

    zabbix提供了一个自定义图表的功能,这不是废话么?呵呵~前面文章 讲到的<zabbix简易图表>只能显示单个item的数据图表.如果我们想显示多个信息到一个图表上,那必须使用zabbi ...

  7. (21)zabbix创建触发器trigger

    1. 创建触发器 了解了什么触发器,接下来看下zabbix触发器怎么创建和配置,方法很简单,请大家往下读,有什么问题请留言. 创建触发器步骤: 点击Configuration(配置) → Hosts( ...

  8. Zabbix自定义监控8080端口的连接数

    Zabbix自定义监控8080端口的连接数 一 zabbix自定义监控实现思路 实际上我们要想使用zabbix来监控一些服务的原理很简单,步骤分别是:1.写一个脚本用于获取待监控服务的一些状态信息2. ...

  9. zabbix自定义key

    zabbix自定义key 1.修改客户端配置文件 #vi /opt/zabbix/etc/zabbix_agentd.conf Include=/opt/zabbix/etc/zabbix_agent ...

随机推荐

  1. 物理和虚拟兼容性RDM的区别

    Difference between Physical compatibility RDMs and Virtual compatibility RDMs (2009226) Purpose This ...

  2. swiper伸缩侧边菜单栏

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  3. Kali安装到移动硬盘或者U盘中~Linux系通用方法(包括Android)

    0.1.保证这个服务必须启动(虚拟机服务最好都启动) 0.2.看看U盘接口类型是否对应 1.安装第一步 2.安装第二步,选择kali镜像 3.设置存放位置(上面的名字无所谓,最后不会用它的,虚拟机只是 ...

  4. 制作TimeLine物流信息展示效果

    var TimeLine = function (_id) { this.id = _id; this._top = 40; this.vHeight = 40; this.global_top = ...

  5. [洛谷1972][SDOI2009]HH的项链

    题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH 不断地收集新的贝壳,因此,他的项链变得越来越长. ...

  6. ScrollLayer

    http://www.oschina.net/p/scrolllayer ScrollLayer 编辑/纠错 分享到:    已用    +1 收藏 +12 4月18日 武汉 源创会开始报名,送华为开 ...

  7. git使用过程中遇到的错误

    1.使用git add "login.py" 然后git commit -m "add url"的时候报错.分支newtype也是存在的 nothing to ...

  8. git的使用02

    接下来我们要将文件交给仓库去托管 如何使用版本库

  9. UVA 1594:Ducci Sequence (模拟 Grade E)

    题意: 对于一个n元组(a0,a1,...),一次变换后变成(|a0-a1|,|a1-a2|,...) 问1000次变换以内是否存在循环. 思路: 模拟,map判重 代码: #include < ...

  10. 【linux高级程序设计】(第十四章)TCP高级应用 3

    控制socket文件描述符属性 1.set/getsockopt()修改socket属性 int getsockopt (int __fd, int __level, int __optname, v ...