【问题标题】:PromQL sum by label over time随着时间的推移按标签的 PromQL 总和
【发布时间】:2022-12-22 16:18:22
【问题描述】:

我正在尝试总结一个随时间推移的计数器指标,并按应用的标签进行分组。我试过这个

sum  by  (searchTerm)  (bot_guides_failed_total)

但我想以这样的表格形式出现:

搜索词 1 : 5

搜索项 2:1 ETC..

我是 PromQL 的新手,所以如果您需要我提供更多信息以帮助我解决这个问题,请告诉我。

谢谢!

【问题讨论】:

    标签: prometheus promql


    【解决方案1】:

    您需要使用一个函数来提取特定时间窗口内的搜索次数。例如:

    sum  by  (increase(searchTerm[5m]))  (bot_guides_failed_total)
    

    这将为您提供在 5 分钟时间窗口内由 bot_guides_failed_total 分组的 searchTerm 的数量。

    【讨论】:

      【解决方案2】:

      以下 PromQL 查询应返回 bot_guides_failed_total 时间序列在过去一小时内的增长(请参阅方括号中的 1h)按 searchTerm 标签分组:

      sum(increase(bot_guides_failed_total[1h])) by (searchTerm)
      

      如果此查询用于在 Grafana 中构建图表,则图表上的每个点都将包含 bot_guides_failed_total 指标在该点结束的一小时间隔内的增加。

      请注意,Prometheus 中的 increase() 函数在应用于缓慢变化的计数器时可能会返回意外结果。这是因为外推 - 有关详细信息,请参阅this issue。如果您需要 increase() 函数的预期结果,请改用 VictoriaMetrics - 这是我正在研究的类似 Prometheus 的监控系统。

      【讨论】:

        猜你喜欢
        • 2012-10-06
        • 1970-01-01
        • 2019-02-12
        • 2011-10-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多