sum of rate function in prometheus

三世轮回 提交于 2020-12-27 07:09:37

问题


Given the following prometheus time series called requests :

the vector query requests[3 seconds] is :

and the rate of the vector query requests[3 seconds], rate(requests[3 sec]) (computed by the shown formula) is :

My question is : what is sum(rate(requests[3 sec])) evaluated at seconds 5, 4 and 3 respectively is it 16.5, 6.5 and 1. Any idea?


回答1:


You are misunderstanding the purpose of sum. It is not performing a sum over time but over the dimensions for your metric.

In your example, assuming there are multiple requests metrics (with a dimension page by exemple), rate(requests[3 sec]) will give you (at some point in time):

{page="A"}  12.4
{page="B"}  1.5
{page="C"}  0 .... (and so on for each metrics requests with different label set)

The sum function will sum the values of the different rates; and sum(ate(requests[3 sec])) will give you only one value:

{}  42.13 <-- the sum of all rate(requests[3s]) values

BONUS: In the case you metric have multiple dimensions (represented by multiple labels in your metric) you can tell sum() to operate on a subset of them: sum(ate(requests[3 sec])) ON(foo)



来源:https://stackoverflow.com/questions/65003764/sum-of-rate-function-in-prometheus

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!