[fix](metric) fix prometheus metric format error for doris_fe_query_latency_ms (#15447)
Co-authored-by: caiconghui1 <caiconghui1@jd.com>
This commit is contained in:
@ -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");
|
||||
|
||||
@ -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"));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user