Fork me on GitHub

Zabbix触发器和监控项设置时间范围

一、实际业务场景

业务问题

最近在监控 ActiveMQ 的阻塞消息时,发现每天0点都有预警,然后进行排查,0 点确实是有阻塞消息,这个阻塞消息的存在,是因为 0点系统进行结算,会产生大量的消息,并且有一些结算任务,导致消息会有阻塞。但是这个阻塞是正常的,我不想进行预警,那么有以下方法可以禁止这个预警:

  • 设置监控时间

    就是在某个时间段不去获取该监控项的数据,这个方法好像是可以,但是隐隐感觉有些不妥。

  • 设置触发器时间(推荐方法)

    就是监控的数据我获取,但是在某个时间段该触发器无效。这个好像还不错。

  • 设置用户报警媒介启用时间

    就是设置该用户在某个时间段可以收到报警,某个时间段不接受报警。这个设置得背锅哦。

解决办法

经过上面的对比,我觉得还是 设置触发器时间比较适合该需求。所以我们设置触发器监控时间。设置为 0 点0分到 0点 10分,该监控项不预警。

使用到触发器设置范围,也觉得该对 zabbix 设置时间范围配置做个总的记录。

二、Zabbix触发器和监控项与用户预警设置时间范围配置流程

一、触发器设置时间范围

触发器设置时间范围需要将触发器条件和 触发器时间范围相结合,比如我们有一个需求,就是我们需要在 时间点 1点到 23点,检查agent 是否活跃,当在这个时间段如果 agent 不活跃的话就进行预警

首先我们需要创建一个触发器,选择监控项为 agent.ping,创建当 agent.ping=0时候的表达式。

然后我们选择表达式构建构造器。选择上面一样的监控项,功能选择 time() 当前时间 设置时间范围,

注意时间范围的格式是 :HHMMSS,也就是6位数字。

这样就ok了。

二、监控项设置时间范围

在创建监控项里面的,自定义时间间隔,可以设置监控范围。

示例: 我想在星期一到星期五,全天监控,间隔是 30s, 周六到 周日,全天监控,间隔是 60s.

间隔 周期
30 1-5,00:00-24:00
60 6-7,00:00-24:00

示例2:我想周一到周日全天监控,间隔30s,但是在每天的 0点到 0点10不监控。

间隔 周期
30 1-7,00:10-24:00
0 6-7,00:00-00:10

如果灵活间隔设置为“0”,则在灵活间隔期间不轮询监控项,并在周期结束后根据默认更新间隔恢复轮询。

详细监控项自定义间隔见 官方文档

三、用户报警设置启用时间

该设置在用户基本资料的报警媒介里面。

posted @ 2019-06-28 12:37  自由早晚乱余生  阅读(11045)  评论(0编辑  收藏  举报