从 Grafana 获取 Slack 警报。但它的格式不太好。有没有办法在 Grafana 的 slack 中自定义通知?我正在使用节点导出器导出指标。仪表板从https://grafana.com/grafana/dashboards/1860下载
如何自定义通知,例如:
标题:服务器上的 CPU 负载警报
实例 IP:192.xxxx 值:CPU 使用率 90% 优先级:高
随附了 slack 中的示例输出。
grafana prometheus grafana-api grafana-alerts prometheus-node-exporter
在 Grafana 8 中,可以分别减少每个系列的查询和警报:
导致这样的警报:

然而,在实际情况下,我有 4 个不同的指标需要监控:

目前,我有 4 个警报规则,每个规则有 1 个查询。有没有一种方法可以仅使用一个具有多个查询的警报规则来接收每个系列(即每个实例)的状态?
提前致谢。
我们可以针对单个统计数据创建警报吗?我没有看到用于创建警报的“警报选项卡”。您能否建议我一种比较来自 2 个数据源的两个 singlestat 的方法。
我想在 Grafana 中为我的 Kubernetes 集群创建警报。我已经在 k8s 集群中配置了 Prometheus、节点导出器、Kube-Metrics、警报管理器。我想在无法调度或失败的 Pod 上设置警报。
嗨,我想在grafana中创建一个简单的警报,以检查最近5分钟是否没有数据。
但我得到一个错误
警报查询中不支持模板变量
好吧,根据这个问题,grafana还不支持模板。我有两个问题:
模板是什么?
如何避免此错误?
当我尝试使用 Grafana 创建警报时,如果在指定时间段内没有触发任何警报的记录,我会收到此错误。即使只有一个值会触发警报,也不会出现问题。
配置和错误处理设置也是
我该如何解决这个问题,有什么想法吗?
我有一个 grafana 仪表板。我需要发送具有特定值的警报消息。
我需要一条警报消息,其中包含查询返回的值(文本、标签)。
警报配置:
正如我们所看到的,我尝试了不同的方法来获取值,但不起作用。
我收到此消息:$ 的每分钟请求数量大于 $。
但我想要这个:[TAG NAME] 每分钟的请求数量大于 [COUNT]。
如果触发警报,我试图让 grafana 自动在 ServiceNow 中提出票证。
我正在考虑使用 webhook 警报通道来实现此目的,但问题是,为了能够执行此操作,我需要发送带有一些硬编码值的自定义正文,否则 servicenow 会拒绝调用。
有没有办法自定义通过 webhook 发送的正文?
这里的想法是,我正在考虑对一个指标发出警报,该指标证实了另一个工具正在监控的指标。例如:我可能有一个服务通过提供队列来执行某些任务,当处理的任务降至零时,需要触发警报。另一项服务是监视队列大小何时没有减小,基本上是从发送方检测到请求没有被处理,然后它也需要触发。
但是,我想避免两个警报。太多的噪音会影响 MTTR。有没有办法可以避免第二个警报、加入警报或在单个警报中提及另一个警报。最后一个有点像将异常/错误包装在另一个异常/错误中,如果可能的话,也可能是我的首选方法。
是否可以根据另一个 Prometheus 是否正在射击来有条件地发出警报?
TLDR:在使用新的统一 Grafana 警报系统(和 InfluxDB)的多维规则时,我无法访问 field_keys 或别名
我遇到了新的统一 grafana 警报系统的问题。我创建了一个新的警报规则,并为我的 InfluxDB 数据库输入了基本查询refID=A。因为我想根据查询发送多个警报,所以我将标准经典条件表达式更改为reduce max(A)和数学 $B > 0表达式。
尝试执行此警报规则后,我收到错误:警报定义的评估结果格式无效:框架无法通过其标签唯一标识:具有带有标签 {} 的重复结果
我发现发生错误是因为警报系统无法区分各个信号。经过进一步检查,我还注意到查询后的结果是用InfluxDB的正常字段键显示的,但reduce和math表达式的结果只是全部命名为B(reduce)和C(math)。原始字段键(或任何别名)刚刚被删除(参见示例图片)。
当使用经典条件表达式时,字段键至少在生成的 ValueString ( ) 中可见,但即使使用reduce和mathmetric='fieldKey' , ... 时情况也不再如此,因为 ValueString 现在不再具有度量字段,而只有包含归约和数学表达式的结果 var='B' , var='C'
我真的不明白为什么在使用reduce和数学表达式时字段键被删除,以及为什么统一警报系统无法通过名称唯一地识别信号(而是需要标签来做到这一点)。到目前为止,我唯一的解决方案是GROUP BY tagkey向我的流入查询添加一条语句,以根据数据库中的现有标签创建标签。
即使如此,这种解决问题的方式是,在执行警报规则时我不再收到错误消息,但仍然存在我查询的信号的原始名称被删除的问题。由于我正在尝试创建多维警报规则(可以根据查询生成多个警报),因此我想将字段键添加到警报消息中(以便我可以直接查看哪个信号导致了警报)。
我觉得奇怪的是,在处理多维时,将我在警报规则内查询的字段键(信号名称)添加到标签/警报消息(消息模板)似乎是一项艰巨(甚至不可能)的任务警报规则。在我看来,这应该是一个基本功能。
我是否忽略了某些事情,或者有人对如何克服这个问题有提示吗?因为我看到的唯一解决方案是将 fieldKeys 添加为额外标签 (fieldKeyNames),从那时起我就可以用来GROUP BY fieldKeyNames创建一个包含 fieldKeys 的标签。然后,我将能够唯一地标识信号(不再有错误消息),并且还可以直接访问消息模板系统中的此标签(fieldKeyNames)。但如果可能的话,我想避免这样做,因为这意味着我必须重写多个(大型)数据库(并添加通常无用的标签)