You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2021/08/11 02:26:32 UTC

[incubator-doris] branch master updated: [Improvement] Imporve metrics text format for FE (#6382) (#6383)

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 <di...@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-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org