You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by vj...@apache.org on 2020/07/23 17:11:28 UTC
[hbase] branch branch-2.1 updated: HBASE-24696 Include JVM
information on Web UI under "Software Attributes"
This is an automated email from the ASF dual-hosted git repository.
vjasani pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/branch-2.1 by this push:
new 1303706 HBASE-24696 Include JVM information on Web UI under "Software Attributes"
1303706 is described below
commit 130370633063f607a815982352ba66b87668b57e
Author: Mingliang Liu <li...@apache.org>
AuthorDate: Thu Jul 23 22:24:38 2020 +0530
HBASE-24696 Include JVM information on Web UI under "Software Attributes"
Closes #2120
Signed-off-by: Viraj Jasani <vj...@apache.org>
Signed-off-by: Nick Dimiduk <nd...@apache.org>
---
hbase-rest/src/main/resources/hbase-webapps/rest/rest.jsp | 6 ++++++
.../hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon | 5 +++++
.../hadoop/hbase/tmpl/regionserver/RSStatusTmpl.jamon | 6 ++++++
.../java/org/apache/hadoop/hbase/util/JvmVersion.java | 15 +++++++++++----
.../src/main/resources/hbase-webapps/thrift/thrift.jsp | 6 ++++++
5 files changed, 34 insertions(+), 4 deletions(-)
diff --git a/hbase-rest/src/main/resources/hbase-webapps/rest/rest.jsp b/hbase-rest/src/main/resources/hbase-webapps/rest/rest.jsp
index ed4e9c2..3deb2bb 100644
--- a/hbase-rest/src/main/resources/hbase-webapps/rest/rest.jsp
+++ b/hbase-rest/src/main/resources/hbase-webapps/rest/rest.jsp
@@ -20,6 +20,7 @@
<%@ page contentType="text/html;charset=UTF-8"
import="org.apache.hadoop.conf.Configuration"
import="org.apache.hadoop.hbase.HBaseConfiguration"
+ import="org.apache.hadoop.hbase.rest.model.VersionModel"
import="org.apache.hadoop.hbase.util.VersionInfo"
import="java.util.Date"%>
<%
@@ -83,6 +84,11 @@ String listenPort = conf.get("hbase.rest.port", "8080");
<th>Value</th>
<th>Description</th>
</tr>
+ <tr>
+ <td>JVM Version</td>
+ <td><%= new VersionModel(getServletContext()).getJVMVersion() %></td>
+ <td>JVM vendor and version</td>
+ </tr>
<tr>
<td>HBase Version</td>
<td><%= VersionInfo.getVersion() %>, revision=<%= VersionInfo.getRevision() %></td>
diff --git a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon
index 4a9c39c..762978f 100644
--- a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon
+++ b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon
@@ -295,6 +295,11 @@ AssignmentManager assignmentManager = master.getAssignmentManager();
<th>Description</th>
</tr>
<tr>
+ <td>JVM Version</td>
+ <td><% JvmVersion.getVersion() %></td>
+ <td>JVM vendor and version</td>
+ </tr>
+ <tr>
<td>HBase Version</td>
<td><% org.apache.hadoop.hbase.util.VersionInfo.getVersion() %>, revision=<% org.apache.hadoop.hbase.util.VersionInfo.getRevision() %></td><td>HBase version and revision</td>
</tr>
diff --git a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/RSStatusTmpl.jamon b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/RSStatusTmpl.jamon
index 2d1e5ed..ef48c7c 100644
--- a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/RSStatusTmpl.jamon
+++ b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/RSStatusTmpl.jamon
@@ -31,6 +31,7 @@ org.apache.hadoop.hbase.ServerName;
org.apache.hadoop.hbase.HBaseConfiguration;
org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.ServerInfo;
+org.apache.hadoop.hbase.util.JvmVersion;
org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
</%import>
<%doc>If json AND bcn is NOT an empty string presume it a block cache view request.</%doc>
@@ -136,6 +137,11 @@ org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
<th>Description</th>
</tr>
<tr>
+ <td>JVM Version</td>
+ <td><% JvmVersion.getVersion() %></td>
+ <td>JVM vendor and version</td>
+ </tr>
+ <tr>
<td>HBase Version</td>
<td><% org.apache.hadoop.hbase.util.VersionInfo.getVersion() %>, revision=<% org.apache.hadoop.hbase.util.VersionInfo.getRevision() %></td>
<td>HBase version and revision</td>
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JvmVersion.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JvmVersion.java
index e2e0cf2..65c952e 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JvmVersion.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/JvmVersion.java
@@ -25,9 +25,7 @@ import org.apache.yetus.audience.InterfaceAudience;
import org.apache.yetus.audience.InterfaceStability;
/**
- * Certain JVM versions are known to be unstable with HBase. This
- * class has a utility function to determine whether the current JVM
- * is known to be unstable.
+ * Utility class to get and check the current JVM version.
*/
@InterfaceAudience.Private
@InterfaceStability.Stable
@@ -38,10 +36,19 @@ public abstract class JvmVersion {
}
/**
- * Return true if the current JVM is known to be unstable.
+ * Return true if the current JVM version is known to be unstable with HBase.
*/
public static boolean isBadJvmVersion() {
String version = System.getProperty("java.version");
return version != null && BAD_JVM_VERSIONS.contains(version);
}
+
+ /**
+ * Return the current JVM version information.
+ */
+ public static String getVersion() {
+ return System.getProperty("java.vm.vendor", "UNKNOWN_VM_VENDOR") + ' ' +
+ System.getProperty("java.version", "UNKNOWN_JAVA_VERSION") + '-' +
+ System.getProperty("java.vm.version", "UNKNOWN_VM_VERSION");
+ }
}
diff --git a/hbase-thrift/src/main/resources/hbase-webapps/thrift/thrift.jsp b/hbase-thrift/src/main/resources/hbase-webapps/thrift/thrift.jsp
index b72ac0a..dd6390f 100644
--- a/hbase-thrift/src/main/resources/hbase-webapps/thrift/thrift.jsp
+++ b/hbase-thrift/src/main/resources/hbase-webapps/thrift/thrift.jsp
@@ -21,6 +21,7 @@
import="org.apache.hadoop.conf.Configuration"
import="org.apache.hadoop.hbase.HBaseConfiguration"
import="org.apache.hadoop.hbase.thrift.ThriftServerRunner.ImplType"
+ import="org.apache.hadoop.hbase.util.JvmVersion"
import="org.apache.hadoop.hbase.util.VersionInfo"
import="java.util.Date"
%>
@@ -91,6 +92,11 @@ String compact = conf.get("hbase.regionserver.thrift.compact", "false");
<th>Value</th>
<th>Description</th>
</tr>
+ <tr>
+ <td>JVM Version</td>
+ <td><%= JvmVersion.getVersion() %></td>
+ <td>JVM vendor and version information</td>
+ </tr>
<tr>
<td>HBase Version</td>
<td><%= VersionInfo.getVersion() %>, r<%= VersionInfo.getRevision() %></td>