summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/zone/ZoneRegistry.java6
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/Controller.java22
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DeploymentExpirer.java2
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java9
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v1/ZoneApiHandler.java5
5 files changed, 17 insertions, 27 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/zone/ZoneRegistry.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/zone/ZoneRegistry.java
index 41541d9fcbe..18739e5133b 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/zone/ZoneRegistry.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/zone/ZoneRegistry.java
@@ -23,9 +23,9 @@ public interface ZoneRegistry {
List<ZoneId> zones();
boolean hasZone(ZoneId zoneId);
List<URI> getConfigServerUris(ZoneId zoneId);
- Optional<URI> getLogServerUri(Environment environment, RegionName region);
- Optional<Duration> getDeploymentTimeToLive(Environment environment, RegionName region);
- Optional<RegionName> getDefaultRegion(Environment environment);
+ Optional<URI> getLogServerUri(ZoneId zoneId);
+ Duration getDeploymentTimeToLive(ZoneId zoneId);
+ RegionName getDefaultRegion(Environment environment);
URI getMonitoringSystemUri(Environment environment, RegionName name, ApplicationId application);
URI getDashboardUri();
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/Controller.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/Controller.java
index 1a411e4f9e2..3650d7ad4f7 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/Controller.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/Controller.java
@@ -6,8 +6,6 @@ import com.google.inject.Inject;
import com.yahoo.component.AbstractComponent;
import com.yahoo.component.Version;
import com.yahoo.component.Vtag;
-import com.yahoo.config.provision.Environment;
-import com.yahoo.config.provision.RegionName;
import com.yahoo.config.provision.SystemName;
import com.yahoo.config.provision.ZoneId;
import com.yahoo.vespa.hosted.controller.api.identifiers.AthenzDomain;
@@ -154,17 +152,7 @@ public class Controller extends AbstractComponent {
public Clock clock() { return clock; }
- public URI getElkUri(DeploymentId deploymentId) {
- return elkUrl(zoneRegistry.getLogServerUri(deploymentId.zone().environment(), deploymentId.zone().region()), deploymentId);
- }
-
- public List<URI> getConfigServerUris(ZoneId zoneId) {
- return zoneRegistry.getConfigServerUris(zoneId);
- }
-
- public ZoneRegistry zoneRegistry() { return zoneRegistry; }
-
- private URI elkUrl(Optional<URI> kibanaHost, DeploymentId deploymentId) {
+ public Optional<URI> getLogServerUrl(DeploymentId deploymentId) {
String kibanaQuery = "/#/discover?_g=()&_a=(columns:!(_source)," +
"index:'logstash-*',interval:auto," +
"query:(query_string:(analyze_wildcard:!t,query:'" +
@@ -176,9 +164,15 @@ public class Controller extends AbstractComponent {
"sort:!('@timestamp',desc))";
URI kibanaPath = URI.create(kibanaQuery);
- return kibanaHost.map(uri -> uri.resolve(kibanaPath)).orElse(null);
+ return zoneRegistry.getLogServerUri(deploymentId.zone()).map(uri -> uri.resolve(kibanaPath));
}
+ public List<URI> getConfigServerUris(ZoneId zoneId) {
+ return zoneRegistry.getConfigServerUris(zoneId);
+ }
+
+ public ZoneRegistry zoneRegistry() { return zoneRegistry; }
+
public Map<String, RotationStatus> getHealthStatus(String hostname) {
return globalRoutingService.getHealthStatus(hostname);
}
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DeploymentExpirer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DeploymentExpirer.java
index eb44229e790..b1bdcd3cdff 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DeploymentExpirer.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DeploymentExpirer.java
@@ -53,7 +53,7 @@ public class DeploymentExpirer extends Maintainer {
}
public static boolean hasExpired(ZoneRegistry zoneRegistry, Deployment deployment, Instant now) {
- return zoneRegistry.getDeploymentTimeToLive(deployment.zone().environment(), deployment.zone().region())
+ return zoneRegistry.getDeploymentTimeToLive(deployment.zone())
.map(duration -> getExpiration(deployment, duration))
.map(now::isAfter)
.orElse(false);
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
index f132e6ff0fe..1a290769a6f 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
@@ -445,16 +445,15 @@ public class ApplicationApiHandler extends LoggingRequestHandler {
response.setString("nodes", withPath("/zone/v2/" + deploymentId.zone().environment() + "/" + deploymentId.zone().region() + "/nodes/v2/node/?&recursive=true&application=" + deploymentId.applicationId().tenant() + "." + deploymentId.applicationId().application() + "." + deploymentId.applicationId().instance(), request.getUri()).toString());
- URI elkUrl = controller.getElkUri(deploymentId);
- if (elkUrl != null)
- response.setString("elkUrl", elkUrl.toString());
+ controller.getLogServerUrl(deploymentId)
+ .ifPresent(elkUrl -> response.setString("elkUrl", elkUrl.toString()));
response.setString("yamasUrl", monitoringSystemUri(deploymentId).toString());
response.setString("version", deployment.version().toFullString());
response.setString("revision", deployment.revision().id());
response.setLong("deployTimeEpochMs", deployment.at().toEpochMilli());
- Optional<Duration> deploymentTimeToLive = controller.zoneRegistry().getDeploymentTimeToLive(deploymentId.zone().environment(), deploymentId.zone().region());
- deploymentTimeToLive.ifPresent(duration -> response.setLong("expiryTimeEpochMs", deployment.at().plus(duration).toEpochMilli()));
+ Duration deploymentTimeToLive = controller.zoneRegistry().getDeploymentTimeToLive(deploymentId.zone());
+ response.setLong("expiryTimeEpochMs", deployment.at().plus(deploymentTimeToLive).toEpochMilli());
controller.applications().get(deploymentId.applicationId()).flatMap(application -> application.deploymentJobs().projectId())
.ifPresent(i -> response.setString("screwdriverId", String.valueOf(i)));
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v1/ZoneApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v1/ZoneApiHandler.java
index aecd3847653..567a4f7d316 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v1/ZoneApiHandler.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v1/ZoneApiHandler.java
@@ -108,10 +108,7 @@ public class ZoneApiHandler extends LoggingRequestHandler {
}
private HttpResponse defaultRegion(HttpRequest request, Environment environment) {
- RegionName region = zoneRegistry.getDefaultRegion(environment)
- .orElseThrow(() -> new IllegalArgumentException(
- "No default region for environment: " + environment
- ));
+ RegionName region = zoneRegistry.getDefaultRegion(environment);
Slime slime = new Slime();
Cursor root = slime.setObject();
root.setString("name", region.value());