diff options
Diffstat (limited to 'metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/DimensionId.java')
-rw-r--r-- | metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/DimensionId.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/DimensionId.java b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/DimensionId.java index a6b09ddefd8..43cc8fda3c9 100644 --- a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/DimensionId.java +++ b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/DimensionId.java @@ -2,6 +2,7 @@ package ai.vespa.metricsproxy.metric.model; import com.yahoo.concurrent.CopyOnWriteHashMap; +import io.prometheus.client.Collector; import java.util.Map; import java.util.Objects; @@ -13,12 +14,18 @@ public final class DimensionId { private static final Map<String, DimensionId> dictionary = new CopyOnWriteHashMap<>(); public final String id; - private DimensionId(String id) { this.id = id; } + private final String idForPrometheus; + private DimensionId(String id) { + this.id = id; + idForPrometheus = Collector.sanitizeMetricName(id); + } public static DimensionId toDimensionId(String id) { return dictionary.computeIfAbsent(id, key -> new DimensionId(key)); } + public String getIdForPrometheus() { return idForPrometheus; } + @Override public boolean equals(Object o) { if (this == o) return true; |