Github user zentol commented on a diff in the pull request: https://github.com/apache/flink/pull/2220#discussion_r70097230 --- Diff: flink-core/src/main/java/org/apache/flink/metrics/reporter/AbstractReporter.java --- @@ -84,4 +84,24 @@ public void notifyOfRemovedMetric(Metric metric, String metricName, AbstractMetr protected String replaceInvalidChars(String metricName) { return metricName; } + + /** + * Method which constructs the fully qualified metric name from the metric group and the metric + * name. + * + * @param metricName Name of the metric + * @param group Associated metric group + * @return Fully qualified metric name + */ + private String constructMetricName(String metricName, AbstractMetricGroup group) { + StringBuilder builder = new StringBuilder(); + + for (String componentName : group.getScopeComponents()) { + builder.append(replaceInvalidChars(componentName)).append("."); --- End diff -- this is a bit inefficient. The output of this loop is identical for all metrics on that group, yet is computed for every single metric. Instead you could modify the getScopeString() method to accept a charFilter argument that is passed into ScopeFormat.concat().
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---