You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by bi...@apache.org on 2011/12/16 18:56:28 UTC
svn commit: r1215232 - in /incubator/accumulo/branches/1.4: ./ docs/
src/core/src/main/java/org/apache/accumulo/core/conf/
src/core/src/main/java/org/apache/accumulo/core/util/shell/commands/
src/server/src/main/java/org/apache/accumulo/server/monitor/...
Author: billie
Date: Fri Dec 16 17:56:28 2011
New Revision: 1215232
URL: http://svn.apache.org/viewvc?rev=1215232&view=rev
Log:
ACCUMULO-224 added optional banner to monitor page configured with monitor.banner.* parameters
Modified:
incubator/accumulo/branches/1.4/ (props changed)
incubator/accumulo/branches/1.4/docs/config.html
incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/conf/Property.java
incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java
incubator/accumulo/branches/1.4/src/server/src/main/java/org/apache/accumulo/server/monitor/servlets/BasicServlet.java
incubator/accumulo/branches/1.4/src/server/src/main/resources/web/screen.css
Propchange: incubator/accumulo/branches/1.4/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Fri Dec 16 17:56:28 2011
@@ -1,7 +1,6 @@
logs
walogs
target
-
.project
-
.settings
+.pydevproject
Modified: incubator/accumulo/branches/1.4/docs/config.html
URL: http://svn.apache.org/viewvc/incubator/accumulo/branches/1.4/docs/config.html?rev=1215232&r1=1215231&r2=1215232&view=diff
==============================================================================
--- incubator/accumulo/branches/1.4/docs/config.html (original)
+++ incubator/accumulo/branches/1.4/docs/config.html Fri Dec 16 17:56:28 2011
@@ -618,13 +618,34 @@ $HADOOP_HOME/lib/[^.].*.jar,
<tr><td colspan='5'><i>Properties in this category affect the behavior of the monitor web server.</i></td></tr>
<tr><th>Property</th><th>Type</th><th>Zookeeper Mutable</th><th>Default Value</th><th>Description</th></tr>
<tr class='highlight'>
+ <td>monitor.banner.background</td>
+ <td><b><a href='#STRING'>string</a></b></td>
+ <td>yes</td>
+ <td><pre>white</pre></td>
+ <td>The background color of the banner text displayed on the monitor page.</td>
+ </tr>
+ <tr >
+ <td>monitor.banner.color</td>
+ <td><b><a href='#STRING'>string</a></b></td>
+ <td>yes</td>
+ <td><pre>black</pre></td>
+ <td>The color of the banner text displayed on the monitor page.</td>
+ </tr>
+ <tr class='highlight'>
+ <td>monitor.banner.text</td>
+ <td><b><a href='#STRING'>string</a></b></td>
+ <td>yes</td>
+ <td><pre> </pre></td>
+ <td>The banner text displayed on the monitor page.</td>
+ </tr>
+ <tr >
<td>monitor.port.client</td>
<td><b><a href='#PORT'>port</a></b></td>
<td>no</td>
<td><pre>50095</pre></td>
<td>The listening port for the monitor's http service</td>
</tr>
- <tr >
+ <tr class='highlight'>
<td>monitor.port.log4j</td>
<td><b><a href='#PORT'>port</a></b></td>
<td>no</td>
Modified: incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/conf/Property.java
URL: http://svn.apache.org/viewvc/incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/conf/Property.java?rev=1215232&r1=1215231&r2=1215232&view=diff
==============================================================================
--- incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/conf/Property.java (original)
+++ incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/conf/Property.java Fri Dec 16 17:56:28 2011
@@ -181,6 +181,9 @@ public enum Property {
MONITOR_PREFIX("monitor.", null, PropertyType.PREFIX, "Properties in this category affect the behavior of the monitor web server."),
MONITOR_PORT("monitor.port.client", "50095", PropertyType.PORT, "The listening port for the monitor's http service"),
MONITOR_LOG4J_PORT("monitor.port.log4j", "4560", PropertyType.PORT, "The listening port for the monitor's log4j logging collection."),
+ MONITOR_BANNER_TEXT("monitor.banner.text", "", PropertyType.STRING, "The banner text displayed on the monitor page."),
+ MONITOR_BANNER_COLOR("monitor.banner.color", "black", PropertyType.STRING, "The color of the banner text displayed on the monitor page."),
+ MONITOR_BANNER_BACKGROUND("monitor.banner.background", "white", PropertyType.STRING, "The background color of the banner text displayed on the monitor page."),
TRACE_PREFIX("trace.", null, PropertyType.PREFIX, "Properties in this category affect the behavior of distributed tracing."),
TRACE_PORT("trace.port.client", "12234", PropertyType.PORT, "The listening port for the trace server"),
@@ -348,7 +351,8 @@ public enum Property {
public static boolean isValidZooPropertyKey(String key) {
// white list prefixes
return key.startsWith(Property.TABLE_PREFIX.getKey()) || key.startsWith(Property.TSERV_PREFIX.getKey()) || key.startsWith(Property.LOGGER_PREFIX.getKey())
- || key.startsWith(Property.MASTER_PREFIX.getKey()) || key.startsWith(Property.GC_PREFIX.getKey());
+ || key.startsWith(Property.MASTER_PREFIX.getKey()) || key.startsWith(Property.GC_PREFIX.getKey())
+ || key.startsWith(Property.MONITOR_PREFIX.getKey() + "banner.");
}
public static Property getPropertyByKey(String key) {
Modified: incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java
URL: http://svn.apache.org/viewvc/incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java?rev=1215232&r1=1215231&r2=1215232&view=diff
==============================================================================
--- incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java (original)
+++ incubator/accumulo/branches/1.4/src/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java Fri Dec 16 17:56:28 2011
@@ -33,8 +33,8 @@ import org.apache.accumulo.core.conf.Pro
import org.apache.accumulo.core.security.ColumnVisibility;
import org.apache.accumulo.core.util.BadArgumentException;
import org.apache.accumulo.core.util.shell.Shell;
-import org.apache.accumulo.core.util.shell.Token;
import org.apache.accumulo.core.util.shell.Shell.Command;
+import org.apache.accumulo.core.util.shell.Token;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.Option;
import org.apache.commons.cli.OptionGroup;
@@ -104,7 +104,7 @@ public class ConfigCommand extends Comma
Shell.log.debug("Successfully set table configuration option.");
} else {
if (!Property.isValidZooPropertyKey(property))
- throw new BadArgumentException("Property cannot be modified in zookeepr", fullCommand, fullCommand.indexOf(property));
+ throw new BadArgumentException("Property cannot be modified in zookeeper", fullCommand, fullCommand.indexOf(property));
shellState.getConnector().instanceOperations().setProperty(property, value);
Shell.log.debug("Successfully set system configuration option");
Modified: incubator/accumulo/branches/1.4/src/server/src/main/java/org/apache/accumulo/server/monitor/servlets/BasicServlet.java
URL: http://svn.apache.org/viewvc/incubator/accumulo/branches/1.4/src/server/src/main/java/org/apache/accumulo/server/monitor/servlets/BasicServlet.java?rev=1215232&r1=1215231&r2=1215232&view=diff
==============================================================================
--- incubator/accumulo/branches/1.4/src/server/src/main/java/org/apache/accumulo/server/monitor/servlets/BasicServlet.java (original)
+++ incubator/accumulo/branches/1.4/src/server/src/main/java/org/apache/accumulo/server/monitor/servlets/BasicServlet.java Fri Dec 16 17:56:28 2011
@@ -32,7 +32,9 @@ import javax.servlet.http.HttpServletReq
import javax.servlet.http.HttpServletResponse;
import org.apache.accumulo.core.Constants;
+import org.apache.accumulo.core.conf.Property;
import org.apache.accumulo.server.client.HdfsZooInstance;
+import org.apache.accumulo.server.conf.ServerConfiguration;
import org.apache.accumulo.server.monitor.LogService;
import org.apache.accumulo.server.monitor.Monitor;
import org.apache.accumulo.server.util.time.SimpleTimer;
@@ -43,6 +45,9 @@ abstract public class BasicServlet exten
private static final long serialVersionUID = 1L;
protected static final Logger log = Logger.getLogger(BasicServlet.class);
static String cachedInstanceName = null;
+ private String bannerText;
+ private String bannerColor;
+ private String bannerBackground;
abstract protected String getTitle(HttpServletRequest req);
@@ -50,6 +55,9 @@ abstract public class BasicServlet exten
StringBuilder sb = new StringBuilder();
try {
Monitor.fetchData();
+ bannerText = sanitize(ServerConfiguration.getSystemConfiguration().get(Property.MONITOR_BANNER_TEXT));
+ bannerColor = ServerConfiguration.getSystemConfiguration().get(Property.MONITOR_BANNER_COLOR).replace("'", "'");
+ bannerBackground = ServerConfiguration.getSystemConfiguration().get(Property.MONITOR_BANNER_BACKGROUND).replace("'", "'");
pageStart(req, resp, sb);
pageBody(req, resp, sb);
pageEnd(req, resp, sb);
@@ -132,11 +140,19 @@ abstract public class BasicServlet exten
sb.append("\n<body>\n");
sb.append("<div id='content-wrapper'>\n");
sb.append("<div id='content'>\n");
- sb.append("<div id='header'><h1>").append(getTitle(req)).append("</h1></div>\n");
+ sb.append("<div id='header'>");
+ if (!bannerText.isEmpty()) {
+ sb.append("<div id='banner' style='color:").append(bannerColor).append(";background:").append(bannerBackground).append("'>").append(bannerText)
+ .append("</div>\n");
+ }
+ sb.append("<div id='headertitle'>");
+ sb.append("<h1>").append(getTitle(req)).append("</h1></div>\n");
sb.append("<div id='subheader'>Instance Name: ").append(cachedInstanceName).append(" Version: ").append(Constants.VERSION)
.append("\n");
sb.append("<br><span class='smalltext'>Instance ID: ").append(HdfsZooInstance.getInstance().getInstanceID()).append("</span>\n");
- sb.append("<br><span class='smalltext'>").append(new Date().toString().replace(" ", " ")).append("</span></div>\n");
+ sb.append("<br><span class='smalltext'>").append(new Date().toString().replace(" ", " ")).append("</span>");
+ sb.append("</div>\n"); // end <div id='subheader'>
+ sb.append("</div>\n"); // end <div id='header'>
// BEGIN LEFT SIDE
sb.append("<div id='nav'>\n");
@@ -162,7 +178,10 @@ abstract public class BasicServlet exten
sb.append(refresh < 1 ? "en" : "dis").append("able auto-refresh</a>]</div>\n");
sb.append("</div>\n"); // end <div id='nav'>
- sb.append("<div id='main'>\n");
+ sb.append("<div id='main'");
+ if (bannerText.isEmpty())
+ sb.append(" style='bottom:0'");
+ sb.append(">\n");
sb.append("<!-- BEGIN MAIN BODY CONTENT -->\n\n");
}
@@ -177,6 +196,10 @@ abstract public class BasicServlet exten
// BEGIN FOOTER
sb.append("</div>\n"); // end <div id='content'>
sb.append("</div>\n"); // end <div id='content-wrapper'>
+ if (!bannerText.isEmpty()) {
+ sb.append("<div id='footer' style='color:").append(bannerColor).append(";background:").append(bannerBackground).append("'>").append(bannerText)
+ .append("</div>\n");
+ }
sb.append("</body>\n");
sb.append("</html>\n");
}
Modified: incubator/accumulo/branches/1.4/src/server/src/main/resources/web/screen.css
URL: http://svn.apache.org/viewvc/incubator/accumulo/branches/1.4/src/server/src/main/resources/web/screen.css?rev=1215232&r1=1215231&r2=1215232&view=diff
==============================================================================
--- incubator/accumulo/branches/1.4/src/server/src/main/resources/web/screen.css (original)
+++ incubator/accumulo/branches/1.4/src/server/src/main/resources/web/screen.css Fri Dec 16 17:56:28 2011
@@ -52,17 +52,37 @@ html,body {
height: 8.0em;
color: #c4c4c4;
background-color: #304065;
+ text-align: center;
+}
+
+#banner {
+ height: 1.5em;
+ font-size: 1.0em;
+}
+
+#headertitle {
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
}
#subheader {
position: absolute;
- top: 4.5em;
+ bottom: 0;
left: 0;
right: 0;
- color: #c4c4c4;
font-size: .92em;
- text-align: center;
+}
+
+#footer {
+ position: absolute;
+ bottom: 0;
+ left: 0;
right: 0;
+ padding: 0;
+ height: 1.5em;
+ font-size: 1.0em;
}
#main {
@@ -70,7 +90,7 @@ html,body {
top: 8.0em;
left: 11em;
right: 0;
- bottom: 0;
+ bottom: 1.5em;
padding: 0.6em;
overflow: scroll;
}