You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bu...@apache.org on 2013/08/13 15:31:49 UTC

svn commit: r874468 - in /websites/staging/sling/trunk/content: ./ documentation/bundles/sling-health-check-tool.html

Author: buildbot
Date: Tue Aug 13 13:31:49 2013
New Revision: 874468

Log:
Staging update by buildbot for sling

Modified:
    websites/staging/sling/trunk/content/   (props changed)
    websites/staging/sling/trunk/content/documentation/bundles/sling-health-check-tool.html

Propchange: websites/staging/sling/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Aug 13 13:31:49 2013
@@ -1 +1 @@
-1513475
+1513478

Modified: websites/staging/sling/trunk/content/documentation/bundles/sling-health-check-tool.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/bundles/sling-health-check-tool.html (original)
+++ websites/staging/sling/trunk/content/documentation/bundles/sling-health-check-tool.html Tue Aug 13 13:31:49 2013
@@ -90,8 +90,6 @@ check the health of live Sling systems, 
 information, Sling requests status, etc.</p>
 <p>Health checks are easily extensible either by configuring the supplied default <code>HealthCheck</code> services, or
 by implementing your own services.  </p>
-<p>Default rules are provided to check JMX MBeans, OSGi bundle states, disabling of default Sling 
-accounts, JUnit tests results and the output of scripts written in any language supported by Sling.</p>
 <p>The source code of the hc modules is at <a href="http://svn.apache.org/repos/asf/sling/trunk/contrib/extensions/healthcheck">http://svn.apache.org/repos/asf/sling/trunk/contrib/extensions/healthcheck</a>.</p>
 <h2 id="whats-a-healthcheck">What's a <code>HealthCheck</code> ?</h2>
 <p>A <code>HealthCheck</code> is just an OSGi service that returns a <code>Result</code>.</p>
@@ -111,47 +109,50 @@ accounts, JUnit tests results and the ou
 
 <p>The Result provides a <em>Status</em> (OK, WARN, CRITICAL etc.) and a human-readable log which provides additional info, including optional DEBUG messages
 that help troubleshooting. The Result log is not stricly tied to a logging model, so <code>HealthCheck</code>s are free to invent their own types of logging messages
-if needed. See the <code>org.apache.sling.hc.api.Result</code> class in the for more details. </p>
-<p><code>HealthCheck</code> services can be selected for execution based on their <em>tags</em>. The <code>HealthCheckFilter</code> utility 
-accepts positive and negative tag parameters, so that <code>-security,sling</code> for example selects all <code>HealthCheck</code>
-having the <em>sling</em> tag but not the <em>security</em> tag. </p>
-<h2 id="health-check-subsystem-bundles">Health Check subsystem bundles</h2>
-<p>The Health Check subsystem consists of the following bundles:</p>
+if needed. See the <code>org.apache.sling.hc.api.Result</code> class for more details. </p>
+<p><code>HealthCheck</code> services can be selected for execution based on their <code>hc.tags</code> multi-value service property. </p>
+<p>The <code>HealthCheckFilter</code> utility accepts positive and negative tag parameters, so that <code>-security,sling</code> 
+selects all <code>HealthCheck</code> having the <code>sling</code> tag but not the <code>security</code> tag, for example.</p>
+<p>Besides executing them programatically, Health checks can be executed via a webconsole plugin or via JMX, 
+as described below.</p>
+<h2 id="health-check-bundles">Health Check bundles</h2>
+<p>The Health Check subsystem consists of the following bundles, which are described below in more detail:</p>
 <ul>
 <li>The only required bundle is <code>org.apache.sling.hc.api</code> which provides the API and some utility classes.</li>
-<li><code>org.apache.sling.hc.healthchecks</code> provides default <code>HealthCheck</code> services, described below.</li>
-<li><code>org.apache.sling.hc.webconsole</code> provides the Webconsole plugin described below.</li>
+<li><code>org.apache.sling.hc.healthchecks</code> provides default <code>HealthCheck</code> services.</li>
+<li><code>org.apache.sling.hc.webconsole</code> provides the Webconsole plugin.</li>
 <li><code>org.apache.sling.hc.jmx</code> provides JMX MBeans to execute <code>HealthCheck</code>s.</li>
 <li><code>org.apache.sling.hc.samples</code> provides sample OSGi configurations that demonstrate the default <code>HealthCheck</code>s. These configurations are provided as Sling content, so the Sling Installer is required to activate them.</li>
 </ul>
-<h2 id="executing-health-checks">Executing health checks</h2>
-<p>Besides executing them programatically, Health checks can be executed via a webconsole plugin or via JMX, 
-see below for more details.</p>
-<h2 id="default-healthcheck-services-and-samples">Default <code>HealthCheck</code> services and samples</h2>
+<h2 id="out-of-the-box-healthcheck-services">Out-of-the-box <code>HealthCheck</code> services</h2>
 <p>A useful set of default <code>HealthCheck</code>s is provided by the <code>org.apache.sling.hc.healthchecks</code> bundle. </p>
-<p>The <code>org.apache.sling.hc.samples</code> bundle provides OSGi configurations that demonstrate the following <code>HealthCheck</code> services:</p>
+<p>The <code>org.apache.sling.hc.samples</code> bundle provides OSGi configurations that demonstrate them.</p>
 <ul>
 <li><code>JmxAttributeHealthCheck</code> checks the value of a single JMX attribute and supports ranges like <em>between 12 and 42</em>.  </li>
 <li><code>SlingRequestStatusHealthCheck</code> checks the HTTP status of Sling requests.  </li>
 <li><code>ScriptableHealthCheck</code> evaluates an expression written in any scripting language that Sling supports, and provides bindings to access JMX attributes and OSGi bundles states. </li>
 <li><code>DefaultLoginsHealthCheck</code> can be used to verify that the default Sling logins fail.  </li>
-<li><code>CompositeHealthCheck</code> executes a set of <code>HealthCheck</code> selected by tags, useful to get higher-level management views.</li>
+<li><code>CompositeHealthCheck</code> executes a set of <code>HealthCheck</code> selected by tags, useful for creating higher-level checks.</li>
 </ul>
 <h2 id="configuring-health-checks">Configuring health checks</h2>
 <p><code>HealthCheck</code> services are created via OSGi configurations.</p>
 <p>Here's a <code>ScriptableHealthCheck</code> example configuration provided by the <code>org.apache.sling.hc.samples</code> bundle:</p>
-<p>PID = org.apache.sling.hc.ScriptableHealthCheck.1523a6db-12324
-  Factory PID = org.apache.sling.hc.ScriptableHealthCheck
-  hc.mbean.name = InactiveBundlesCheck
-  hc.name = No inactive bundles
-  hc.tags = [bundles, script]
-  expression = osgi.inactiveBundlesCount() == 0 
-  language.extension = ecma</p>
-<p>Properties starting with the <code>hc.</code> prefix should be provided by all <code>HealthCheck</code> services.</p>
+<div class="codehilite"><pre><span class="n">Factory</span> <span class="n">PID</span> <span class="p">=</span> <span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">sling</span><span class="p">.</span><span class="n">hc</span><span class="p">.</span><span class="n">ScriptableHealthCheck</span>
+<span class="n">PID</span> <span class="p">=</span> <span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">sling</span><span class="p">.</span><span class="n">hc</span><span class="p">.</span><span class="n">ScriptableHealthCheck</span><span class="p">.</span>1523<span class="n">a6db</span><span class="o">-</span>12324
+<span class="n">hc</span><span class="p">.</span><span class="n">mbean</span><span class="p">.</span><span class="n">name</span> <span class="p">=</span> <span class="n">InactiveBundlesCheck</span>
+<span class="n">hc</span><span class="p">.</span><span class="n">name</span> <span class="p">=</span> <span class="n">No</span> <span class="n">inactive</span> <span class="n">bundles</span>
+<span class="n">hc</span><span class="p">.</span><span class="n">tags</span> <span class="p">=</span> <span class="p">[</span><span class="n">bundles</span><span class="p">,</span> <span class="n">script</span><span class="p">]</span>
+<span class="n">expression</span> <span class="p">=</span> <span class="n">osgi</span><span class="p">.</span><span class="n">inactiveBundlesCount</span><span class="p">()</span> <span class="o">==</span> 0 
+<span class="n">language</span><span class="p">.</span><span class="n">extension</span> <span class="p">=</span> <span class="n">ecma</span>
+</pre></div>
+
+
+<p>The service properties starting with the <code>hc.</code> prefix in this example should be provided by all 
+<code>HealthCheck</code> services.</p>
 <h2 id="webconsole-plugin">Webconsole plugin</h2>
 <p>If the <code>org.apache.sling.hc.webconsole</code> bundle is active, a webconsole plugin 
-at <code>/system/console/healthcheck allows for executing health checks, optionally selected
-based on their tags (positive and negative selection, see</code>HealthCheckFilter` mention above).</p>
+at <code>/system/console/healthcheck</code> allows for executing health checks, optionally selected
+based on their tags (positive and negative selection, see <code>HealthCheckFilter</code> mention above).</p>
 <p>The DEBUG logs of health checks can optionally be displayed, and an option allows for showing only health
 checks that have a non-OK status.</p>
 <p>The screenshot below shows an example, as of svn revision 1513462.</p>
@@ -161,11 +162,12 @@ checks that have a non-OK status.</p>
 <p>The MBean gives access to the <code>Result</code> and the log, as shown on the screenshot below.   </p>
 <p>The MBean name defaults to the <code>hc.name</code> service property of the <em><code>HealthCheck</code></em>, but if an
 <code>hc.mbean.name</code> property is provided it is used instead. That property can include a a slash 
-(as in <code>composite/security</code>) to define the MBean service name, which by default is <em>HealthCheck</em>.</p>
-<p>The example configurations of the <code>org.apache.sling.hc.samples</code> bundle demonstrate the various features.</p>
+(like <code>CompositeHealthCheck/script</code> in the screenshot) to define the MBean service name, 
+which by default is <em>HealthCheck</em>.</p>
+<p>See the example configurations of the <code>org.apache.sling.hc.samples</code> for more details.</p>
 <p><img alt="" src="jconsole-hc.jpg" /></p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; text-align: right;">
-        Rev. 1513475 by bdelacretaz on Tue, 13 Aug 2013 13:22:13 +0000
+        Rev. 1513478 by bdelacretaz on Tue, 13 Aug 2013 13:31:42 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Sling, Sling, Apache, the Apache feather logo, and the Apache Sling project