Prometheus 黑盒探测有用的指标
Posted
技术标签:
【中文标题】Prometheus 黑盒探测有用的指标【英文标题】:Prometheus blackbox probe helpful metrics 【发布时间】:2021-07-02 08:45:24 【问题描述】:我有大约 1000 个使用 HTTP 探测的目标。
job="http_2xx", env="prod", instance="x.x.x.x"
job="http_2xx", env="test", instance="y.y.y.y"
job="http_2xx", env="dev", instance="z.z.z.z"
我想知道目标:
-
过去 10 分钟内 env 的故障率。
过去 10 分钟内 env 的失败率增加。
很好奇以下内容的作用:
sum(increase(probe_successjob="http_2xx"[10m]))
rate(probe_successjob="http_2xx", env="prod"[5m]) * 100
我所达到的最接近的是在 10 分钟内通过 env 找到操作:
avg(avg_over_time(probe_successjob="http_2xx", env="prod"[10m]) * 100)
【问题讨论】:
【参考方案1】:在过去 10 分钟内按环境划分的失败率。最简单的方法是:
sum(rate(probe_successjob="http_2xx"[10m]) * 100) by (env)
这将返回成功探测的百分比,您可以反向添加*(-1) +100
计算超过 10m 的速率和增加超过 10m 的速率似乎是多余的,在上述查询中添加 increase
函数对我来说不起作用。您可以根据需要将 rate 函数替换为 increase
。
第一个查询非常接近,它将计算 10m 周期内成功探测的增加。您可以通过添加== 0
并通过“env”变量求和来显示失败探测的增加
sum(increase(probe_successjob="http_2xx" == 0 [10m])) by (env)
您的第二个查询将返回 prod 环境超过 5m 的成功请求的百分比
【讨论】:
以上是关于Prometheus 黑盒探测有用的指标的主要内容,如果未能解决你的问题,请参考以下文章
Prometheus 的黑盒导出器中的 3 个 ICMP 阶段是啥意思?