[Zabbix 3.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,表示当天是星期一。

这两个条件通过“and”连接,由于两者都为真,因此会触发警报。

如果周日 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
加载中...
0票,平均分:0.00/10
6,232
X Facebook Hatena书签 口袋

这篇文章的作者

关于作者

宫崎健太

我于 2017 年以应届毕业生的身份加入 Beyond 公司。

我们为主要服务于开发网络服务的公司提供服务器/云平台的全天候 (24/7/365) 运维和监控服务。我
隶属于系统解决方案部门,我的工作目标是提升 Beyond 的运营效率,从而让我们的客户能够专注于自身业务。

认证:AWS 认证解决方案架构师、GCP 专业云架构师、Linuc1