summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorOla Aunrønning <olaa@verizonmedia.com>2019-07-17 15:05:50 +0200
committerOla Aunrønning <olaa@verizonmedia.com>2019-07-17 15:07:07 +0200
commitc87945261cf71796d510f8e5ebc8258ee8c29462 (patch)
treefb2ec7b7b74c229291083a215e74b33f202ee361 /configserver
parent2c6d06e0d3609ef5d632fb6c29f0fc8d7ee6b24b (diff)
Ignore all cluster types except container and content
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java9
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/metrics/ClusterInfo.java14
2 files changed, 17 insertions, 6 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 70d8931acaa..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
@@ -649,11 +649,9 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye
var clusters = getClustersOfApplication(applicationId);
var clusterMetrics = new LinkedHashMap<ClusterInfo, MetricsAggregator>();
- clusters.stream()
- .filter(cluster -> !cluster.getClusterType().equals(ClusterInfo.ClusterType.admin))
- .forEach(cluster -> {
- var metrics = metricsRetriever.requestMetricsForCluster(cluster);
- clusterMetrics.put(cluster, metrics);
+ clusters.forEach(cluster -> {
+ var metrics = metricsRetriever.requestMetricsForCluster(cluster);
+ clusterMetrics.put(cluster, metrics);
});
return new MetricsResponse(200, applicationId, clusterMetrics);
@@ -802,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 052aa71d48a..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, admin};
+ public enum ClusterType {
+ content,
+ container;
+
+ public static boolean isValidType(String enumString) {
+ try {
+ valueOf(enumString);
+ return true;
+ } catch (IllegalArgumentException e) {
+ return false;
+ }
+ }
+ };
}