Author: buildbot
Date: Fri Jun 22 07:08:39 2012
New Revision: 822708
Log:
Staging update by buildbot for sling
Added:
websites/staging/sling/trunk/content/documentation/bundles/request-analysis.html
Modified:
websites/staging/sling/trunk/content/ (props changed)
websites/staging/sling/trunk/content/documentation/bundles.html
Propchange: websites/staging/sling/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Jun 22 07:08:39 2012
@@ -1 +1 @@
-1348706
+1352783
Modified: websites/staging/sling/trunk/content/documentation/bundles.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/bundles.html (original)
+++ websites/staging/sling/trunk/content/documentation/bundles.html Fri Jun 22
07:08:39 2012
@@ -110,12 +110,13 @@
<li><a href="/documentation/bundles/commons-html-utilities.html">Commons HTML
Utilities</a></li>
<li><a href="/documentation/bundles/mime-type-support-commons-mime.html">MIME
Type Support (commons.mime)</a></li>
<li><a
href="/documentation/bundles/output-rewriting-pipelines-org-apache-sling-rewriter.html">Output
Rewriting Pipelines (org.apache.sling.rewriter)</a></li>
+<li>[Request Processing Analyzer]
(org.apache.sling.reqanalyzer)](/documentation/bundles/request-analysis.html)</li>
<li><a
href="/documentation/bundles/sling-settings-org-apache-sling-settings.html">Sling
Settings (org.apache.sling.settings)</a></li>
<li><a
href="/documentation/bundles/scheduler-service-commons-scheduler.html">Scheduler
Service (commons scheduler)</a></li>
<li><a href="/documentation/bundles/web-console-extensions.html">Web Console
Extensions (org.apache.sling.extensions.webconsolebranding,
org.apache.sling.extensions.webconsolesecurityprovider)</a></li>
</ul>
<div class="timestamp" style="margin-top: 30px; font-size: 80%;
text-align: right;">
- Rev. 1341376 by fmeschbe on Tue, 22 May 2012 09:41:06 +0000
+ Rev. 1352783 by fmeschbe on Fri, 22 Jun 2012 07:08:33 +0000
</div>
<div class="trademarkFooter">
Apache Sling, Sling, Apache, the Apache feather logo, and the Apache
Sling project
Added:
websites/staging/sling/trunk/content/documentation/bundles/request-analysis.html
==============================================================================
---
websites/staging/sling/trunk/content/documentation/bundles/request-analysis.html
(added)
+++
websites/staging/sling/trunk/content/documentation/bundles/request-analysis.html
Fri Jun 22 07:08:39 2012
@@ -0,0 +1,132 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE- 2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+ <head>
+ <title>Apache Sling - Request Processing Analyzer (reqanalyzer)</title>
+ <link rel="icon" href="/res/favicon.ico">
+ <link rel="stylesheet" href="/res/site.css" type="text/css" media="all">
+ <link rel="stylesheet" href="/res/codehilite.css" type="text/css"
media="all">
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ </head>
+ <body>
+ <div class="title">
+ <div class="logo">
+ <a href="http://sling.apache.org/">
+ <img border="0" alt="Apache Sling" src="/res/logo.png">
+ </a>
+ </div>
+ <div class="header">
+ <a href="http://www.apache.org/">
+ <img border="0" alt="Apache" src="/res/apache.png">
+ </a>
+ </div>
+ </div>
+
+ <div class="menu">
+ <p><strong>Documentation</strong> <br />
+<a href="/documentation/getting-started.html">Getting Started</a> <br />
+<a href="/documentation/the-sling-engine.html">The Sling Engine</a> <br />
+<a href="/documentation/development.html">Development</a> <br />
+<a href="/documentation/bundles.html">Bundles</a> <br />
+<a href="/documentation/tutorials-how-tos.html">Tutorials & How-Tos</a>
<br />
+<a href="/documentation/configuration.html">Configuration</a> <br />
+<a href="http://s.apache.org/sling.wiki">Wiki</a> <br />
+<a href="http://s.apache.org/sling.faq">FAQ</a> <br />
+<a href="/sitemap.html">Site Map</a></p>
+<p><strong>API Docs</strong> <br />
+<a href="http://sling.apache.org/apidocs/sling6/index.html">Sling 6</a> <br />
+<a href="http://sling.apache.org/apidocs/sling5/index.html">Sling 5</a> <br />
+</p>
+<p><strong>Project info</strong> <br />
+<a href="/downloads.cgi">Downloads</a> <br />
+<a href="http://www.apache.org/licenses/">License</a> <br />
+<a href="/contributing.html">Contributing</a> <br />
+<a href="/news.html">News</a> <br />
+<a href="/links.html">Links</a> <br />
+<a href="/project-information.html">Project Information</a> <br />
+<a href="https://issues.apache.org/jira/browse/SLING">Issue Tracker</a> <br />
+<a href="http://svn.apache.org/viewvc/sling/trunk">Browse Source
Repository</a> <br />
+<a href="/project-information/security.html">Security</a> <br />
+</p>
+<p><strong>Sponsorship</strong> <br />
+<a href="http://www.apache.org/foundation/thanks.html">Thanks</a> <br />
+<a href="http://www.apache.org/foundation/sponsorship.html">Become a
Sponsor</a> <br />
+<a href="http://www.apache.org/foundation/buy_stuff.html">Buy Stuff</a> <br />
+</p>
+<iframe
+ src="http://www.apache.org/ads/button.html"
+ style="border-width:0; float: left" frameborder="0"
+ scrolling="no"
+ width="135"
+ height="135">
+</iframe>
+ </div>
+
+ <div class="main">
+ <div class="breadcrump" style="font-size: 80%;">
+ <a href="/">Home</a> » <a
href="/documentation.html">Documentation</a> » <a
href="/documentation/bundles.html">Bundles</a>
+ </div>
+ <h1>Request Processing Analyzer (reqanalyzer)</h1>
+ <div class="toc">
+<ul>
+<li><a href="#introduction">Introduction</a></li>
+<li><a href="#analyzing-the-requesttrackertxt-file">Analyzing the
requesttracker.txt file</a></li>
+</ul>
+</div>
+<h2 id="introduction">Introduction</h2>
+<p>Sling provides a helpful functionality to track progress of requests
+being processed: The <a
href="http://sling.apache.org/apidocs/sling6/org/apache/sling/api/request/RequestProgressTracker.html">RequestProgressTracker</a>
which is available through the <a
href="http://sling.apache.org/apidocs/sling6/org/apache/sling/api/SlingHttpServletRequest.html#getRequestProgressTracker%28%29">SlingHttpServletRequest</a>.</p>
+<p>This tool provides mechanims to record states of request processing and a
simple mechanism to time periods of processing. By default Sling itself uses
this tool to track progress through Sling like script resolution and calling
scripts.</p>
+<p>Scripts and servlets called during Sling's request processing may
themselves use the <code>RequestProgressTracker</code> to log their own
processing.</p>
+<p>Usually the data collected by the <code>RequestProgressTracker</code> is
just dropped or it may be visible for a certain number of recent requests on
the <em>Recent Requests</em> page of the Web Console. When doing load tests,
though, this Web Console page is of limited use because a lot more requests are
handled than can be displayed in the Web Console.</p>
+<p>This is where the <a
href="http://svn.apache.org/repos/asf/sling/trunk/contrib/extensions/reqanalyzer">Request
Processing Analyzer</a> comes in handy. When deployed as a bundle it registers
as a request level servlet Filter with the Sling Main Servlet. Each request is
logged in a special file (currently fixed at
<code>${sling.home}/logs/requesttracker.txt</code>) with a header line provding
core information on the request:</p>
+<ul>
+<li>Start time stamp in ms since the Epoch</li>
+<li>Request processing time in ms</li>
+<li>Request Method</li>
+<li>Request URL</li>
+<li>Response content type (plus character encoding if available)</li>
+<li>Response Status</li>
+</ul>
+<p>After that first line the complete data from the requests
<code>RequestProgressTracker</code> is dumped.</p>
+<h2 id="analyzing-the-requesttrackertxt-file">Analyzing the
<code>requesttracker.txt</code> file</h2>
+<p>To analyze the <code>requesttracker.txt</code> file the <em>Request
Processing Analyzer</em> module can also be used as a standalone Java
application. Just start the module using the <code>java</code> command:</p>
+<div class="codehilite"><pre><span class="nv">$</span> <span
class="nv">java</span> <span class="o">-</span><span class="n">jar</span> <span
class="n">org</span><span class="o">.</span><span class="n">apache</span><span
class="o">.</span><span class="n">sling</span><span class="o">.</span><span
class="n">reqanalyzer</span><span class="o">-</span><span
class="mf">0.0.1</span><span class="o">-</span><span
class="n">SNAPSHOT</span><span class="o">.</span><span class="n">jar</span>
<span class="n">requesttracker</span><span class="o">.</span><span
class="n">txt</span>
+</pre></div>
+
+
+<p>The command supports two command line arguments:</p>
+<ol>
+<li>The tracker file (required)</li>
+<li>The number of requests to load and display from the file. This second
option is optional and may be used to limit the request information loaded to
the first requests in the file</li>
+</ol>
+<p>After starting and parsing the file, a window is opened showing the core
request information in simple table. This table can be sorted by any of the
columns by clicking on the column title.</p>
+<p>Clicking on any row opens a second window displaying the detail request
progress information as recorded before with the
<code>RequestProgressTracker</code>.</p>
+<p>The size, location, and the widths of the table columns are persisted with
the Java Preferences API and thus when starting the application again, these
settings are preserved.</p>
+ <div class="timestamp" style="margin-top: 30px; font-size: 80%;
text-align: right;">
+ Rev. 1352783 by fmeschbe on Fri, 22 Jun 2012 07:08:33 +0000
+ </div>
+ <div class="trademarkFooter">
+ Apache Sling, Sling, Apache, the Apache feather logo, and the Apache
Sling project
+ logo are trademarks of The Apache Software Foundation. All other marks
mentioned
+ may be trademarks or registered trademarks of their respective owners.
+ </div>
+ </div>
+ </body>
+</html>