Prometheus 速率函数输出为整数
Posted
技术标签:
【中文标题】Prometheus 速率函数输出为整数【英文标题】:Prometheus rate function output to whole number 【发布时间】:2021-07-08 23:49:32 【问题描述】:有没有办法将Prometheus中rate
函数的输出转换为整数?
我正在尝试获取指定时间范围内 pod 重新启动的总数,尽管此查询会产生输出,但我得到的结果是小数,这不是我需要的。
rate(kube_pod_container_status_restarts_totalnamespace=~"jenkins"[10h]) * 60 * 5 > 0
我得到的是0.21761280931586605
,但我宁愿得到一个整数。
我只是不确定要使用什么功能。
【问题讨论】:
【参考方案1】:您可能不想使用 rate。 我猜你正在寻找增加,它将计算在一段时间内发生了多少重启
increase(kube_pod_container_status_restarts_totalnamespace=~"jenkins"[10h])
【讨论】:
【参考方案2】:您可以使用以下函数对十进制数进行四舍五入:
round = 四舍五入到最接近的整数。 ceil = 向上舍入到最接近的整数。 floor = 向下舍入到最接近的整数。在 Prometheus 文档here 中查看有关“round”函数的更多详细信息。
在您的情况下,您使用的是“速率”,因此您获得每秒重新启动的次数 * 60 * 5。这与每 5 分钟的重新启动次数相同。
但是,如果你想计算重启次数(而不是计算重启率),也许你应该使用“增加”函数。
在 Prometheus 文档here 中查看有关“增加”功能的更多详细信息。
【讨论】:
以上是关于Prometheus 速率函数输出为整数的主要内容,如果未能解决你的问题,请参考以下文章