summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java1
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/metrics/ClusterInfo.java14
2 files changed, 14 insertions, 1 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java
index f65eaaf3fa3..3f0a0a705c5 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java
@@ -800,6 +800,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye
.findFirst().orElseThrow(() -> new IllegalArgumentException("Unable to find services " + METRICS_PROXY_CONTAINER.serviceName.toString()));
String clusterName = serviceInfo.getProperty("clusterid").orElse("");
String clusterTypeString = serviceInfo.getProperty("clustertype").orElse("");
+ if (!ClusterInfo.ClusterType.isValidType(clusterTypeString)) return;
ClusterInfo.ClusterType clusterType = ClusterInfo.ClusterType.valueOf(clusterTypeString);
URI host = URI.create("http://" + hostInfo.getHostname() + ":" + servicePort(serviceInfo) + "/metrics/v1/values");
clusterHosts.computeIfAbsent(clusterName, l -> new ArrayList<URI>()).add(host);
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/ClusterInfo.java b/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/ClusterInfo.java
index ef9a73fedd4..7507b5c4c2c 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/ClusterInfo.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/metrics/ClusterInfo.java
@@ -40,5 +40,17 @@ public class ClusterInfo {
hostnames.add(host);
}
- public enum ClusterType {content, container};
+ public enum ClusterType {
+ content,
+ container;
+
+ public static boolean isValidType(String enumString) {
+ try {
+ valueOf(enumString);
+ return true;
+ } catch (IllegalArgumentException e) {
+ return false;
+ }
+ }
+ };
}