aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArne Juul <arnej@vespa.ai>2024-04-29 09:59:42 +0000
committerArne Juul <arnej@vespa.ai>2024-04-29 13:37:01 +0000
commit28727c13f683e3d907be3dbe5e2ea67c47de354a (patch)
tree1318ffa2df4fae3d8d7c032833917fc86f999374
parent8745c3ee2a5ddaf09d317b5949d1740d8d71e672 (diff)
also use metricstransform processor to rename some metricsarnej/add-metric-renames
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/admin/otel/OpenTelemetryConfigGenerator.java31
1 files changed, 28 insertions, 3 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/otel/OpenTelemetryConfigGenerator.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/otel/OpenTelemetryConfigGenerator.java
index 3f7ca7b46a7..532aac306b5 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/admin/otel/OpenTelemetryConfigGenerator.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/otel/OpenTelemetryConfigGenerator.java
@@ -11,6 +11,7 @@ import com.yahoo.config.provision.ClusterMembership;
import com.yahoo.config.provision.ClusterSpec;
import com.yahoo.config.provision.Zone;
import com.yahoo.vespa.model.Service;
+import com.yahoo.vespa.model.admin.monitoring.MetricsConsumer;
import java.io.ByteArrayOutputStream;
import java.nio.charset.StandardCharsets;
@@ -145,6 +146,28 @@ public class OpenTelemetryConfigGenerator {
g.writeFieldName("processors");
g.writeStartObject();
addResourceProcessor(g);
+ addRenameProcessor(g);
+ g.writeEndObject();
+ }
+ private void addRenameProcessor(JsonGenerator g) throws java.io.IOException {
+ g.writeFieldName("metricstransform/rename");
+ g.writeStartObject();
+ g.writeFieldName("transforms");
+ g.writeStartArray();
+ var metrics = MetricsConsumer.vespa9.metrics();
+ for (var metric : metrics.values()) {
+ if (! metric.name.equals(metric.outputName)) {
+ addRenameAction(g, metric.name, metric.outputName);
+ }
+ }
+ g.writeEndArray();
+ g.writeEndObject();
+ }
+ private void addRenameAction(JsonGenerator g, String oldName, String newName) throws java.io.IOException {
+ g.writeStartObject();
+ g.writeStringField("include", oldName);
+ g.writeStringField("action", "update");
+ g.writeStringField("new_name", newName);
g.writeEndObject();
}
private void addResourceProcessor(JsonGenerator g) throws java.io.IOException {
@@ -208,6 +231,7 @@ public class OpenTelemetryConfigGenerator {
}
g.writeFieldName("processors");
g.writeStartArray();
+ g.writeString("metricstransform/rename");
g.writeString("resource");
g.writeEndArray();
{
@@ -300,12 +324,13 @@ public class OpenTelemetryConfigGenerator {
dimvals.put("instanceType", svc.getServiceType()); // maybe "local_service_type", or remove
String cName = svc.getServicePropertyString("clustername", null);
if (cName != null) {
- // what about "clusterid" below, is it always the same?
- dimvals.put("clustername", cName);
+ // overridden by cluster membership below (if available)
+ dimvals.put(PublicDimensions.INTERNAL_CLUSTER_ID, cName);
}
String cType = svc.getServicePropertyString("clustertype", null);
if (cType != null) {
- dimvals.put("clustertype", cType);
+ // overridden by cluster membership below (if available)
+ dimvals.put(PublicDimensions.INTERNAL_CLUSTER_TYPE, cType);
}
var hostResource = svc.getHost();
if (hostResource != null) {