普罗米修斯中速率函数的总和
sum of rate function in prometheus
-
prometheus
-
prometheus-operator
-
prometheus-alertmanager
-
prometheus-node-exporter
-
prometheus-blackbox-exporter
给定以下称为 requests 的普罗米修斯时间序列:
向量查询请求[3秒]是:
和矢量查询请求的速率[3秒],rate(requests[3 sec])(由显示的公式)是:
我的问题是:在第 5、4 和 3 秒评估的 sum(rate(requests[3 sec])) 是什么分别是 16.5、6.5 和 1。知道吗?
你误解了 sum 的用途。它不是对时间进行求和,而是对指标的维度进行求和。
在您的示例中,假设有多个 requests
指标(例如维度 page
),rate(requests[3 sec])
将为您提供(在某个时间点):
{page="A"} 12.4
{page="B"} 1.5
{page="C"} 0 .... (and so on for each metrics requests with different label set)
sum
函数将对不同比率的值求和; sum(rate(requests[3 sec]))
只会给你一个值:
{} 42.13 <-- the sum of all rate(requests[3s]) values
奖励:如果您的指标有多个维度(由指标中的多个标签表示),您可以告诉 sum()
对其中的一个子集进行操作:sum(rate(requests[3 sec])) ON(foo)
prometheus
prometheus-operator
prometheus-alertmanager
prometheus-node-exporter
prometheus-blackbox-exporter
给定以下称为 requests 的普罗米修斯时间序列:
向量查询请求[3秒]是:
和矢量查询请求的速率[3秒],rate(requests[3 sec])(由显示的公式)是:
我的问题是:在第 5、4 和 3 秒评估的 sum(rate(requests[3 sec])) 是什么分别是 16.5、6.5 和 1。知道吗?
你误解了 sum 的用途。它不是对时间进行求和,而是对指标的维度进行求和。
在您的示例中,假设有多个 requests
指标(例如维度 page
),rate(requests[3 sec])
将为您提供(在某个时间点):
{page="A"} 12.4
{page="B"} 1.5
{page="C"} 0 .... (and so on for each metrics requests with different label set)
sum
函数将对不同比率的值求和; sum(rate(requests[3 sec]))
只会给你一个值:
{} 42.13 <-- the sum of all rate(requests[3s]) values
奖励:如果您的指标有多个维度(由指标中的多个标签表示),您可以告诉 sum()
对其中的一个子集进行操作:sum(rate(requests[3 sec])) ON(foo)