【问题标题】:Is it possible to create a Grafana alert for any unhealthy Prometheus Consul targets?是否可以为任何不健康的 Prometheus Consul 目标创建 Grafana 警报?
【发布时间】:2020-05-19 11:38:11
【问题描述】:

Prometheus 可以设置为收集 Consul 目标的指标。

Prometheus 的 Targets 页面显示已配置目标的概览,包括健康/总目标数的计数(在下面的示例中,有 20 个健康目标和 22 个总目标)

有什么方法可以在 Grafana 中创建警报以在并非所有目标都健康时触发?在下面的示例中,应该触发警报,因为并非所有 22 个目标都已启动。

我找到了包含目标总数的prometheus_sd_discovered_targets,但似乎没有公开健康目标数量的指标。

【问题讨论】:

  • 您可以使用 up 指标来识别一次运行状况。在成功抓取后报告每个目标。

标签: prometheus grafana consul


【解决方案1】:

正如 Raven 所指出的,up 指标可用于此目的。

来自the docs

对于每个实例抓取,Prometheus 将样本存储在以下时间序列中:

up{job="<job-name>", instance="<instance-id>"}: 1 if the instance is healthy, i.e. reachable, or 0 if the scrape failed.

up 时间序列对于实例可用性监控很有用。

up < 1 这样的 Prometheus 查询会为您提供当前不健康的目标。

您可以从中创建带有参数的 Grafana 警报

  • when last() of query (A, 5m, now) is above -1
  • If no data or all values are null set state to Ok

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    • 2017-03-21
    • 1970-01-01
    • 2019-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多