You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何连接标签不同的两个指标并保留全部三个标签?

Prometheus 指标关联查询(保留全部标签)

首先纠正你指标语法的小错误:第二个指标的括号应该是大括号,正确格式是:

metric1{ValueA=1, ValueB=2}
metrics2{ValueB=2, ValueC=3}

要关联这两个指标并保留全部3个标签,有两种常用的PromQL写法:

方法一:使用 group_left/group_right(推荐,支持一对多关联)

如果两个指标通过ValueB标签匹配,想要合并所有标签,可以用以下语句:

metric1 * on(ValueB) group_left(ValueC) metrics2
  • on(ValueB) 指定以ValueB作为关联匹配的标签
  • group_left(ValueC) 表示保留左侧metric1的所有标签(ValueA、ValueB),同时添加右侧metrics2的ValueC标签

反过来,也可以用group_right实现同样效果:

metrics2 * on(ValueB) group_right(ValueA) metric1

方法二:使用 join 函数(仅支持一对一关联)

如果确定两个指标中ValueB是一对一匹配的,也可以用join函数:

join(ValueB, metric1, metrics2)

这个函数会直接合并ValueB相同的样本,自动保留所有标签,但如果存在一个ValueB对应多个样本的情况,查询会报错,这时候还是用第一种方法更稳妥。

内容的提问来源于stack exchange,提问作者Joe Devilla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 23:55:06