我在普罗米修斯有一个直方图,在格拉法纳,我试图得到一个标签的计数分布图表,随着时间的推移百分比。我正在尝试类似的东西
sum(rate(histogram_count{label1="value1"}[5m])) by (label2)
/
sum(rate(histogram_count{label1="value1"}[5m]))
但它没有返回任何值。难道我做错了什么?我只想要label2的每个值的总和除以计数的总和。
问题是两侧的标签不匹配。您可以使用group_left
进行多对一匹配,并使用ignoring
忽略不匹配的标签:
sum by (label2)(rate(histogram_count{label1="value1"}[5m]))
/ group_left ignoring (label2)
sum(rate(histogram_count{label1="value1"}[5m]))
有关更多信息,请参阅https://www.robustperception.io/using-group_left-to-calculate-label-proportions