首页 > 解决方案 > 如何映射(连接)两个指标的标签

问题描述

我有两个指标:

 m1: ifAdminStatus{ifDescr="GigabitEthernet0/25",instance="192.168.1.1",job="snmp"}  0

m2: ifAlias{ifAlias="Link 2",ifDescr="GigabitEthernet0/25",instance="192.168.1.1",job="snmp"} 1

我需要在 ifDescr 标签上映射/分组这些指标,结果必须包含来自 m1 和 m2 的所有标签以及值 m1.value*m2.value。结果:

 {ifAlias="Link 2",i-fDescr="GigabitEthernet0/25",instance="192.168.1.1",job="snmp"} 0

我试试

ifAlias{ifAlias="Link 2",ifDescr="GigabitEthernet0/25",instance="192.168.1.1",job="snmp"} * on (ifAlias) group_left(ifDescr) ifAdminStatus{ifDescr="GigabitEthernet0/25",instance="192.168.1.1",job="snmp"} 

但结果是空的(请帮帮我)

标签: prometheuspromql

解决方案


解决了!!心想它可能会派上用场。

m1 * on (ifDescr) group_left(ifAlias) m2

或者

 ifAdminStatus{ifDescr="GigabitEthernet0/25",instance="192.168.1.1",job="snmp"} * on (ifDescr) group_left(ifAlias) ifAlias{ifAlias="Link 2",ifDescr="GigabitEthernet0/25",instance="192.168.1.1",job="snmp"} 

推荐阅读