如何从 Prometheus Query 中排除多个标签?

Posted

技术标签:

【中文标题】如何从 Prometheus Query 中排除多个标签?【英文标题】:How to exclude multiple labels from Prometheus Query? 【发布时间】:2021-10-11 08:33:00 【问题描述】:

我想从我的查询中排除多个应用组...不知道该怎么做..我的想法是这样的

count(master_build_stateapp_group~! "oss-data-repair", "pts-plan-tech-solution", kubernets_namespace = "etc" ==0) 

我不想包含这两个 app_group,但不确定如何在 PromQL 中实现。您会添加 () 或 [],但它会引发错误。让我知道是否有人可以提供帮助!

谢谢

【问题讨论】:

【参考方案1】:

您可以使用 != comparison binary operator 来执行此操作。只需在你的 promQL 上写两次。

count(
  master_build_state
    app_group!="oss-data-repair", 
    app_group!="pts-plan-tech-solution",
    kubernets_namespace="etc" 
== 0) 

【讨论】:

【参考方案2】:
count(master_build_stateapp_group ~! "(oss-data-repair|pts-plan-tech-solution)", kubernets_namespace="etc" ==0)

【讨论】:

以上是关于如何从 Prometheus Query 中排除多个标签?的主要内容,如果未能解决你的问题,请参考以下文章

从 WP_Query 中排除特定条款

猫鼬如何从填充中排除_id

如何从sequelize中的实例中排除关联属于多?

从类别存档中排除子类别

Prometheus 查询 - 排除目的地

从普罗米修斯抓取中排除 Kubernetes 命名空间