diff --git a/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/ClusterOverviewHandler.java b/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/ClusterOverviewHandler.java index 9fcf1444cd093..a1f6a766a6edf 100644 --- a/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/ClusterOverviewHandler.java +++ b/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/ClusterOverviewHandler.java @@ -22,6 +22,7 @@ import org.apache.flink.runtime.instance.ActorGateway; import org.apache.flink.runtime.messages.webmonitor.RequestStatusOverview; import org.apache.flink.runtime.messages.webmonitor.StatusOverview; +import org.apache.flink.runtime.util.EnvironmentInformation; import scala.concurrent.Await; import scala.concurrent.Future; import scala.concurrent.duration.FiniteDuration; @@ -38,7 +39,10 @@ public class ClusterOverviewHandler implements RequestHandler, RequestHandler.JsonResponse { private final FiniteDuration timeout; - + + private static final String version = EnvironmentInformation.getVersion(); + + private static final String commitID = EnvironmentInformation.getRevisionInformation().commitId; public ClusterOverviewHandler(FiniteDuration timeout) { this.timeout = checkNotNull(timeout); @@ -63,6 +67,10 @@ public String handleRequest(Map params, ActorGateway jobManager) gen.writeNumberField("jobs-finished", overview.getNumJobsFinished()); gen.writeNumberField("jobs-cancelled", overview.getNumJobsCancelled()); gen.writeNumberField("jobs-failed", overview.getNumJobsFailed()); + gen.writeStringField("flink-version", version); + if (!commitID.equals(EnvironmentInformation.UNKNOWN)) { + gen.writeStringField("flink-commit", commitID); + } gen.writeEndObject(); gen.close(); diff --git a/flink-runtime-web/web-dashboard/app/partials/overview.jade b/flink-runtime-web/web-dashboard/app/partials/overview.jade index dbaf1a77aa154..eeb3be990b97e 100644 --- a/flink-runtime-web/web-dashboard/app/partials/overview.jade +++ b/flink-runtime-web/web-dashboard/app/partials/overview.jade @@ -22,6 +22,12 @@ nav.navbar.navbar-default.navbar-fixed-top.navbar-main .navbar-title | Overview + .navbar-info.last.first + | Version: {{overview['flink-version']}} + + .navbar-info.last.first(ng-if="overview['flink-commit']") + | Commit: {{overview['flink-commit']}} + #content-inner .row .col-md-6 diff --git a/flink-runtime-web/web-dashboard/web/partials/overview.html b/flink-runtime-web/web-dashboard/web/partials/overview.html index 24e8f93a10333..05022ef423bce 100644 --- a/flink-runtime-web/web-dashboard/web/partials/overview.html +++ b/flink-runtime-web/web-dashboard/web/partials/overview.html @@ -20,6 +20,8 @@
diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/util/EnvironmentInformation.java b/flink-runtime/src/main/java/org/apache/flink/runtime/util/EnvironmentInformation.java index 687f1a57a89f7..4d742f1cf36e7 100644 --- a/flink-runtime/src/main/java/org/apache/flink/runtime/util/EnvironmentInformation.java +++ b/flink-runtime/src/main/java/org/apache/flink/runtime/util/EnvironmentInformation.java @@ -39,7 +39,7 @@ public class EnvironmentInformation { private static final Logger LOG = LoggerFactory.getLogger(EnvironmentInformation.class); - private static final String UNKNOWN = ""; + public static final String UNKNOWN = ""; /** * Returns the version of the code as String. If version == null, then the JobManager does not run from a