[logback-dev] [GIT] Logback: the generic, reliable, fast and flexible logging framework. branch, master, updated. v_0.9.25-35-gbb61e53

added by portage for gitosis-gentoo git-noreply at pixie.qos.ch
Wed Nov 17 22:33:09 CET 2010


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Logback: the generic, reliable, fast and flexible logging framework.".

The branch, master has been updated
       via  bb61e53367abe61a360118f4a43ca45390d06462 (commit)
      from  6d4fb9ec8008f6af55a0bc141221b46633510b7c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.qos.ch/gitweb/?p=logback.git;a=commit;h=bb61e53367abe61a360118f4a43ca45390d06462
http://github.com/ceki/logback/commit/bb61e53367abe61a360118f4a43ca45390d06462

commit bb61e53367abe61a360118f4a43ca45390d06462
Author: Ceki Gulcu <ceki at qos.ch>
Date:   Wed Nov 17 22:31:36 2010 +0100

    ongoing work on the documentation

diff --git a/logback-site/src/site/pages/access.html b/logback-site/src/site/pages/access.html
index 6ae4543..3a0055c 100644
--- a/logback-site/src/site/pages/access.html
+++ b/logback-site/src/site/pages/access.html
@@ -8,11 +8,11 @@
     <link rel="stylesheet" type="text/css" href="css/common.css" />
     <link rel="stylesheet" type="text/css" href="css/screen.css" media="screen" />
     <link rel="stylesheet" type="text/css" href="css/_print.css" media="print" />
-
+    <link rel="stylesheet" type="text/css" href="css/prettify.css" media="screen" />
   </head>
-  <body>
+  <body onload="prettyPrint()">
     <script type="text/javascript">prefix='';</script>
-    
+    <script type="text/javascript" src="js/prettify.js"></script>    
     <script src="templates/header.js" type="text/javascript"></script>
     <div id="left">
       <script src="templates/left.js" type="text/javascript"></script>
@@ -44,23 +44,25 @@
     <a name="tomcat"></a>
 		<h1>Logback-access under Tomcat</h1>
 		
-		<p>To use logback-access with Tomcat, after downloading the logback
-		distribution, place the files <em>logback-core-${project.version}.jar</em>
-		and <em>logback-access-${project.version}.jar</em> under
-		$TOMCAT_HOME/<b>server/lib/</b> directory, where $TOMCAT_HOME is
-		the folder where you have installed Tomcat. We have tested
-		logback-access with Tomcat versions 5.5.26 and 6.0.20.
+		<p>To use logback-access with Tomcat, after downloading the
+		logback distribution, place the files
+		<em>logback-core-${project.version}.jar</em> and
+		<em>logback-access-${project.version}.jar</em> under
+		$TOMCAT_HOME/lib/ directory, where $TOMCAT_HOME is the folder
+		where you have installed Tomcat. We have tested logback-access
+		with Tomcat version 6.0.20.
 		</p>
 
-    <p>Place the logback-core and logback-access jars in
+    <!--
+    <p>If you placed logback-core and logback-access jars in
     $TOMCAT_HOME/lib <em>and</em> your webapps do not use
     logback-classic, then everything should be fine. If however your
     webapps do indeed use logback-classic, in addition to
-    <em>logback-classic.jar</em>,w make sure to bundle
+    <em>logback-classic.jar</em>, make sure to bundle
     <code>logback-core.jar</code> under your webapps' WEB-INF/lib
     directory as well.
     </p>
-		
+    -->
 
 		<h2>LogbackValve</h2>
 
@@ -77,7 +79,7 @@
 		add the following lines to the tomcat server configuration file,
 		namely <em>$TOMCAT_HOME/conf/server.xml</em>:
 		</p>
-		<div class="source"><pre>&lt;Valve className="ch.qos.logback.access.tomcat.LogbackValve"/></pre></div>
+		<pre class="source">&lt;Valve className="ch.qos.logback.access.tomcat.LogbackValve"/></pre>
 
 		<p>This line is usually nested within an <code>&lt;Engine></code>
 		or <code>&lt;Host></code> element.
@@ -112,8 +114,8 @@
     the logback-access configuration file. Here is an example.
     </p>
 
-   <p class="source">&lt;Valve className="ch.qos.logback.access.tomcat.LogbackValve"
-       quiet="true" filename="c:/my-logback-access.xml"/></p>
+   <pre class="prettyprint source">&lt;Valve className="ch.qos.logback.access.tomcat.LogbackValve"
+       quiet="true" filename="c:/my-logback-access.xml"/></pre>
 
     <h3><a name="viewingStatusMessages"
     href="#viewingStatusMessages">Viewing status messages</a></h3>
@@ -132,7 +134,7 @@
     <p>To add this servlet to your web-application, add the following
     lines to its <em>WEB-INF/web.xml</em> file.</p>
 
-    <p class="source">  &lt;servlet>
+    <pre class="prettyprint source">  &lt;servlet>
     &lt;servlet-name>AccessViewStatusMessages&lt;/servlet-name>
     &lt;servlet-class>ch.qos.logback.access.ViewStatusMessagesServlet&lt;/servlet-class>
   &lt;/servlet>
@@ -140,7 +142,7 @@
   &lt;servlet-mapping>
     &lt;servlet-name>AccessViewStatusMessages&lt;/servlet-name>
     &lt;url-pattern>/lbAccessStatus&lt;/url-pattern>
-  &lt;/servlet-mapping></p>
+  &lt;/servlet-mapping></pre>
    
     <p>The <code>ViewStatusMessages</code> servlet will available
     under the URL <code>http://host/yourWebapp/lbAccessStatus</code>
@@ -180,13 +182,13 @@
 		jetty's main configuration file, namely
 		<em>$JETTY_HOME/etc/jetty.xml</em>:
 		</p>
-		<div class="source"><pre>&lt;Ref id="requestLog"&gt;
+		<pre class="prettyprint source">&lt;Ref id="requestLog"&gt;
   &lt;Set name="requestLog"&gt;
     &lt;New id="requestLogImpl"
       class="ch.qos.logback.access.jetty.RequestLogImpl"&gt;
     &lt;/New&gt;
   &lt;/Set&gt;
-&lt;/Ref&gt;</pre></div>
+&lt;/Ref&gt;</pre>
 
 		<p>By default, <code>RequestLogImpl</code> looks for a logback
 		configuration file called <em>logback-access.xml</em>, in the same
@@ -202,60 +204,61 @@
 		<em>logback-access.xml</em> configuration file.
 		</p>
 		
-    <div class="source"><pre>&lt;Ref id="requestLog"&gt;
+    <pre class="prettyprint source">&lt;Ref id="requestLog"&gt;
   &lt;Set name="requestLog"&gt;
     &lt;New id="requestLogImpl"
       class="ch.qos.logback.access.jetty.RequestLogImpl"&gt;
     &lt;/New&gt;
     &lt;Set name="fileName"&gt;path/to/myaccess.xml&lt;/Set&gt;
   &lt;/Set&gt;
-&lt;/Ref&gt;</pre></div>
+&lt;/Ref&gt;</pre>
 
   <a name="configuration"></a>
 	<h1>Logback-access configuration</h1>
 	
-  <p>Although similar, the <em>logback-access.xml</em> file is slightly
-  different than its more common counterpart in logback-classic.
-  Appenders and Layouts are declared the exact same way. However, in
-  the access module there is no notion of loggers and consequently
-  logger elements are disallowed in logback-access configuration
-  files.
+  <p>Although similar, the format of <em>logback-access.xml</em>
+  configuration file is slightly different than the configuration file
+  format logback-classic.  Appenders and Layouts are declared the
+  exact same way. However, in the access module there is no notion of
+  loggers and consequently logger elements are disallowed.
 	</p>
 
+
     <h3>Example 1: basic logback-access configuration</h3>
 		<p>
 			Here is a small but fully functional <em>logback-access.xml</em>
 			configuration file:
 		</p>
-<div class="source"><pre>&lt;configuration&gt;
-  &lt;appender name="STDOUT"
-    class="ch.qos.logback.core.ConsoleAppender"&gt;
-    &lt;layout
-      class="ch.qos.logback.access.PatternLayout"&gt;
-      &lt;Pattern>%h %l %u %user %date "%r" %s %b&lt;/Pattern&gt;
-    &lt;/layout&gt;
+    <pre class="prettyprint source">&lt;configuration&gt;
+  &lt;!-- always a good activate OnConsoleStatusListener -->
+  &lt;statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />  
+
+  &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"&gt;
+    &lt;encoder&gt;
+      &lt;pattern>%h %l %u %user %date "%r" %s %b&lt;/pattern&gt;
+    &lt;/encoder&gt;
   &lt;/appender&gt;
 
   &lt;appender-ref ref="STDOUT" /&gt;
-&lt;/configuration&gt;</pre></div>
+&lt;/configuration&gt;</pre>
 		<p>
 		It declares a <code>ConsoleAppender</code> which prints its output
-		on the console.  The <code>ConsoleAppender</code> contains a
-		<code>PatternLayout</code> object responsible to format this
-		output. The log format is specified by the "%h %l %u %user %date
-		"%r" %s %b" pattern which incidentally corresponds to Common Log
-		Format (CLF). This format is recognized by log analyzers such as
-		<a href="http://www.analog.cx/">Analog</a> or <a
-		href="http://awstats.sourceforge.net/">AWStats</a>. 
+		on the console.  The <code>ConsoleAppender</code> contains an
+		<code>Encoder</code> object responsible for formatting output. The
+		log format is specified by the "%h %l %u %user %date "%r" %s %b"
+		pattern which incidentally corresponds to the Common Log Format
+		(CLF). This format is recognized by log analyzers such as <a
+		href="http://www.analog.cx/">Analog</a> or <a
+		href="http://awstats.sourceforge.net/">AWStats</a>.
 		</p>
 
     <p>The words "common" or "clf" are interpreted as shorthands for
     the said pattern. Thus, the following are all equivalent:
     </p>
     
-    <div class="source"><pre>&lt;Pattern>%h %l %u %user %date "%r" %s %b&lt;/Pattern&gt;
-&lt;Pattern>common&lt;/Pattern&gt;
-&lt;Pattern>clf&lt;/Pattern&gt;</pre></div>
+    <pre class="prettyprint source">&lt;pattern>%h %l %u %user %date "%r" %s %b&lt;/pattern&gt;
+&lt;pattern>common&lt;/pattern&gt;
+&lt;pattern>clf&lt;/pattern&gt;</pre>
 
   <p>The so called "combined" format is also widely recognized. It is
   defined as the '%h %l %u %t "%r" %s %b "%i{Referer}"
@@ -263,15 +266,15 @@
   "combined" as a shorthand. Thus, the following directive
   </p>
 
-  <div class="source"><pre>&lt;layout class="ch.qos.logback.access.PatternLayout"&gt;
-  &lt;Pattern>%h %l %u %t "%r" %s %b "%i{Referer}" "%i{User-Agent}"&lt;/Pattern&gt;
-&lt;/layout&gt;</pre></div>
+  <pre class="prettyprint source">&lt;encoder&gt;
+  &lt;pattern>%h %l %u %t "%r" %s %b "%i{Referer}" "%i{User-Agent}"&lt;/pattern&gt;
+&lt;/encoder&gt;</pre>
 
   <p>is equivalent to:</p>
 
-  <div class="source"><pre>&lt;layout class="ch.qos.logback.access.PatternLayout"&gt;
-  &lt;Pattern>combined&lt;/Pattern&gt;
-&lt;/layout&gt;</pre></div>
+  <pre class="prettyprint source">&lt;encoder&gt;
+  &lt;pattern>combined&lt;/pattern&gt;
+&lt;/encoder&gt;</pre>
 
 
     <h3>Example 2: RollingFileAppender</h3>
@@ -279,26 +282,27 @@
 		<p>The configuration file below configures a daily rolling
 		<code>RollingFileAppender</code>. Note that due to the
 		<em>.zip</em> suffix included in the value for <span
-		class="option">FileNamePattern</span> option, the log file are not
+		class="option">fileNamePattern</span> option, the log file are not
 		only rolled daily, but they are also automatically compressed.</p>
 
 
-<div class="source"><pre>&lt;configuration&gt;
-  &lt;appender name="FILE"
-    class="ch.qos.logback.core.rolling.RollingFileAppender"&gt;
-    &lt;File&gt;access.log"&lt;/File&gt;
-    &lt;rollingPolicy
-      class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"&gt;
-      &lt;FileNamePattern&gt;access.%d{yyyy-MM-dd}.log.zip&lt;/FileNamePattern&gt;
+ <pre class="prettyprint source">&lt;configuration&gt;
+  &lt;!-- always a good activate OnConsoleStatusListener -->
+  &lt;statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />  
+
+  &lt;appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"&gt;
+    &lt;file&gt;access.log&lt;/file&gt;
+    &lt;rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"&gt;
+      &lt;fileNamePattern&gt;access.%d{yyyy-MM-dd}.log.zip&lt;/fileNamePattern&gt;
     &lt;/rollingPolicy&gt;
 
-    &lt;layout class="ch.qos.logback.access.PatternLayout"&gt;
-      &lt;Pattern&gt;combined&lt;/Pattern&gt;
-    &lt;/layout&gt;
+    &lt;encoder&gt;
+      &lt;pattern&gt;combined&lt;/pattern&gt;
+    &lt;/encoder&gt;
   &lt;/appender&gt;
  
   &lt;appender-ref ref="FILE" /&gt;
-&lt;/configuration&gt;</pre></div>
+&lt;/configuration&gt;</pre>
 		
     <p>These two examples should give you an idea of the possibilities
     offered by logback-access. In principle, most if not all of the
@@ -344,7 +348,7 @@ CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
 		Tomcat via the JConsole application, which can be started with the
 		following command:
 		</p>
-<div class="source"><pre>jconsole</pre></div>
+    <pre class="source">jconsole</pre>
 
 		<p>If you prefer MX4J to access your components via a web-based
 		interface, here is a short summary of the steps to follow. After
@@ -363,24 +367,21 @@ CATALINA_OPTS="$CATALINA_OPTS -Djavax.management.builder.initial=mx4j.server.MX4
 &lt;!-- in the "Add on extra jar files to CLASSPATH" section -->
 CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/mx4j-impl.jar</pre></div>
 
-		<p>
-			Finally, declare a new <code>Connector</code> in the
-			<em>$TOMCAT_HOME/conf/server.xml</em> file:
-		</p>
+		<p>Finally, declare a new <code>Connector</code> in the
+			<em>$TOMCAT_HOME/conf/server.xml</em> file: </p>
 		
-<div class="source"><pre>&lt;Connector port="8050" 
+    <pre class="prettyprint source">&lt;Connector port="8050" 
   handler.list="mx"
   mx.enabled="true" 
   mx.httpHost="localhost" 
   mx.httpPort="8082" 
-  protocol="AJP/1.3" /></pre></div>
+  protocol="AJP/1.3" /></pre>
   
-  	<p>
-  		Once Tomcat is started, you should be able to reach your JMX
+  	<p> Once Tomcat is started, you should be able to reach your JMX
   		components by pointing your browser at the following URL:
   	</p>
 
-<div class="source"><pre>http://localhost:8082/</pre></div>
+    <pre class="source">http://localhost:8082/</pre>
 
 		<h3>Configuring Jetty</h3>
 		
@@ -390,7 +391,7 @@ CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/mx4j-impl.jar</pre></div>
 			added:
 		</p>
 
-<div class="source"><pre>&lt;Call id="MBeanServer" class="java.lang.management.ManagementFactory" name="getPlatformMBeanServer"/>
+    <pre class="prettyprint source">&lt;Call id="MBeanServer" class="java.lang.management.ManagementFactory" name="getPlatformMBeanServer"/>
 &lt;!-- initialize the Jetty MBean container -->
 &lt;Get id="Container" name="container">
   &lt;Call name="addEventListener">
@@ -402,12 +403,12 @@ CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/mx4j-impl.jar</pre></div>
       &lt;/New>
     &lt;/Arg>
   &lt;/Call>
-&lt;/Get></pre></div>
+&lt;/Get></pre>
 
 		<p>Once Jetty is started with this configuration, all available
 		components can be reviewed at:
 		</p>
-<div class="source"><pre>http://localhost:8082/</pre></div>
+    <pre class="prettyprint source">http://localhost:8082/</pre>
 
 		<p>Logback-access' <code>RequestLogImpl</code> should be
 		available, including its <code>start()</code> and
@@ -427,43 +428,42 @@ CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/mx4j-impl.jar</pre></div>
 		declare it, as any other filter:
 		</p>
 
-<div class="source"><pre>&lt;configuration>
+    <pre class="prettyprint source">&lt;configuration>
   <b>&lt;filter class="ch.qos.logback.access.filter.CountingFilter">
     &lt;name>countingFilter&lt;/name>
   &lt;/filter></b>
 
-  &lt;appender name="STDOUT"
-    class="ch.qos.logback.core.ConsoleAppender">
-    &lt;layout class="ch.qos.logback.access.PatternLayout">
-      &lt;Pattern>%h %l %u %t \"%r\" %s %b&lt;/Pattern>
-    &lt;/layout>
+  &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+    &lt;encoder>
+      &lt;pattern>%h %l %u %t \"%r\" %s %b&lt;/pattern>
+    &lt;/encoder>
   &lt;/appender>
 
   &lt;appender-ref ref="STDOUT" />
-&lt;/configuration></pre></div>
+&lt;/configuration></pre>
 
-		<p>
-			This component registers itself to the JMX server and publishes
-			the statistical data such as averages by minute, by hour, by
-			day, by week, and by month. Last month's, week's, day's, hour's
-			and minute's counts as well as the total number of access are
-			also exposed.      
+		<p>This component registers itself to the JMX server and publishes
+		the statistical data such as averages by minute, by hour, by day,
+		by week, and by month. Last month's, week's, day's, hour's and
+		minute's counts as well as the total number of access are also
+		exposed.
 		</p>
 
 
- <h2><code>TeeFilter</code></h2>
+    <h2><a name="teeFilter" href="#teeFilter"><code>TeeFilter</code></a></h2>
 
- <p>For debugging purposes, it is often handy to capture the client
- request as well as the server response as is. The
- <code>TeeFilter</code> was designed precisely for this purpose.
- </p>
+    <p>In order to diagnose bugs in a web-application, it is often
+    handy to capture the client's request as well as the server's
+    response as is. The <code>TeeFilter</code> was designed precisely
+    for this purpose.
+    </p>
  
- <p>The <code>TeeFilter</code> is a regular servlet filter. Like other
- servlet filters, it needs to be declared in your web-application's
- <em>web.xml</em> file:
-</p>
+    <p>The <code>TeeFilter</code> is a regular servlet filter. Like other
+    servlet filters, it needs to be declared in your web-application's
+    <em>web.xml</em> file:
+    </p>
 
-<div class="source">&lt;filter&gt;
+    <pre class="prettyprint source">&lt;filter&gt;
   &lt;filter-name&gt;TeeFilter&lt;/filter-name&gt;
   &lt;filter-class&gt;ch.qos.logback.access.servlet.TeeFilter&lt;/filter-class&gt;
 &lt;/filter&gt;
@@ -471,18 +471,16 @@ CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/mx4j-impl.jar</pre></div>
 &lt;filter-mapping&gt;
   &lt;filter-name&gt;TeeFilter&lt;/filter-name&gt;
   &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
-&lt;/filter-mapping&gt;
-</div>
+&lt;/filter-mapping&gt;</pre>
 
   <p>We have tested <code>TeeFilter</code> to the best of our
   ability. However, since it duplicates the input stream of the
   request and the output stream of the response, it may interfere with
-  your application. For large input or output, it will add measurable
-  latency. Although we have already fixed all currently known bugs,
-  <code>TeeFilter</code> has broken otherwise correctly behaving
-  applications. Thus, in case of doubt, do not hesitate to disable
-  <code>TeeFilter</code>.
-  
+  your application. Moreover, for large input or output sizes, it will
+  add measurable latency. Although we have already fixed all currently
+  known bugs, <code>TeeFilter</code> has broken otherwise correctly
+  behaving applications in the past. Thus, in case of doubt, do not
+  hesitate to disable <code>TeeFilter</code>.  
   </p>
 
   <p>Once <code>TeeFilter</code> is installed, the <a
@@ -496,7 +494,7 @@ CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/mx4j-impl.jar</pre></div>
   output the full contents of the request and response on the console.
   </p>
 
-  <p class="source">&lt;configuration&gt;
+  <pre class="prettyprint source">&lt;configuration&gt;
   &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"&gt;
     &lt;layout class="ch.qos.logback.access.PatternLayout"&gt;      
       &lt;Pattern&gt;%fullRequest%n%n%fullResponse&lt;/Pattern&gt;
@@ -504,15 +502,16 @@ CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/mx4j-impl.jar</pre></div>
   &lt;/appender&gt;
 	
   &lt;appender-ref ref="STDOUT" /&gt;
-&lt;/configuration&gt;</p>
+&lt;/configuration&gt;</pre>
 
-  <p>Few clicks accessing the <a href="demo.html">logback-demo</a>
-  application configured as outlined above, yields:</p>
+  <p>Here is the output generated when accessing the <a
+  href="demo.html">logback-demo</a> application configured as shown
+  above, yields:</p>
 
   <p class="source"><b>GET /logback-demo/index.jsp HTTP/1.1</b>
 Host: localhost:8080
-User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.11) Gecko/20070312 Firefox/1.5.0.11
-Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
+User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20070312 Firefox/1.5.0
+Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8
 Accept-Language: en-us,en;q=0.5
 Accept-Encoding: gzip,deflate
 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
@@ -542,6 +541,43 @@ Set-Cookie: JSESSIONID=bgebt99ce9om;path=/logback-demo
   <p>&nbsp;</p>
 
 
+  <p>As mentioned previously, while extremely useful during problem
+  hunting, <code>TeeFilter</code> can introduce new problems.
+  Consequently, we do not recommend having <code>TeeFilter</code>
+  active in production systems. In order to avoid shipping different
+  code for test and production environments, <code>TeeFilter</code>
+  supports <code>includes</code> and <code>excludes</code> parameters.
+  <code>TeeFilter</code> will be active if the current host is listed
+  in the includes list and absent in the excludes list. An empty
+  includes list is interepreted as to contain all possible host names
+  in the universe.
+  </p>
+
+  <p>To enable <code>TeeFilter</code> only on the hosts named "orion"
+  and "gemini" and disabled elsewhere you would write:</p>
+
+  <pre class="prettyprint source">&lt;filter>
+  &lt;filter-name>TeeFilter&lt;/filter-name>
+  &lt;filter-class>ch.qos.logback.access.servlet.TeeFilter&lt;/filter-class>
+  &lt;init-param>
+    &lt;param-name>includes&lt;/param-name>
+    &lt;param-value>orion, gemini&lt;/param-value>
+  &lt;/init-param>
+&lt;/filter>  </pre>
+
+  <p>To enable <code>TeeFilter</code> on all hosts <em>except</em>
+  hosts named "orion" and "gemini" you would write:</p>
+
+  <pre class="prettyprint source">&lt;filter>
+  &lt;filter-name>TeeFilter&lt;/filter-name>
+  &lt;filter-class>ch.qos.logback.access.servlet.TeeFilter&lt;/filter-class>
+  &lt;init-param>
+    &lt;param-name>excludes&lt;/param-name>
+    &lt;param-value>orion, gemini&lt;/param-value>
+  &lt;/init-param>
+&lt;/filter>  </pre>
+    
+
   <script src="templates/footer.js" type="text/javascript"></script>
 </div>
 
diff --git a/logback-site/src/site/pages/reasonsToSwitch.html b/logback-site/src/site/pages/reasonsToSwitch.html
index cdb0b78..ed2bcd3 100644
--- a/logback-site/src/site/pages/reasonsToSwitch.html
+++ b/logback-site/src/site/pages/reasonsToSwitch.html
@@ -251,6 +251,18 @@ java.lang.Exception: 99 is invalid
     files older than 12 months will be automatically removed.
     </p>
 
+
+    <h3><a name="logbackAccess" href="#logbackAccess">Logback-access,
+    i.e. HTTP-access logging with brains, is an integral part of
+    logback</a></h3>
+
+    <p>Last but not least, the logback-access module, part of the
+    logback distribution, integrates with Servlet containers such as
+    Jetty or Tomcat to provide rich and powerful HTTP-access log
+    functionality. Since logback-access was part of the initial
+    design, all the logback-classic features you came love are
+    available in logback-access as well.</p>
+
     <h3><a name="inSummary" href="#inSummary">In summary</a></h3>
 
     <p>We have listed a number of reasons for preferring logback over

-----------------------------------------------------------------------

Summary of changes:
 logback-site/src/site/pages/access.html          |  262 ++++++++++++----------
 logback-site/src/site/pages/reasonsToSwitch.html |   12 +
 2 files changed, 161 insertions(+), 113 deletions(-)


hooks/post-receive
-- 
Logback: the generic, reliable, fast and flexible logging framework.


More information about the logback-dev mailing list