【问题标题】:Grafana prometheus outer join for multiple values with same nameGrafana prometheus 外连接具有相同名称的多个值
【发布时间】:2022-08-15 00:57:18
【问题描述】:

我正在尝试为我的 Grafana 仪表板聚合一些 promql 查询,这些查询应该为我提供一些关于我的 Kubernetes 集群中的持久卷声明的信息。问题是,这些查询没有唯一标识符(标签clusternamespacepersistentvolumeclaim 的组合)可用于此目的。

我正在处理的一个简化示例,我有 3 个单独的查询:

sum by (cluster, namespace, persistentvolumeclaim) (kubelet_volume_stats_capacity_bytes{}/1024/1024/1024)
 
sum by (cluster, namespace, persistentvolumeclaim) (kubelet_volume_stats_used_bytes{}/1024/1024/1024)

sum by (cluster, namespace, persistentvolumeclaim) (kubelet_volume_stats_used_bytes{}/kubelet_volume_stats_capacity_bytes{} * 100)

在 Grafana 中,我只能通过外连接来转换这些查询,这只能让我选择 1 个标签作为区分符。这些显然对我不起作用,因为只有当这 3 个标签是唯一的时才应该组合值。汇总这些信息的正确方法是什么?

    标签: prometheus grafana promql


    【解决方案1】:

    PromQL 提供了将多个标签连接成一个标签的功能 - label_join。例如,以下查询将 clusternamespacepersistentvolumeclaim 标签连接成一个标签 - combined_label,并在原始 pabel 值之间使用 ; 分隔符:

    label_join(..., "combined_label", ";", "cluster", "namespace", "persistentvolumeclaim")
    

    其中... 必须替换为上述查询之一。然后可以通过combined_label 在 Grafana 中加入查询结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-29
      • 2016-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多