kubernetes 率后的PromQL总和

dba5bblo  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(1)|浏览(108)

我正在看这篇文章。它提到了以下查询和以下描述。
更有趣的是,监控错误率与请求总量的关系,这样你就可以得到Kubernetes API服务器请求的错误大小。

sum(rate(apiserver_request_total{job="kubernetes-apiservers",code=~"[45].."}[5m]))*100/sum(rate(apiserver_request_total{job="kubernetes-apiservers"}[5m]))

字符串
我不明白的是,为什么我们只能计算下面的内容?而且,在率之后应用和函数的目的是什么?我的理解是速率是每秒的平均变化,为什么要总结变化呢?我可以得到帮助,了解上述查询,这将是伟大的,有一个具体的例子。提前感谢!

count(apiserver_request_total{job="kubernetes-apiservers",code=~"[45].."})/count(apiserver_request_total{job="kubernetes-apiservers"})

kjthegm6

kjthegm61#

rate计算每秒计数器的估计增量。sumrate产生的所有时间序列求和为一。
考虑this demo。注意rate如何产生八个时间序列(与“输入”序列的数量相同),而sum-只有一个。
请注意difference between sum and sum_over_time,因为它经常是混淆的原因。
count返回内部查询中的时间序列数。它的结果随着时间的推移或多或少是恒定的。
对于上面链接的演示,count将始终返回vector(8),因为始终有8种内存模式。

相关问题