This is an automated email from the ASF dual-hosted git repository. morningman pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-doris.git
The following commit(s) were added to refs/heads/master by this push: new 10f410f [Improvement] Imporve metrics text format for FE (#6382) (#6383) 10f410f is described below commit 10f410f1c3d7d98d016ac2e7206d8fe4e2594d84 Author: dixingxing <dixingx...@yeah.net> AuthorDate: Wed Aug 11 10:26:19 2021 +0800 [Improvement] Imporve metrics text format for FE (#6382) (#6383) Fix #6382 --- .../main/java/org/apache/doris/metric/DorisMetricRegistry.java | 5 ++++- .../src/main/java/org/apache/doris/metric/MetricRepo.java | 1 + .../java/org/apache/doris/metric/PrometheusMetricVisitor.java | 10 ++++++++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/metric/DorisMetricRegistry.java b/fe/fe-core/src/main/java/org/apache/doris/metric/DorisMetricRegistry.java index 6867849..a0940da 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/metric/DorisMetricRegistry.java +++ b/fe/fe-core/src/main/java/org/apache/doris/metric/DorisMetricRegistry.java @@ -19,12 +19,15 @@ package org.apache.doris.metric; import com.google.common.collect.Lists; +import java.util.Collection; +import java.util.Comparator; import java.util.List; +import java.util.PriorityQueue; import java.util.stream.Collectors; public class DorisMetricRegistry { - private List<Metric> paloMetrics = Lists.newArrayList(); + private Collection<Metric> paloMetrics = new PriorityQueue<>(Comparator.comparing(Metric::getName)); public DorisMetricRegistry() { diff --git a/fe/fe-core/src/main/java/org/apache/doris/metric/MetricRepo.java b/fe/fe-core/src/main/java/org/apache/doris/metric/MetricRepo.java index 4d9b072..50a50d0 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/metric/MetricRepo.java +++ b/fe/fe-core/src/main/java/org/apache/doris/metric/MetricRepo.java @@ -17,6 +17,7 @@ package org.apache.doris.metric; + import org.apache.doris.alter.Alter; import org.apache.doris.alter.AlterJob.JobType; import org.apache.doris.catalog.Catalog; diff --git a/fe/fe-core/src/main/java/org/apache/doris/metric/PrometheusMetricVisitor.java b/fe/fe-core/src/main/java/org/apache/doris/metric/PrometheusMetricVisitor.java index c692ebc..7c27540 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/metric/PrometheusMetricVisitor.java +++ b/fe/fe-core/src/main/java/org/apache/doris/metric/PrometheusMetricVisitor.java @@ -28,8 +28,10 @@ import com.codahale.metrics.Histogram; import com.codahale.metrics.Snapshot; import com.google.common.base.Joiner; +import java.util.HashSet; import java.util.Iterator; import java.util.List; +import java.util.Set; import java.util.stream.Collectors; /* @@ -54,6 +56,7 @@ public class PrometheusMetricVisitor extends MetricVisitor { private int ordinal = 0; private int metricNumber = 0; + private Set<String> metricNames = new HashSet(); public PrometheusMetricVisitor(String prefix) { super(prefix); @@ -147,8 +150,11 @@ public class PrometheusMetricVisitor extends MetricVisitor { public void visit(StringBuilder sb, @SuppressWarnings("rawtypes") Metric metric) { // title final String fullName = prefix + "_" + metric.getName(); - sb.append(HELP).append(fullName).append(" ").append(metric.getDescription()).append("\n"); - sb.append(TYPE).append(fullName).append(" ").append(metric.getType().name().toLowerCase()).append("\n"); + if (!metricNames.contains(fullName)) { + sb.append(HELP).append(fullName).append(" ").append(metric.getDescription()).append("\n"); + sb.append(TYPE).append(fullName).append(" ").append(metric.getType().name().toLowerCase()).append("\n"); + metricNames.add(fullName); + } sb.append(fullName); // name --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org