限制日志服务告警通知时段的常见方法

本文介绍限制告警通知时段的常见方法以及各自适用的场景。

背景信息

在对系统进行监控告警的过程中,并非在任何时间段都需要接收告警通知,例如针对以下场景,可通过相关设置,限制告警通知时段。

  • 针对计划内变更触发的已知告警,无需通知。

  • 非工作时间不接收非严重的告警通知。

  • 晚上不接收电话告警通知。

方法比较

各种方法的比较如下表所示。在实际设置过程中,您可以按照实际需求选择合适的方法。

Cron表达式

临时关闭

静默策略

全局日历

值班组

作用阶段

影响告警评估,从而影响通知。

影响告警评估,从而影响通知。

仅影响通知。

仅影响通知。

仅影响通知。

支持的通知渠道

任意

任意

任意

任意

支持所有与用户、用户组相关的通知渠道,例如短信、电话、邮件以及钉钉等可以@用户的场景。

是否支持复用

无法复用,需要针对每个告警监控规则单独配置。

无法复用,需要针对每个告警监控规则单独配置。

支持

支持

支持

是否临时设置

支持的场景

周期性屏蔽某一条告警监控规则触发的告警。

主要针对单条告警监控规则。

临时屏蔽某一条告警监控规则触发的告警。

主要针对单条告警监控规则。

临时或永久屏蔽符合条件的告警。

支持对多条告警监控规则进行设置。

全局工作日及工作时间设置。

对所有告警生效。

支持任意的值班时段设置。

仅对使用该值班组的告警监控规则生效。

配置复杂度

简单

简单

较复杂

简单

较复杂

通过Cron表达式限制告警触发时段

在设置告警监控规则时,需设置检查频率。您可以设置标准的Cron表达式,用于控制检查频率。例如:

  • 0/5 * * * *表示从0分钟开始,每隔5分钟检查一次。

  • 0 0/1 * * *表示从0点0分开始,每隔1小时检查一次。

  • 0 18 * * *表示每天18点0分检查一次。

  • 0 0 1 * *表示每月1日的0点0分检查一次。image

此外您还可以使用复杂的Cron表达式,实现更加灵活的告警时间段限制。例如:

  • 希望目标告警监控规则在每天08:00~18:00之间每5分钟执行一次告警检查,则您可以设置Cron表达式为0/5 8-17 * * *

  • 希望目标告警监控规则在周一到周五的08:00~12:00和14:00~18:00之间每分钟执行一次告警检查,则您可以设置Cron表达式为* 8-11,14-17 * * 1-5

Cron表达式支持的最小时间粒度为分钟。一共分为5段,分别表示分钟、小时、日、月、周。更多信息,请参见https://crontab.guru/

通过临时关闭告警来限制告警触发时段

针对某些预期告警(例如由于临时变更系统,触发的告警),您希望在一段时间内不再通知,则可以通过临时关闭功能,暂时关闭某个告警。

image

临时关闭后,在该时间之内告警监控规则不会继续评估和触发告警。等待关闭时间结束后,告警监控规则恢复正常。如果您要提前恢复告警,可单击恢复

通过静默策略限制告警通知时段

针对多条告警监控规则触发的告警(例如某集群升级过程中,可能出现的一系列预期告警),您希望在一段时间内都不通知,则可以通过静默策略实现。更多信息,请参见告警静默机制

如果这些告警监控规则绑定同一个告警策略,则您可以在该告警策略中设置静默策略,例如在2022-12-02 12:00~18:00期间,临时屏蔽由test-project项目产生的所有告警,如下图所示。

image

通过全局日历限制告警通知时段

针对全局告警设置相同的通知时间,则您可以使用全局日历功能。例如针对绑定了某行动策略的告警,您只想在工作日的工作时间(周一到周五的09:00~18:00)收到告警通知,可参考如下配置。

  1. 全局日历中设置工作日和工作时间。具体操作,请参见修改全局默认日历日历重置机制

    5.png

  2. 在行动策略中设置发送时段。具体操作,请参见创建行动策略

    image

通过值班组限制告警通知时段

全局日历主要解决全局工作日和工作时间相关的配置。针对个别告警,需要使用不同的发送时段,则您可以使用值班组实现完全灵活且自定义的发送时段。例如针对某个告警监控规则触发的告警,您只想在每天夜间(00:00~07:00)接收告警通知,则您可以创建一个值班组,仅在该时间段值班。

  1. 创建值班组。具体操作,请参见创建值班组

    image

    创建值班组后,您可以在最终排班页面查看值班表。该值班组的工作时间为每天00:00~07:00,即只在该时间段内,该值班组才会接收到告警通知。

    image

  2. 在行动策略中选中该值班组。具体操作,请参见创建行动策略

    说明

    因为在值班组中已设定了时间段,因此在行动策略中需设置发送时段任意,即由值班组控制告警通知发送时间段。

    image