Grafana 自我指标和跟踪警报触发器

Posted

技术标签:

【中文标题】Grafana 自我指标和跟踪警报触发器【英文标题】:Grafana self-metrics and tracking alert triggers 【发布时间】:2021-10-13 21:11:05 【问题描述】:

我正在使用 Grafana (V6.5.2) 的本机警报系统,我正在尝试找出是否有办法抓取有关 Grafana 本身的指标。

具体来说,我正在寻找一个时间序列,以显示随着时间的推移触发每个特定警报。动机是查看警报触发的趋势,以了解我们的操作是否按预期减少了警报数量。

我查看了 Grafana 公开的 /metrics 端点,发现 grafana_alerting_result_total 但这是所有警报的总和,而不是每个已定义警报的特定时间序列。

有没有办法跟踪每个特定警报的警报状态?

【问题讨论】:

【参考方案1】:

您可以将内部指标导出到 Graphite:

https://github.com/grafana/grafana/blob/v6.5.2/conf/defaults.ini#L611-L615

# Send internal Grafana metrics to graphite
[metrics.graphite]
# Enable by setting the address setting (ex localhost:2003)
address =
prefix = prod.grafana.%(instance_name)s.

因此,您将在 Graphite 中获得整体时间序列。

您需要使用 Grafana 日志来获得更精细的警报统计信息。例如。将 Grafana 日志切换为 json 格式,提高调试级别并将其插入 Elasticsearch。然后您可以按logger=alerting.engine 进行过滤,您可以更精确地绘制/分组/处理这些日志。示例日志行:

"alertId":453,"attemptID":1,"firing":true,"logger":"alerting.engine","lvl":"dbug","msg":"Job Execution completed","name":"Packet Loss alert","t":"2021-08-10T09:53:01.617388937Z","timeMs":75.277014

【讨论】:

以上是关于Grafana 自我指标和跟踪警报触发器的主要内容,如果未能解决你的问题,请参考以下文章

关于缺失系列/数据的警报

以系列值和丰富的文本格式发送警报通知。

Azure Functions“失败”指标的 Azure 警报正在触发,没有明显的故障

Cloudwatch 指标过滤器看到事件,但没有触发警报

Azure 警报仅触发一次

是否可以根据另一个警报是否触发有条件地向普罗米修斯发出警报?