首页 > 解决方案 > 如何在 PromQL 中将零值(向量(0)与度量值合并

问题描述

我正在使用flexlm_exporter将我的许可证使用情况导出到 Prometheus 并从 Prometheus 导出到自定义服务(不是 Graphana)。

如您所知,Prometheus 隐藏了缺失值。

但是,我需要指标值中的那些缺失值,因此我添加到我的舞会查询中or vector(0)

例如:

flexlm_feature_used_users{app="vendor_lic-server01",name="Temp"} or vector(0)

此查询添加一个具有零值的空指标。

我的问题是是否有办法将零向量与每个度量值合并?

编辑:

我需要分组,至少对于用户和名称标签,所以 vector(0) 可能不是这里的最佳选择? 具有缺失值和零向量的特定用户的示例查询

我在不同的 StackOverflow 线程中尝试了多种解决方案,但是没有任何效果。

请协助。

标签: monitoringprometheuspromql

解决方案


如果您使用Absent标签将值从 1 转换为零,这将有所帮助,请使用clamp_max

( Metrics{label=“a”} OR clamp_max(absent(notExists{label=“a”}),0))
+
( Metrics2{label=“a”} OR clamp_max(absent(notExists{label=“a”}),0)

Vector(0)没有标签。

clamp_max(Absent(notExists{label=“a”},0)为 0,带标签。


推荐阅读