Prometheus中的查询跨度持续时间

Prometheus中的查询跨度持续时间,prometheus,Prometheus,我有一个度量标准,queue\u size。我想询问,对于每一个时间点,这个量表已经非零多久了 示例数据: t queue_size desired result 0s 0 0 10s 1 0 20s 1 10 30s 2 20 40s 1 30 50s 0 0 60s 10 0 70s 5

我有一个度量标准,
queue\u size
。我想询问,对于每一个时间点,这个量表已经非零多久了

示例数据:

t    queue_size    desired result
0s   0             0
10s  1             0
20s  1             10
30s  2             20
40s  1             30
50s  0             0
60s  10            0
70s  5             10
80s  7             20
90s  0             0
下面的查询告诉我
queue\u size
是否为非零,但当它为零时,它保持不变为1

queue_size >bool 0

相反,我希望值以每秒1的速率增加,并在
queue\u size
再次为0时重置。

以下是深奥的,我建议找到一种不同的方法来执行您想要的操作

使用以下内容创建录制规则:

size_duration = 
   (queue_size == 0)
 or 
   (size_duration + 10) * (queue_size * 0 + 1)
 or 
   queue_size * 0

以下是深奥的,我建议你找到一种不同的方式来做你想做的事情

使用以下内容创建录制规则:

size_duration = 
   (queue_size == 0)
 or 
   (size_duration + 10) * (queue_size * 0 + 1)
 or 
   queue_size * 0