1 package org.apache.hadoop.hbase.generated.regionserver; 2 3 import javax.servlet.*; 4 import javax.servlet.http.*; 5 import javax.servlet.jsp.*; 6 import java.util.*; 7 import java.io.IOException; 8 import org.apache.hadoop.io.Text; 9 import org.apache.hadoop.hbase.regionserver.HRegionServer; 10 import org.apache.hadoop.hbase.regionserver.HRegion; 11 import org.apache.hadoop.hbase.regionserver.metrics.RegionServerMetrics; 12 import org.apache.hadoop.hbase.util.Bytes; 13 import org.apache.hadoop.hbase.HConstants; 14 import org.apache.hadoop.hbase.HServerInfo; 15 import org.apache.hadoop.hbase.HServerLoad; 16 import org.apache.hadoop.hbase.HRegionInfo; 17 18 public final class regionserver_jsp extends org.apache.jasper.runtime.HttpJspBase 19 implements org.apache.jasper.runtime.JspSourceDependent { 20 21 private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); 22 23 private static java.util.Vector _jspx_dependants; 24 25 private org.apache.jasper.runtime.ResourceInjector _jspx_resourceInjector; 26 27 public Object getDependants() { 28 return _jspx_dependants; 29 } 30 31 public void _jspService(HttpServletRequest request, HttpServletResponse response) 32 throws java.io.IOException, ServletException { 33 34 PageContext pageContext = null; 35 HttpSession session = null; 36 ServletContext application = null; 37 ServletConfig config = null; 38 JspWriter out = null; 39 Object page = this; 40 JspWriter _jspx_out = null; 41 PageContext _jspx_page_context = null; 42 43 try { 44 response.setContentType("text/html;charset=UTF-8"); 45 pageContext = _jspxFactory.getPageContext(this, request, response, 46 null, true, 8192, true); 47 _jspx_page_context = pageContext; 48 application = pageContext.getServletContext(); 49 config = pageContext.getServletConfig(); 50 session = pageContext.getSession(); 51 out = pageContext.getOut(); 52 _jspx_out = out; 53 _jspx_resourceInjector = (org.apache.jasper.runtime.ResourceInjector) application.getAttribute("com.sun.appserv.jsp.resource.injector"); 54 55 56 HRegionServer regionServer = (HRegionServer)getServletContext().getAttribute(HRegionServer.REGIONSERVER); 57 HServerInfo serverInfo = null; 58 try { 59 serverInfo = regionServer.getHServerInfo(); 60 } catch (IOException e) { 61 e.printStackTrace(); 62 } 63 RegionServerMetrics metrics = regionServer.getMetrics(); 64 List<HRegionInfo> onlineRegions = regionServer.getOnlineRegions(); 65 int interval = regionServer.getConfiguration().getInt("hbase.regionserver.msginterval", 3000)/1000; 66 67 68 out.write("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \n \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> \n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n<head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=UTF-8\"/>\n<title>HBase Region Server: "); 69 out.print( serverInfo.getServerAddress().getHostname() ); 70 out.write(':'); 71 out.print( serverInfo.getServerAddress().getPort() ); 72 out.write("</title>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"/static/hbase.css\" />\n</head>\n\n<body>\n<a id=\"logo\" href=\"http://wiki.apache.org/lucene-hadoop/Hbase\"><img src=\"/static/hbase_logo_med.gif\" alt=\"HBase Logo\" title=\"HBase Logo\" /></a>\n<h1 id=\"page_title\">Region Server: "); 73 out.print( serverInfo.getServerAddress().getHostname() ); 74 out.write(':'); 75 out.print( serverInfo.getServerAddress().getPort() ); 76 out.write("</h1>\n<p id=\"links_menu\"><a href=\"/logs/\">Local logs</a>, <a href=\"/stacks\">Thread Dump</a>, <a href=\"/logLevel\">Log Level</a></p>\n<hr id=\"head_rule\" />\n\n<h2>Region Server Attributes</h2>\n<table>\n<tr><th>Attribute Name</th><th>Value</th><th>Description</th></tr>\n<tr><td>HBase Version</td><td>"); 77 out.print( org.apache.hadoop.hbase.util.VersionInfo.getVersion() ); 78 out.write(", r"); 79 out.print( org.apache.hadoop.hbase.util.VersionInfo.getRevision() ); 80 out.write("</td><td>HBase version and svn revision</td></tr>\n<tr><td>HBase Compiled</td><td>"); 81 out.print( org.apache.hadoop.hbase.util.VersionInfo.getDate() ); 82 out.write(','); 83 out.write(' '); 84 out.print( org.apache.hadoop.hbase.util.VersionInfo.getUser() ); 85 out.write("</td><td>When HBase version was compiled and by whom</td></tr>\n<tr><td>Metrics</td><td>"); 86 out.print( metrics.toString() ); 87 out.write("</td><td>RegionServer Metrics; file and heap sizes are in megabytes</td></tr>\n<tr><td>Zookeeper Quorum</td><td>"); 88 out.print( regionServer.getZooKeeper().getQuorum() ); 89 out.write("</td><td>Addresses of all registered ZK servers</td></tr>\n</table>\n\n<h2>Online Regions</h2>\n"); 90 if (onlineRegions != null && onlineRegions.size() > 0) { 91 out.write("\n<table>\n<tr><th>Region Name</th><th>Start Key</th><th>End Key</th><th>Metrics</th></tr>\n"); 92 93 Collections.sort(onlineRegions); 94 for (HRegionInfo r: onlineRegions) { 95 HServerLoad.RegionLoad load = regionServer.createRegionLoad(r.getEncodedName()); 96 97 out.write("\n<tr><td>"); 98 out.print( r.getRegionNameAsString() ); 99 out.write("</td>\n <td>"); 100 out.print( Bytes.toStringBinary(r.getStartKey()) ); 101 out.write("</td><td>"); 102 out.print( Bytes.toStringBinary(r.getEndKey()) ); 103 out.write("</td>\n <td>"); 104 out.print( load == null? "null": load.toString() ); 105 out.write("</td>\n </tr>\n"); 106 } 107 out.write("\n</table>\n<p>Region names are made of the containing table's name, a comma,\nthe start key, a comma, and a randomly generated region id. To illustrate,\nthe region named\n<em>domains,apache.org,5464829424211263407</em> is party to the table \n<em>domains</em>, has an id of <em>5464829424211263407</em> and the first key\nin the region is <em>apache.org</em>. The <em>-ROOT-</em>\nand <em>.META.</em> 'tables' are internal sytem tables (or 'catalog' tables in db-speak).\nThe -ROOT- keeps a list of all regions in the .META. table. The .META. table\nkeeps a list of all regions in the system. The empty key is used to denote\ntable start and table end. A region with an empty start key is the first region in a table.\nIf region has both an empty start and an empty end key, its the only region in the table. See\n<a href=\"http://hbase.org\">HBase Home</a> for further explication.<p>\n"); 108 } else { 109 out.write("\n<p>Not serving regions</p>\n"); 110 } 111 out.write("\n</body>\n</html>\n"); 112 } catch (Throwable t) { 113 if (!(t instanceof SkipPageException)){ 114 out = _jspx_out; 115 if (out != null && out.getBufferSize() != 0) 116 out.clearBuffer(); 117 if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); 118 } 119 } finally { 120 _jspxFactory.releasePageContext(_jspx_page_context); 121 } 122 } 123 }