限制 SLS告警通知时段的几种常见方法

news2024/11/28 19:31:01

前言

在对系统进行监控告警的过程中,有时候并非在任何时候都要接收告警通知,例如以下场景:

  • 计划内变更触发的已知告警可以无需通知
  • 非工作时间不接收不严重的告警
  • 夜里不接收电话告警
  • 等等

本文会介绍几种常见的限制告警通知时段的方法,以及它们各自所适用的场景。

方案比较

各种方案的比较参考如下,在实际配置告警过程中,可以按照实际需求选择合适的方案。

Cron表达式临时关闭静默策略全局日历值班组
作用阶段影响告警评估,从而影响通知影响告警评估,从而影响通知仅影响通知仅影响通知仅影响通知
支持的通知渠道不限制不限制不限制不限制支持所有与人相关的通知渠道,例如短信、电话、邮件,以及钉钉等可以@用户的场景。
是否可以复用无法复用,需要针对每个告警规则单独配置无法复用,需要针对每个告警规则单独配置可以可以可以
是否临时设置
支持的场景较复杂简单简单较复杂复杂
配置复杂度简单简单较复杂简单较复杂

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

在配置告警规则的时候,需要设置告警规则的检查频率,例如设置为固定5分钟间隔,则梅5分钟该规则就会对数据进行一次检查评估,判断是否需要触发告警。

这里除了设置固定间隔外,还支持设置 Cron 表达式。这里使用的是标准的 Cron 表达式,最小时间粒度为分钟。一共分为5段,分别表示:分钟、小时、日、月、周。例如:

  • 0/5 * * * *表示从0分钟开始,每隔5分钟检查一次
  • 0 0/1 * * *表示从0点0分开始,每个1小时检查一次
  • 0 18 * * *表示每天18点0分检查一次
  • 0 0 1 * *表示每月1日的0点0分检查一次

除了这些基础的使用之外,还可以使用稍微复杂一些的 Cron 表达式,实现更加灵活的告警时间段限制。

  • 例如只希望白天8点到18点之间触发告警,则可以设置为 0/5 8-17 * * *,这个配置表示从 08:00 开始,到 17:59 结束,每5分钟会执行一次告警检查,其余时间则不执行。
  • 例如希望周一到周五的上午8点到12点,下午14点到18点之间,每分钟都执行一次告警,则可以配置为* 8-11,14-17 * * 1-5

关于 Cron 表达式的更多使用以及介绍,可以参考 https://crontab.guru/

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

针对某些预期内的告警(例如临时做系统变更,会有一些已知告警),我们希望它们在今后的一段时间内不再通知,那么可以通过临时关闭功能,暂时关闭某个告警。

临时关闭后,在该时间之内,告警规则就不会继续检查和触发,超过该时候之后,告警规则会恢复正常。

如果想要提起中断该作用,只需要点击“恢复”操作即可。

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

通过临时关闭告警,作用的只是某一个告警规则。如果需要针对多个告警规则都需要在接下来的一段时间内不通知,可以通过静默策略来实现。例如在某集群升级过程中,可能会有一系列的预期内告警,希望对这些告警做屏蔽。

如果这些告警使用的都是同一个告警策略,则可以在告警策略中设置静默规则,例如针对所有 test-project 这个项目产生的告警,临时屏蔽一段时间,则可以设置如下:

该配置即表示,对于 test-project 这个项目产生的告警,会在 2022年12月2日的12点到18之间进行屏蔽,不会通知。

通过日历设置工作日与工作时间

如果希望针对全局告警实现相同的通知时间配置,可以使用全局日历功能。例如在全局日历中设置工作日和工作时间:

然后就可以在行动策略中设置发送时段:

这样所有使用了该行动策略的告警都会遵守该时间段设置,只会在工作时间(根据上图的示例配置,即每周一到周五的9点到18点之间)发送告警,超出该时间范围则不会通知。

更多关于全局日历以及日期重置的使用,可以参考文档:

  • https://help.aliyun.com/document_detail/207706.html
  • https://help.aliyun.com/document_detail/209961.html

通过值班组实现灵活的值班时间

全局日历主要解决的是全局工作日、工作时间相关的配置。如果针对个别告警,需要使用不同的发送时段设置,可以考虑使用值班组来实现完全灵活且自定义的发送时段。

例如需要每天夜间(0点到7点)接收通知,则可以新建值班组,然后添加轮岗,配置参考如下:

保存后切换到“最终排班”模式查看,可以看到每天只有特定时间段是值班的,即只在这个特定时间段内才会接收到告警通知。

然后行动策略中选择该值班组即可,例如:

需要注意的是,由于值班组里已经设定了时间段,所以行动策略里的“发送时段”选择“任意”即可,这样时间段就完全由值班组控制。如果这里“发送时段”选择了其它选项,那么最终的效果是,先使用全局日历判断是否发送通知,如果需要发送通知,才会使用值班组的时间段做二次判断。

更多关于值班组的使用,可以参考文档 https://help.aliyun.com/document_detail/207705.html

参考文档

  • 告警静默机制
  • 修改全局默认日历
  • 日历重置机制
  • 轮岗与代班场景

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/85414.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IDEA技巧汇总:这30个强大的功能,总有一个你能用上!

目录查看代码历史版本调整idea的虚拟内存:idea设置成eclipse的快捷键设置提示词忽略大小写关闭代码检查设置文档注释模板显示方法分隔符设置多行tabtab过多会自动关闭快速匹配方法的大括号位置代码结尾补全模糊搜索方法预览某个类的代码查看方法在哪里被调用代码模板…

一个简单的网页制作期末作业,学生个人html静态网页制作成品代码

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

12月13日:跟着猫叔写代码,fastadmin中Api相关只是

Api权限管理 api常用返回信息实例 api获取所有方法,都在common目录下cotroller文件夹中Api.php中 /*** 需要登录的接口**/public function test2(){//$this->success(返回成功, [action > test2]);//判断当前用户是否登录//$this->success(返回成功, $t…

1. Python_Django项目之大型电商项目介绍

1.开发项目目的 联系已掌握的知识点发现新的知识点掌握开发技巧掌握项目结构增加项目经验 2.所用技术 语言:Python3(Django4)数据库:MySQLweb服务器:Nginxuwsgi开发环境:VScode、linux 3.功能介绍 商品…

动态规划——背包问题(3)

文章目录求解最佳方案数例题思路代码混合背包问题例题思路代码有依赖的背包问题例题思路代码考察思维的一些背包题目机器分配金明的预算方案货币系统能量石总结求解最佳方案数 例题 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi&#…

springboot前后端交互(小白教学)

在上次前后端交互,我们使用的是最基本的HTMLServlet的组合,比较基础,今天我们来讲一讲HtmlSpringboot框架,前后端交互实现更为简便,大大降低了我们开发人员在代码上面所花费的时间,那今天让我们一探究竟吧。…

1998-2014年工企污染数据库

1998-2014年工企污染匹配数据库 1、时间区间为:1998-2014年 2、部分指标: 工业总产值(现价)(万元)、工业用水总量(吨)、煤炭消费总量(吨)、其中:新鲜水量(吨&#xff…

是谁实现了 Pod 的多副本管理?

目录一、前言二、案例分析三、案例总结一、前言 在 K8s 中 Pod 是由 Controller 来管理的,Controller 定义了 Pod 的部署 spec,如 Pod 的副本数、运行的 Node 等。不同的业务场景 Controller 是不同的。K8s 提供了多种 Controller,如常见的 …

POCV/SOCV 、LVF

1.POCV与OCV、AOCV 为了模拟片上PVT的差异带来的影响,最早提出了OCV(On Chip Variation)给每个cell都设置一个固定的derate值,来覆盖最悲观的情况,但是随着工艺发展,设计规模增大,OCV过度的悲观…

Docker之Nacos的持久化和集群部署

目录 一、外网单节点部署 1.docker mysql:5.7的持久化存储及远程连接 1.下拉镜像 2.在宿主机中相关目录,用于挂载容器的相关数据 3.创建mysql5.7容器 4.修改mysql允许Navicat远程连接 5.创建数据库nacos_config,并进行初始化 ​编辑 2. nacos-d…

DNS解析过程以及基本原理

目录 1.什么是 DNS 2.分布式、层次数据库 A.什么是分布式? B.什么是层次? D.什么是根 DNS 服务器 E.顶级域 DNS 服务器 F.权威 DNS 服务器 3.本地 DNS 服务器 4.递归查询、迭代查询 A.图解DNS解析过程 B.解析过程当中的递归解析和迭代解析 5…

STM8开发实例-IAR开发环境搭建

IAR开发环境搭建 IAR Embedded Workbench for STM8 是一个集成开发环境,具有高度优化的 C/C++ 编译器和全面的 C-SPY 调试器。 它为 STM8A、STM8L、STM8S、STM8T、STNRG 和 STLUX 系列中的器件提供全面支持。 1、IAR下载并安装 IAR Embedded Workbench For STM8官方下载地址…

3U 轨道交通车载工业级M12 PoE交换机,防护等级IP66

支持软硬件定制服务的轨道交通工业交换机 支持双电源冗余 支持Bypass 专门为轨道交通应用设计和制造的以太网数据通信设备 根据IEC61375-2-5和IEC61375-2-3协议实现的列车级骨干以太网核心设备 支持中国铁路 产品认证 XM-5145工业交换机是专为轨道交通、船载、车载等恶劣环…

非零基础自学Golang 第2章 安装和运行Go 2.1 GOROOT和GOPATH 2.2 在Windows 下安装Go

非零基础自学Golang 文章目录非零基础自学Golang第2章 安装和运行Go2.1 GOROOT和GOPATH2.2 在Windows 下安装Go第2章 安装和运行Go Go的安装主要分为两种方式:安装包安装和源代码安装: 安装包安装:即已编译好的可直接运行的程序&#xff0c…

145.如何评价个性化推荐系统的效果-2

145.1 E值 E值表示查准率P和查全率R的加权平均值,当其中一个为0时,E值为1,其计算公式: b越大,表示查准率的权重越大。 145.2 平均正确率(Average Precision) 平均正确率表示不同查全率的点…

【Effective Objective - C】—— 读书笔记(三)

【Effective Objective - C】—— 读书笔记(三) 文章目录【Effective Objective - C】—— 读书笔记(三)15.用前缀避免命名空间冲突要点:16.提供“全能初始化方法”要点17.实现description方法debugDescription&#x…

2023年Python、Golang、Java、C++如何选择?

前言 我们都有知道,开发后台语言可选择的方向会很多,比如,Java,go,Python,C/C,PHP,NodeJs…等很多,那么他们都有什么的样的优势?如果学习一门后端语言,又该如何选择呢? …

DolphinScheduler 快速构建 Hugging Face 文本分类工作流,基于工作流的机器学习训练部署太强了!...

点亮 ⭐️ Star 照亮开源之路https://github.com/apache/dolphinscheduler01.摘要Hugging Face transformers 是一个用于构建、训练和部署最先进的NLP 模型的开源项目。本文介绍如何基于DolphinScheduler和Hugging Face transformers来构建可复用的高效文本分类的工作流&#…

第36篇 网络(六)UDP

导语 这一节讲述UDP编程的知识。UDP(UserDatagram Protocol即用户数据报协议)是一个轻量级的,不可靠的,面向数据报的无连接协议。对于UDP我们不再进行过多介绍,如果你对UDP不是很了解,而且不知道它有什么用…

web网页设计期末课程大作业——电影介绍5页HTML+CSS制作

HTML实例网页代码, 本实例适合于初学HTML的同学。该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代码的过程来实践设计。 精彩专栏推荐&#x1f4…