Prometheus查询某个时间间隔内的总体平均

Vai*_*pal 5 prometheus promql

如何找到一段时间内指标的总体平均值?

平均(指标)=总体平均值,

avg_over_time(metrics [interval])=每个标签的平均值

avg(avg_over_time(metric [scrape interval])) 不会与(数据不连续且分母值不同时)avg(metric) !!!!

在给定情况下,找到一段时间内总体平均值的可能方法是什么。

例如:立即找到平均响应时间,并找到过去一小时内触发的所有请求的平均响应时间。

数字将有助于通知有关最新升级的性能问题。

bri*_*zil 9

您需要手动计算平均值:

    sum(sum_over_time(metric[interval]))
/
    sum(count_over_time(metric[interval]))
Run Code Online (Sandbox Code Playgroud)

请注意,这是针对量规中的数据的,您需要从计数器或汇总中获取不同数据的方法。

  • 作为总结,它是“sum(rate(a_sum[interval])) / sum(rate(a_count[interval]))”。请参阅 https://www.robustperception.io/common-query-patterns-in-promql (8认同)