aboutsummaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-09-11 13:45:34 +0200
committerGitHub <noreply@github.com>2018-09-11 13:45:34 +0200
commit5f2187d413304eaaafed3f655b5e7a052e249a47 (patch)
tree401583291f37b7481201c6320f62d6a7528c60b7 /configserver
parent3da461e845a2fe8abb85ec5b2a188a13e8c6fa07 (diff)
parentb5e9a0a480035483bab918998ca20c5cb94d91dd (diff)
Merge pull request #6898 from vespa-engine/olaaun/find-logserver-hostname
Find logserver hostname through HostInfos, instead of VespaModel admin
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java20
1 files changed, 10 insertions, 10 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 bcb51f335a3..6a55fb77933 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
@@ -53,7 +53,6 @@ import com.yahoo.vespa.config.server.session.SilentDeployLogger;
import com.yahoo.vespa.config.server.tenant.Rotations;
import com.yahoo.vespa.config.server.tenant.Tenant;
import com.yahoo.vespa.config.server.tenant.TenantRepository;
-import com.yahoo.vespa.model.VespaModel;
import java.io.File;
import java.io.IOException;
@@ -485,7 +484,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye
// ---------------- Logs ----------------------------------------------------------------
public HttpResponse getLogs(ApplicationId applicationId) {
- String logServerHostName = getLogServerHostname(applicationId);
+ String logServerHostName = getLogServerURI(applicationId);
LogRetriever logRetriever = new LogRetriever();
return logRetriever.getLogs(logServerHostName);
}
@@ -703,27 +702,28 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye
}
}
- private String getLogServerHostname(ApplicationId applicationId) {
+ private String getLogServerURI(ApplicationId applicationId) {
Application application = getApplication(applicationId);
- VespaModel model = (VespaModel) application.getModel();
- String logServerHostname = model.getAdmin().getLogserver().getHostName();
Collection<HostInfo> hostInfos = application.getModel().getHosts();
HostInfo logServerHostInfo = hostInfos.stream()
- .filter(host -> host.getHostname().equals(logServerHostname))
- .findFirst().orElseThrow(() -> new IllegalArgumentException("Could not find HostInfo"));
+ .filter(host -> host.getServices().stream()
+ .filter(serviceInfo ->
+ serviceInfo.getServiceType().equalsIgnoreCase("logserver"))
+ .count() > 0)
+ .findFirst().orElseThrow(() -> new IllegalArgumentException("Could not find HostInfo for LogServer"));
- ServiceInfo serviceInfo = logServerHostInfo.getServices().stream()
+ ServiceInfo containerServiceInfo = logServerHostInfo.getServices().stream()
.filter(service -> service.getServiceType().equals("container"))
.findFirst().orElseThrow(() -> new IllegalArgumentException("No container running on logserver host"));
- int port = serviceInfo.getPorts().stream()
+ int port = containerServiceInfo.getPorts().stream()
.filter(portInfo -> portInfo.getTags().stream()
.filter(tag -> tag.equalsIgnoreCase("http")).count() > 0)
.findFirst().orElseThrow(() -> new IllegalArgumentException("Could not find HTTP port"))
.getPort();
- return logServerHostname + ":" + port + "/logs";
+ return "http://" + logServerHostInfo.getHostname() + ":" + port + "/logs";
}
/** Returns version to use when deploying application in given environment */