我试图弄清楚如何将map[string]string
的键值对添加到我的prometheus.Labels结构中。
如果您有普罗米修斯的经验:我正在尝试动态添加标签及其值。
labelsMap := make(map[string]string)
labelsMap["nodepool"] = "default"
labelsMap["zone"] = "europe-west"
// here I'd like to add my key / value pairs from my map
containerLabels := prometheus.Labels{
"node": "nodename",
"container": "foo",
"qos": "bar",
}
requestedContainerCPUCoresGauge.With(containerLabels).Set(containerMetric.RequestedCPUCores)
我的问题:
如何从我的containerLabels中的给定映射labelsMap
动态添加键/值对?
答案 0 :(得分:1)
您可以在for range
上使用简单的labelsMap
循环,并添加每对,例如:
containerLabels := prometheus.Labels{}
for k, v := range labelsMap {
containerLabels[k] = v
}
或者因为prometheus.Labels
只是一个简单的地图:
type Labels map[string]string
如果以后您不想修改labelsMap
,也可以使用简单的类型conversion:
containerLabels := prometheus.Labels(labelsMap)