You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by yi...@apache.org on 2022/12/29 00:51:21 UTC

[doris] branch master updated: [fix](metric) fix prometheus metric format error for doris_fe_query_latency_ms (#15447)

This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 1b1083eb52 [fix](metric) fix prometheus metric format error for doris_fe_query_latency_ms (#15447)
1b1083eb52 is described below

commit 1b1083eb5213ccb117c245b39b0a96eb22c3a3db
Author: caiconghui <55...@users.noreply.github.com>
AuthorDate: Thu Dec 29 08:51:15 2022 +0800

    [fix](metric) fix prometheus metric format error for doris_fe_query_latency_ms (#15447)
    
    Co-authored-by: caiconghui1 <ca...@jd.com>
---
 .../org/apache/doris/metric/PrometheusMetricVisitor.java   | 14 +++++++-------
 .../src/test/java/org/apache/doris/metric/MetricsTest.java |  6 +++++-
 2 files changed, 12 insertions(+), 8 deletions(-)

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 48b7132026..60787f3f2b 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
@@ -190,20 +190,20 @@ public class PrometheusMetricVisitor extends MetricVisitor {
             }
         }
         final String fullName = prefix + String.join("_", names);
-        final String fullTag = String.join(" ", tags);
+        final String fullTag = String.join(",", tags);
         sb.append(HELP).append(fullName).append(" ").append("\n");
         sb.append(TYPE).append(fullName).append(" ").append("summary\n");
-
+        String delimiter = tags.isEmpty() ? "" : ",";
         Snapshot snapshot = histogram.getSnapshot();
-        sb.append(fullName).append("{quantile=\"0.75\" ").append(fullTag).append("} ")
+        sb.append(fullName).append("{quantile=\"0.75\"").append(delimiter).append(fullTag).append("} ")
             .append(snapshot.get75thPercentile()).append("\n");
-        sb.append(fullName).append("{quantile=\"0.95\" ").append(fullTag).append("} ")
+        sb.append(fullName).append("{quantile=\"0.95\"").append(delimiter).append(fullTag).append("} ")
             .append(snapshot.get95thPercentile()).append("\n");
-        sb.append(fullName).append("{quantile=\"0.98\" ").append(fullTag).append("} ")
+        sb.append(fullName).append("{quantile=\"0.98\"").append(delimiter).append(fullTag).append("} ")
             .append(snapshot.get98thPercentile()).append("\n");
-        sb.append(fullName).append("{quantile=\"0.99\" ").append(fullTag).append("} ")
+        sb.append(fullName).append("{quantile=\"0.99\"").append(delimiter).append(fullTag).append("} ")
             .append(snapshot.get99thPercentile()).append("\n");
-        sb.append(fullName).append("{quantile=\"0.999\" ").append(fullTag).append("} ")
+        sb.append(fullName).append("{quantile=\"0.999\"").append(delimiter).append(fullTag).append("} ")
             .append(snapshot.get999thPercentile()).append("\n");
         sb.append(fullName).append("_sum {").append(fullTag).append("} ")
             .append(histogram.getCount() * snapshot.getMean()).append("\n");
diff --git a/fe/fe-core/src/test/java/org/apache/doris/metric/MetricsTest.java b/fe/fe-core/src/test/java/org/apache/doris/metric/MetricsTest.java
index b4f0e73ec5..0446495025 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/metric/MetricsTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/metric/MetricsTest.java
@@ -66,6 +66,10 @@ public class MetricsTest {
         for (Map.Entry<String, Histogram> entry : histograms.entrySet()) {
             visitor.visitHistogram(sb, MetricVisitor.FE_PREFIX, entry.getKey(), entry.getValue());
         }
-        Assert.assertTrue(sb.toString().contains("# TYPE doris_fe_query_latency_ms summary"));
+        String metricResult = sb.toString();
+        Assert.assertTrue(metricResult.contains("# TYPE doris_fe_query_latency_ms summary"));
+        Assert.assertTrue(metricResult.contains("doris_fe_query_latency_ms{quantile=\"0.999\"} 0.0"));
+        Assert.assertTrue(metricResult.contains("doris_fe_query_latency_ms{quantile=\"0.999\",db=\"test_db\"} 10.0"));
+
     }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org