如何从普罗米修斯查询结果中排除两组指标?这是我想做的sudo代码:
kubelet_volume_stats_available_bytes | remove(
kubelet_volume_stats_available_bytes{namespace="ignore-this"},
kubelet_volume_stats_available_bytes{namespace="default", pvc="cache"}
)
某些背景-我们有普罗米修斯警报,当预计4天后音量已满时会触发。在大多数情况下,这是个很好的警报。不幸的是,有两个系统都可以使用完整磁盘。一个系统在单独的命名空间中运行,这很容易被排除,另一个系统在默认的kubernetes命名空间中运行,因此,我要恰好排除一个指标(名称空间=默认值,pvc =缓存)。
完整查询:
(
kubelet_volume_stats_available_bytes{job="kubelet", namespace!="ignore-this", metrics_path="/metrics"}
/
kubelet_volume_stats_capacity_bytes{job="kubelet", namespace!="ignore-this", metrics_path="/metrics"}
) < 0.15
and
predict_linear(
kubelet_volume_stats_available_bytes{job="kubelet", namespace!="ignore-this", metrics_path="/metrics"}[6h], 4 * 24 * 3600
)
< 0
如何忽略带有这些标签namespace=default, pvc=cache
的指标?
答案 0 :(得分:0)
解决方案是使用unless
运算符:
ORIGINAL QUERY ...
unless (
kubelet_volume_stats_available_bytes(namespace!="ignore-this")
or
kubelet_volume_stats_available_bytes{namespace="default", pvc="cache"}
)