如何从普罗米修斯查询中过滤出匹配结果
How to filter out matching results from prometheus query
如何从prometheus查询结果中排除两组指标?这是我想要执行的操作的 sudo 代码:
kubelet_volume_stats_available_bytes | remove(
kubelet_volume_stats_available_bytes{namespace="ignore-this"},
kubelet_volume_stats_available_bytes{namespace="default", pvc="cache"}
)
一些背景 - 我们有 prometheus 警报,当预计容量将在 4 天内满时触发。在大多数情况下,这是非常警觉的。不幸的是,有两个系统可以使用完整磁盘。一个系统在单独的命名空间中 运行,排除起来很简单,另一个系统在默认的 kubernetes 命名空间中 运行,因此我想排除一个指标(namespace=default,pvc=cache) .
完整查询如下:
(
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
?
解决方案是使用 unless
运算符:
ORIGINAL QUERY ...
unless (
kubelet_volume_stats_available_bytes(namespace!="ignore-this")
or
kubelet_volume_stats_available_bytes{namespace="default", pvc="cache"}
)
如何从prometheus查询结果中排除两组指标?这是我想要执行的操作的 sudo 代码:
kubelet_volume_stats_available_bytes | remove(
kubelet_volume_stats_available_bytes{namespace="ignore-this"},
kubelet_volume_stats_available_bytes{namespace="default", pvc="cache"}
)
一些背景 - 我们有 prometheus 警报,当预计容量将在 4 天内满时触发。在大多数情况下,这是非常警觉的。不幸的是,有两个系统可以使用完整磁盘。一个系统在单独的命名空间中 运行,排除起来很简单,另一个系统在默认的 kubernetes 命名空间中 运行,因此我想排除一个指标(namespace=default,pvc=cache) .
完整查询如下:
(
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
?
解决方案是使用 unless
运算符:
ORIGINAL QUERY ...
unless (
kubelet_volume_stats_available_bytes(namespace!="ignore-this")
or
kubelet_volume_stats_available_bytes{namespace="default", pvc="cache"}
)