首页 > 其他分享 >教你一招,告警恢复时如何拿到恢复时的值?

教你一招,告警恢复时如何拿到恢复时的值?

时间:2024-06-12 15:43:42浏览次数:19  
标签:end recovery 恢复 AnnotationsJSON promql 一招 告警

Prometheus 生态的原生做法,由于阈值是放在 promql 中的,恢复时的消息中难以拿到恢复时的值,夜莺 v7.0.0.beta10 版本开始,提供了一种较为简单的内置方式,解决这个问题。下面我们就来看一下如何实现这个能力。

升级方法

从 v6 版本开始,程序自动创建表结构,所以 v6、v7 的各个小版本之间升级,相对容易,整体逻辑是:

  • 1.备份,包括数据库、二进制、配置文件、integrations目录,以防万一
  • 2.下载新版本解压,修改配置文件中的数据库连接地址、redis连接地址、时序库连接地址等个性化信息
  • 3.停掉老版本,启动新版本(建议新老版本使用不同的安装目录,都保留不删,建个软链指向当前使用的版本)

拿到恢复时的值的原理

夜莺的告警逻辑是拿着规则中的 promql 去周期性查询,如果查不到数据就认为是正常的,如果查到了数据,就认为有触发了阈值的异常数据,进而生成告警事件。从这里逻辑可以看出,恢复的时候,promql 查不到数据,所以也就难以拿到恢复的时候的值了。

有两个办法可以解决:

  • 不要把阈值放到 promql 中了,promql 查询原始数据,然后在告警引擎里边判断是否触发了阈值,而不是让时序库去判断,Flashduty 和夜莺企业版就提供了这个方式,这个方式比较容易理解,但是每次 promql 把原始数据查出来,可能会查出特别大量的数据,要小心使用
  • 在告警恢复的时候,重新发起一次 promql 查询,查询当前最新值。但是要注意,比如 10 台机器同时触发了 load1 告警,某个时刻有 2 台恢复了,查询最新值的 promql 得是准确去查询恢复的 2 台,得对应起来

开源版本的夜莺,提供的是第二种方式,下面我们来看一下如何配置。

如何配置

要配置两个地方,第一个是通知模板,我以钉钉的通知模板举例,其他的通知模板大家可以参考钉钉的:

#### {{if .IsRecovered}}<font color="#008800">

标签:end,recovery,恢复,AnnotationsJSON,promql,一招,告警
From: https://www.cnblogs.com/ulricqin/p/18244076

相关文章

  • Chrome 125版本,恢复旧版 UI 的方法
    Chrome最近更新后,前面修改旧版UI的方法已经全部失效,目前最新的方法是在属性>目标中添加--disable-features=CustomizeChromeSidePanel启动参数。1、Windows下面,右键点击Chrome的快捷方式图标,选择属性,修改“目标”成这样(注意中间有个空格):"C:\ProgramFiles\Google\Chrome......
  • 适用于 macOS 的最佳免费数据恢复软件
    升级到macOS后,它可以帮助您从HDD、SSD、存储卡、USB闪存驱动器、数码相机或其他存储介质设备中完全恢复已删除、格式化或无法访问的数据。当macOSMonterey用户寻找数据恢复解决方案时,免费数据恢复软件始终是一个不错的选择。实际上,当您发现自己误删了重要文件时,第一件......
  • 手机照片怎么恢复?10个照片恢复应用程序
      如今,安卓智能手机为您提供了一系列出色的摄像头。其中一些有四个摄像头,而另一些有两个。现在,智能手机摄像头的强大功能足以与单反相机竞争,这促使我们拍摄越来越多的照片。捕捉图片可能是一项简单的任务,但管理图片却不是。10个照片恢复应用程序在这篇文章中,我们将分享一......
  • MySQL bin-log日志恢复数据
    目录一、开启二进制日志二、检查二进制日志是否开启三、使用二进制日志备份和恢复使用二进制日志备份恢复前先创建备份:应用二进制日志:扩展用法:四、常见命令和操作五.使用 mysqlbinlog 工具查看二进制日志1.查看二进制日志的内容2.解码二进制日志并将内容保存到......
  • Zerto 10.0 U4 - 适用于本地、混合和多云环境的灾难恢复和数据保护
    Zerto10.0U4-适用于本地、混合和多云环境的灾难恢复和数据保护勒索软件防护、灾难恢复和多云移动性的统一解决方案请访问原文链接:https://sysin.org/blog/zerto-10/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org携手ZERTO提升勒索软件保护与灾难恢复水平......
  • mysql数据库恢复一例
    1)问题:用户报可能mysql库故障,诊断仪用不了2)检查:showdatabases;发现,其中对应的db01这个数据库不存在了,但其它的库还在。mysqlbinlogmysql-bin.0000141检查归档日志发现,数据库被drop了。3)处理:因做了MHA,找到了一个以前的备份,跟领导确认后,对全库备份中的db01这个单一库,进行恢......
  • 如何恢复已删除的文件(简单5 分钟方法)
    本文介绍如何使用文件恢复程序恢复已删除的文件。其中包括与恢复已删除文件相关的提示。如何恢复已删除的文件从硬盘中恢复已删除的文件并不是一件疯狂的事情,但一旦意识到文件已被删除,尝试恢复会有所帮助。被删除的文件通常直到被其他文件覆盖后才真正被删除。请按照以下......
  • 如何在 iPhone 上恢复已删除的短信
    本文介绍如何检索已删除的短信和iMessage以及恢复丢失的消息。说明适用于iOS17及更高版本。如何在iOS17及更高版本中恢复文本恢复已删除短信的最简单方法是使用iOS17。从删除短信到恢复它有30到40天的时间。在“信息”的对话屏幕中,选择“过滤器”。如果您没......
  • 2024 年最全的 21 款数据恢复工具软件汇总
    使用其中任何一款免费数据恢复工具,您都可以找回那些您认为已经永远消失的文件。我根据这些程序对我而言的易用性和它们提供的功能对这些程序进行了排名。这些应用程序从您的硬盘、USB驱动器、媒体卡等恢复文档、视频、图像、音乐等。我建议每个计算机所有者都安装其中一个程......
  • 从 Android 恢复已删除的备份录
    本文介绍了几种在Android上恢复丢失和删除的短信的方法。这些方法都不能保证一定成功,但您可能能够恢复一些短信或其中存储的文件。首先要尝试什么首先,尝试保留数据。如果你刚刚删除了信息,请立即将手机置于飞行模式,方法是按住电源按钮并在出现的菜单中选择飞行模式。......