This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git
The following commit(s) were added to refs/heads/master by this push:
new 967886090a Change scapedMetricsNameCache method to support `/`
(#10349)
967886090a is described below
commit 967886090a9ac8992bac5aac56e2300c7f77225d
Author: yswdqz <[email protected]>
AuthorDate: Mon Feb 6 22:50:08 2023 +0800
Change scapedMetricsNameCache method to support `/` (#10349)
---
docs/en/changes/changes.md | 1 +
.../oap/meter/analyzer/prometheus/PrometheusMetricConverter.java | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index 50d6da3c0c..d138685d9b 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -88,6 +88,7 @@
* Remove handler scan in otel receiver, manual initialization instead
* Add aws-firehose-receiver to support collecting AWS CloudWatch
metric(OpenTelemetry format)
* Avoid Antlr dependencies' versions might be different in compile time and
runtime.
+* Now `PrometheusMetricConverter#escapedName` also support converting `/` to
`_`.
#### UI
diff --git
a/oap-server/analyzer/meter-analyzer/src/main/java/org/apache/skywalking/oap/meter/analyzer/prometheus/PrometheusMetricConverter.java
b/oap-server/analyzer/meter-analyzer/src/main/java/org/apache/skywalking/oap/meter/analyzer/prometheus/PrometheusMetricConverter.java
index c2d4bb140b..53443718fd 100644
---
a/oap-server/analyzer/meter-analyzer/src/main/java/org/apache/skywalking/oap/meter/analyzer/prometheus/PrometheusMetricConverter.java
+++
b/oap-server/analyzer/meter-analyzer/src/main/java/org/apache/skywalking/oap/meter/analyzer/prometheus/PrometheusMetricConverter.java
@@ -71,7 +71,7 @@ public class PrometheusMetricConverter {
public PrometheusMetricConverter(Rule rule, MeterSystem service) {
this.convert = new MetricConvert(rule, service);
- this.metricsNameEscapePattern = Pattern.compile("\\.");
+ this.metricsNameEscapePattern = Pattern.compile("[/.]");
}
/**
@@ -160,7 +160,7 @@ public class PrometheusMetricConverter {
return Optional.of(Tuple.of(escapedName(metric.getName()),
SampleFamilyBuilder.newBuilder(ss).build()));
}
- // Returns the escaped name of the given one, with "." replaced by "_"
+ // Returns the escaped name of the given one, with "." and "/" replaced by
"_"
protected String escapedName(final String name) {
try {
return escapedMetricsNameCache.get(name);