如何在Prometheus中忽略空数据系列

问题描述 投票:3回答:1

对所有数据系列计算最大分位数对我来说是个问题:

查询

http_response_time{job=~"^(x|y)$", quantile="0.95",...}

结果

http_response_time{job="x",...} 0.26
http_response_time{job="y",...} NaN

这是我尝试计算最大值的方式:

avg(http_response_time{job=~"^(x|y)$",...})

现在结果将为“ NaN”。如何忽略“ NaN”结果(来自结果部分)?

UPDATE 0

该指标是一个自制的摘要指标。

UPDATE 1

使用prometheus 1.8版。

max prometheus quantile
1个回答
6
投票

我没有用NaN尝试过这个,但是您可以简单地使用二进制operators来过滤值。由于NaN在数学上不等于NaN,因此您可以尝试使用此技巧(因为响应时间应始终为正):

avg(http_response_time{job=~"^(x|y)$",...} >= 0)
© www.soinside.com 2019 - 2024. All rights reserved.