[ https://issues.apache.org/jira/browse/FLINK-32649?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
chenyuzhi updated FLINK-32649: ------------------------------ Component/s: Runtime / Metrics > Mismatch label and value for prometheus reporter > ------------------------------------------------ > > Key: FLINK-32649 > URL: https://issues.apache.org/jira/browse/FLINK-32649 > Project: Flink > Issue Type: Bug > Components: Runtime / Metrics > Affects Versions: 1.17.0 > Reporter: chenyuzhi > Priority: Major > > When runing unit test > 'org.apache.flink.metrics.prometheus.PrometheusReporterTest#metricIsRemovedWhileOtherMetricsWithSameNameExist', > it got wrong response string as > {code:java} > # HELP flink_logical_scope_metric metric (scope: logical_scope) > # TYPE flink_logical_scope_metric gauge > flink_logical_scope_metric{label1="some_value",label2="value1",} 0.0 {code} > > in my opinion, the expected right response is : > > {code:java} > # HELP flink_logical_scope_metric metric (scope: logical_scope) > # TYPE flink_logical_scope_metric gauge > flink_logical_scope_metric{label1="value1",label2="some_value",} 0.0 > {code} > > > The reason may be we create two metric with same name, but two different > order label-keys in the variables of MetricGroup. And we don't sort the > key&value in variables within methond > 'org.apache.flink.metrics.prometheus.AbstractPrometheusReporter#notifyOfAddedMetric'. > > Maybe it won't happen in production env now, cause we alway use the same > 'MetricGroup' instance as the input param of method 'notifyOfAddedMetric'. > Howerver it's important to ensure the robustness of method with unpected > input param. -- This message was sent by Atlassian Jira (v8.20.10#820010)