How can I group labels in a Prometheus query?

前端 未结 3 622
梦毁少年i
梦毁少年i 2021-02-18 13:16

If I have a metric with the following labels:

my_metric{group=\"group a\"}  100
my_metric{group=\"group b\"}  100
my_metric{group=\"group c\"}  100
my_metric{gro         


        
3条回答
  •  隐瞒了意图╮
    2021-02-18 14:02

    Yes, you can you use label replace to group all the misc together:

    sum by (new_group) (
      label_replace(
        label_replace(my_metric, "new_group", "$1", "group", ".+"),
        "new_group", "misc", "group", "misc group.+"
      )
    )
    

    The inner label_replace copies all values from group into new_group, the outer overwrites those which match "misc group.+" with "misc", and we then sum by the "new_group" label. The reason for using a new label is the series would no longer be unique if we just overwrote the "group" label, and the sum wouldn't work.

提交回复
热议问题