summaryrefslogtreecommitdiffstats
path: root/container-core
diff options
context:
space:
mode:
authorOla Aunronning <olaa@yahooinc.com>2024-04-17 13:54:12 +0200
committerOla Aunronning <olaa@yahooinc.com>2024-04-17 13:54:12 +0200
commit7b0f4df59ac3fa5c707d36bd5cb9c62309cc1516 (patch)
tree40e8d6ad41cc4e4a9bf4169cc7744643ff034abb /container-core
parenteac92e3402a30cc15e6277fa69bc33cba50e34cb (diff)
Replace all invalid characters with underscore
Diffstat (limited to 'container-core')
-rw-r--r--container-core/src/main/java/com/yahoo/container/jdisc/state/StateHandler.java10
-rw-r--r--container-core/src/test/java/com/yahoo/container/jdisc/state/StateHandlerTest.java2
2 files changed, 10 insertions, 2 deletions
diff --git a/container-core/src/main/java/com/yahoo/container/jdisc/state/StateHandler.java b/container-core/src/main/java/com/yahoo/container/jdisc/state/StateHandler.java
index 81ec0919441..32fd1d64129 100644
--- a/container-core/src/main/java/com/yahoo/container/jdisc/state/StateHandler.java
+++ b/container-core/src/main/java/com/yahoo/container/jdisc/state/StateHandler.java
@@ -376,7 +376,15 @@ public class StateHandler extends AbstractRequestHandler implements CapabilityRe
}
private String prometheusSanitizedName(String name) {
- return name.replaceAll("\\.", "_");
+ var stringBuilder = new StringBuilder();
+ for (char c : name.toCharArray()) {
+ if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9')) {
+ stringBuilder.append(c);
+ } else {
+ stringBuilder.append("_");
+ }
+ }
+ return stringBuilder.toString();
}
private String sanitizeIfDouble(Number num) {
diff --git a/container-core/src/test/java/com/yahoo/container/jdisc/state/StateHandlerTest.java b/container-core/src/test/java/com/yahoo/container/jdisc/state/StateHandlerTest.java
index 68a7d06e7fe..0aa2b0f41d5 100644
--- a/container-core/src/test/java/com/yahoo/container/jdisc/state/StateHandlerTest.java
+++ b/container-core/src/test/java/com/yahoo/container/jdisc/state/StateHandlerTest.java
@@ -88,7 +88,7 @@ public class StateHandlerTest extends StateHandlerTestBase {
snapshot.add(otherContext, "some.counter", 2);
snapshot.set(null, "bar", 20);
snapshot.set(null, "bar", 40);
- snapshot.set(null, "testing.infinity", Double.NEGATIVE_INFINITY);
+ snapshot.set(null, "testing-infinity", Double.NEGATIVE_INFINITY);
snapshot.set(null, "testing.nan", Double.NaN);
snapshotProvider.setSnapshot(snapshot);