Hi Mason, The idea is that a metric is not uniquely identified by its name alone but instead by its path. The groups in which it is defined specify this path (similar to directories). That's why it is valid to specify two metrics with the same name if they reside in different groups.
I think Prometheus does not support such a tree structure and that's why the path is exposed via labels if I am not mistaken. So long story short, what you are seeing is a combination of how Flink organizes metrics and what can be reported to Prometheus. I am also pulling in Chesnay who is more familiar with this part of the code. Cheers, Till On Fri, May 28, 2021 at 7:33 PM Mason Chen <mason.c...@apple.com> wrote: > Can anyone give insight as to why Flink allows 2 metrics with the same > “name”? > > For example, > > getRuntimeContext.addGroup(“group”, “group1”).counter(“myMetricName”); > > And > > getRuntimeContext.addGroup(“other_group”, > “other_group1”).counter(“myMetricName”); > > Are totally valid. > > > It seems that it has lead to some not-so-great implementations—the > prometheus reporter and attaching the labels to the metric name, making the > name quite verbose. > > >