连接两个具有不同标签的指标

huangapple go评论54阅读模式
英文:

Joining 2 metrics with different labels

问题

我有2个带有以下标签的指标:

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

我想合并这2个指标,同时保留所有3个标签。

有办法编写查询来实现这个吗?

英文:

I have 2 metrics with tags below:

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

I would like to join the 2 metrics, while having all 3 labels.

Is there a way to write the query to do this?

答案1

得分: 1

你可以使用带有 on 子句和 group_left 子句的任何二进制运算符,其中包含常见标签和仅在第二个指标中存在的标签。

例如:

指标1 * on (ValueB) group_left(ValueC) 指标2

在这里 * 是任意运算符,你可以根据对结果时间序列值的期望使用任何运算符。

结果将是:

{ValueA=1, ValueB=2, ValueC=3}
英文:

You can use any binary operator with on clause containing common labels an group_left containing label present only in the second metric.

For example:

metric1 * on (ValueB) group_left(ValueC) metrics2

Here * is arbitrary operator and you can use any, depending on your expectation about values of resulting time series.

Result will be:

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

huangapple
  • 本文由 发表于 2023年4月4日 04:49:10
  • 转载请务必保留本文链接:https://go.coder-hub.com/75923658.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定