[STORM-2827] fix Logviewer search returning incorrect logviewerUrl problem
Project: http://git-wip-us.apache.org/repos/asf/storm/repo Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/ea233a90 Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/ea233a90 Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/ea233a90 Branch: refs/heads/master Commit: ea233a908fd3124f2460353c5a6622a8aed98519 Parents: becab7c Author: Ethan Li <[email protected]> Authored: Mon Nov 20 16:32:05 2017 -0600 Committer: Ethan Li <[email protected]> Committed: Mon Nov 27 10:36:07 2017 -0600 ---------------------------------------------------------------------- .../storm/daemon/logviewer/LogviewerServer.java | 2 +- .../logviewer/handler/LogviewerLogSearchHandler.java | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/storm/blob/ea233a90/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/LogviewerServer.java ---------------------------------------------------------------------- diff --git a/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/LogviewerServer.java b/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/LogviewerServer.java index 9e9ad92..a418da3 100644 --- a/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/LogviewerServer.java +++ b/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/LogviewerServer.java @@ -155,7 +155,7 @@ public class LogviewerServer implements AutoCloseable { */ public static void main(String [] args) throws Exception { Utils.setupDefaultUncaughtExceptionHandler(); - Map<String, Object> conf = Utils.readStormConfig(); + Map<String, Object> conf = ConfigUtils.readStormConfig(); String logRoot = ConfigUtils.workerArtifactsRoot(conf); File logRootFile = new File(logRoot); http://git-wip-us.apache.org/repos/asf/storm/blob/ea233a90/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/handler/LogviewerLogSearchHandler.java ---------------------------------------------------------------------- diff --git a/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/handler/LogviewerLogSearchHandler.java b/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/handler/LogviewerLogSearchHandler.java index 3ac2252..710db6b 100644 --- a/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/handler/LogviewerLogSearchHandler.java +++ b/storm-webapp/src/main/java/org/apache/storm/daemon/logviewer/handler/LogviewerLogSearchHandler.java @@ -82,6 +82,7 @@ public class LogviewerLogSearchHandler { private final String daemonLogRoot; private final ResourceAuthorizer resourceAuthorizer; private final Integer logviewerPort; + private final String scheme; /** * Constructor. @@ -97,8 +98,14 @@ public class LogviewerLogSearchHandler { this.logRoot = logRoot; this.daemonLogRoot = daemonLogRoot; this.resourceAuthorizer = resourceAuthorizer; - - this.logviewerPort = ObjectReader.getInt(stormConf.get(DaemonConfig.LOGVIEWER_PORT)); + Object httpsPort = stormConf.get(DaemonConfig.LOGVIEWER_HTTPS_PORT); + if (httpsPort == null) { + this.logviewerPort = ObjectReader.getInt(stormConf.get(DaemonConfig.LOGVIEWER_PORT)); + this.scheme = "http"; + } else { + this.logviewerPort = ObjectReader.getInt(httpsPort); + this.scheme = "https"; + } } /** @@ -662,7 +669,7 @@ public class LogviewerLogSearchHandler { parameters.put("start", Math.max(0, offset - (LogviewerConstant.DEFAULT_BYTES_PER_PAGE / 2) - (needle.length / -2))); parameters.put("length", LogviewerConstant.DEFAULT_BYTES_PER_PAGE); - return UrlBuilder.build(String.format("http://%s:%d/api/v1/log", host, port), parameters); + return UrlBuilder.build(String.format(this.scheme + "://%s:%d/api/v1/log", host, port), parameters); } @VisibleForTesting @@ -675,7 +682,7 @@ public class LogviewerLogSearchHandler { parameters.put("start", Math.max(0, offset - (LogviewerConstant.DEFAULT_BYTES_PER_PAGE / 2) - (needle.length / -2))); parameters.put("length", LogviewerConstant.DEFAULT_BYTES_PER_PAGE); - return UrlBuilder.build(String.format("http://%s:%d/api/v1/daemonlog", host, port), parameters); + return UrlBuilder.build(String.format(this.scheme + "://%s:%d/api/v1/daemonlog", host, port), parameters); } @VisibleForTesting
