【问题标题】:Prometheus rate function output to whole numberPrometheus 速率函数输出为整数
【发布时间】:2021-07-08 23:49:32
【问题描述】:

有没有办法将Prometheus中rate函数的输出转换为整数?

我正在尝试获取指定时间范围内 pod 重新启动的总数,尽管此查询会产生输出,但我得到的结果是小数,这不是我需要的。

rate(kube_pod_container_status_restarts_total{namespace=~"jenkins"}[10h]) * 60 * 5 > 0

我得到的是0.21761280931586605,但我宁愿得到一个整数。

我只是不确定要使用什么功能。

【问题讨论】:

    标签: kubernetes prometheus promql prometheus-operator


    【解决方案1】:

    您可能不想使用 rate。 我猜你正在寻找增加,它将计算在一段时间内发生了多少重启

    increase(kube_pod_container_status_restarts_total{namespace=~"jenkins"}[10h])
    

    【讨论】:

      【解决方案2】:

      您可以使用以下函数对十进制数进行四舍五入:

      • round = 四舍五入到最接近的整数。
      • ceil = 向上舍入到最接近的整数。
      • floor = 向下舍入到最接近的整数。

      在 Prometheus 文档here 中查看有关“round”函数的更多详细信息。

      在您的情况下,您使用的是“速率”,因此您获得每秒重新启动的次数 * 60 * 5。这与每 5 分钟的重新启动次数相同。

      但是,如果你想计算重启次数(而不是计算重启率),也许你应该使用“增加”函数。

      在 Prometheus 文档here 中查看有关“增加”功能的更多详细信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-19
        • 2019-06-26
        • 2012-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多