[Zabbix3.4] 使用触发器抑制一周中特定日期发生警报
你好。
我的名字叫宫崎,我在系统解决方案部的运营管理科工作。
今天我想介绍一下 ZABBIX 3.4 中一个可以阻止在特定日期生成警报的触发器。
技术销售部的 Nakagawa也写了一篇题为设置 ZABBIX 3.4 的监控排除时间
针对一周中特定日期的触发功能
指定星期几的触发函数是“dayofweek”。
以下内容摘自 Zabbix 文档 2.2:
https://www.zabbix.com/documentation/2.2/jp/manual/appendix/triggers/functions
1 到 7 的数字,其中
1 代表星期一
,2 代表星期二
,
7 代表星期日
。
以下是一些触发器表达式的示例:

触发条件表达式如下:
{test-wd01:agent.ping.nodata(5m)}=1 且({test-wd01:agent.ping.dayofweek(0)}=7)=0
上面的条件表达式使用 nodata 函数检查来自主机“test-wd01”的数据“agent.ping”是否在 5 分钟内没有响应。
下面的条件表达式使用 dayofweek 函数检查来自主机“test-wd01”的数据“agent.ping”是星期几。
这两个条件表达式之间用“and”连接。
让我们使用条件表达式生成器来实际测试一下。
选择条件表达式生成器,然后单击“测试”。

如果星期一 5 分钟内没有响应
,则 `{test-wd01:agent.ping.nodata(5m)}=1`
将返回 1,表示 5 分钟内没有响应。`
({test-wd01:agent.ping.dayofweek(0)}=7)=0`
将选择 1 表示星期一。

这些条件相互关联,并且两者都为真,因此会触发警报。
如果周日 5 分钟内没有响应,则
`{test-wd01:agent.ping.nodata(5m)}=1`
将返回 1,表示 5 分钟内没有响应。`
({test-wd01:agent.ping.dayofweek(0)}=7)=0`
将选择 7 表示周日。

此时,`dayofweek` 的条件表达式为 FALSE。
由于这些条件通过 `and` 连接,因此只有当两个条件都为 TRUE 时才会触发警报。
触发器描述
{test-wd01:agent.ping.dayofweek(0)}=7
在上面的示例中,如果输入的 dayofweek 值为 7(星期日),则结果为 TRUE。
({test-wd01:agent.ping.dayofweek(0)}=7)=0 但是
,如果您将其用括号括起来并在末尾添加 =0,则表示括号内的值取反。
这样,如果 dayofweek 中输入的值为 7(星期日),它将返回 FALSE。
概括
正如沿途链接中提到的,触发函数有很多,因此编写复杂的条件似乎是可行的。
我也会介绍我遇到的任何有趣的条件。
就是这样。
0