夜莺-Nightingale
夜莺V7
项目介绍 功能概览
部署升级 部署升级
数据接入 数据接入
告警管理 告警管理
数据查看 数据查看
功能介绍 功能介绍
数据库表结构 数据库表结构
API FAQ
夜莺V6
项目介绍 架构介绍
快速开始 快速开始
黄埔营
安装部署 安装部署
升级
采集器 采集器
使用手册 使用手册
API API
数据库表结构 数据库表结构
FAQ FAQ
开源生态
Prometheus
版权声明
第1章:天降奇兵 第1章:天降奇兵
第2章:探索PromQL 第2章:探索PromQL
第3章:Prometheus告警处理 第3章:Prometheus告警处理
第4章:Exporter详解 第4章:Exporter详解
第5章:数据与可视化 第5章:数据与可视化
第6章:集群与高可用 第6章:集群与高可用
第7章:Prometheus服务发现 第7章:Prometheus服务发现
第8章:监控Kubernetes 第8章:监控Kubernetes
第9章:Prometheus Operator 第9章:Prometheus Operator
参考资料

附加查询(商业版)

概述

事件附加查询处理器(Annotation enrich by query data)是一种告警增强的方式。在告警发生后,它能通过关联查询的方式,从数据源中查询相关信息,并附加到告警中,提供更丰富的告警数据。

  • 有查询到数据:将数据添加到告警 annotation 中
  • 未查询到数据:正常发送原告警

这种机制可以丰富告警信息,方便运维人员快速定位告警问题。

使用场景

场景一:指标告警查询 DB 数据

如果是配置的指标类的告警,可以在告警触发时,查询 DB 数据获取到更多信息。比如查询 Doris 数据源中的日志。

场景二:服务响应超时告警,查询指标数据

如果是应用层5XX告警,可以在告警触发时,查询 CPU/内存/主机负载指标,并追加到告警消息中,便于辅助定位问题。

场景三:日志告警查询指标数据

如果是配置的错误日志类告警,可以在告警触发时,查询经验指标数据获取到更多信息。比如查询 Prometheus 中可能与错误日志相关的指标

配置说明

配置步骤

1. 配置数据查询

配置界面截图

这里需要选择数据源类型,并配置查询语句进行查询。数据源可以在这里选择,也可以开启使用告警事件中的数据源。 这里选择告警事件,主要是方便配置和预览数据使用,查询语句中可以将告警事件中的信息添加为变量。

如果是 Prometheus 数据源,查询语句配置可参考:

up{instance=~"{{$labels.instance}}.*"}

如果是 DB 类数据源,要求 SQL 中添加 limit 子句,并指定数据库名。查询语句配置可参考:

SELECT * FROM test_db.ewall_event WHERE event_date > '2025-11-20 17:00:01' and event_type != '{{$labels.app}}' limit 2;

这里查询的数据,返回结果是一个数组。 强烈建议查询语句中限制返回结果数量,不然产生的告警消息过于庞大,可读性差。

2. 数据预览

配置界面截图

这里可以看到真实使用的查询语句和查询数据。

3. 数据追加

配置界面截图

数据追加的设计,主要用于将查询结果添加到告警消息中。这里需要配置追加数据的 key / value。 对于 value 配置, 我们支持使用 golang 的模板语法拼接查询结果。

典型的配置如下:

实例标签: {{ $labels.instance }}
查询结果:{{ range $item := $A }} - {{ $item.handler }} ({{ $item.code }}) {{ end }}
查询1结果:
{{ range $item := $A }} - {{ $item.job }} ({{ $item.value }}) {{ end }}

查询2结果:
{{ range $item := $B }} - {{ $item.job }} {{ toTime $item.timestamp }} ({{ $item.value }}) {{ end }}

$labels 变量引用的是告警事件中的标签,$A $B 则引用的对应的查询结果。

4. 测试

配置界面截图

测试整体配置结果。

注意事项

查询性能

  • 每次告警触发时都会执行查询,请确保查询语句性能良好
  • 避免使用复杂的聚合查询或大时间范围的查询

查询结果数量

  • 避免返回过多数据,产生可读性极差的告警消息

数据源一致

  • 若开启使用告警事件中的数据源,用户需自己保证,告警规则中使用的数据源,与查询处理器中的数据源类型匹配。例如,在告警规则页面选择了 Prometheus 数据源,那么它关联的事件处理器需要也是需要是 Prometheus 类型的数据源。

配置界面截图

快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云
OpenSource
开源版
Flashcat
Flashcat
Flashduty
Flashduty