如何基于一个标签值进行聚合,但保留其他标签值?

How to aggregate based on one label value, but preserve the other label values?

我想取基于一个标签的指标的最小值,但保留其他标签以便稍后提取它们。

假设我有这些指标:

Metric{label1="1",label2="2"}  0
Metric{label1="1",label2="3"}  1
Metric{label1="2",label2="2"}  10
Metric{label1="2",label2="3"}  100

如果我这样做

min(Metric)by(label1) 

我得到正确的结果:

{label1="1"} 0
{label1="2"}  10

但是我丢失了 label2,稍后我想提取它。

有没有办法通过 label1 进行最小化,同时在结果中保留 label2?

我希望聚合的输出是:

Metric{label1="1",label2="2"}  0
Metric{label1="2",label2="2"}  10

我想你想要bottomk by(label1)(1, Metric)