Return-Path:
path
attribute on a Context
element in server.xml
. (markt/kkolinko)
Modified: tomcat/tc6.0.x/trunk/webapps/docs/logging.xml
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/logging.xml?rev=1153703&r1=1153702&r2=1153703&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/webapps/docs/logging.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/logging.xml Wed Aug 3 23:29:41 2011
@@ -85,7 +85,7 @@
by the system and is shared across web applications.
Apache Tomcat has its own implementation of several key elements of @@ -367,10 +367,10 @@ java.util.logging.ConsoleHandler.formatt
-See the following resources for additional information:
org.apache.juli
package.
You may want to take note of the following:
+Consider removing ConsoleHandler
from configuration.
By default (thanks to the .handlers
setting) logging goes
+ both to a FileHandler
and to a ConsoleHandler
.
+ The output of the latter one is usually captured into a file, such as
+ catalina.out
. Thus you end up with two copies of the same
+ messages.
Consider removing FileHandler
s for the applications
+ that you do not use. E.g., the one for host-manager
.
The handlers by default use the system default encoding to write
+ the log files. It can be configured with encoding
property.
+ See Javadoc for details.
Consider configuring an Access + log.
Note, that
-java.util.logging
API is still available, for
- those who use it directly. Removal of the
- ${catalina.base}/conf/logging.properties
file, mentioned
- as one of the steps below, causes it to fallback to the default
- configuration configured in JRE, which is to use a ConsoleHandler and
- do not create any files.Note: The steps described in this section are needed
+ when you want to reconfigure Tomcat to use Apache log4j for its own
+ logging. These steps are not needed if you just want
+ to use log4j in your own web application. — In that case, just
+ put log4j.jar
and log4j.properties
into
+ WEB-INF/lib
and WEB-INF/classes
+ of your web application.
+
The following steps describe configuring log4j to output Tomcat's internal logging.
log4j.properties
with the
+ following content and save it into $CATALINA_BASE/lib
Download or build tomcat-juli.jar
and
+ tomcat-juli-adapters.jar
that are available as an "extras"
+ component for Tomcat. See Additional Components
+ documentation for details.
This tomcat-juli.jar
differs from the default one. It
+ contains the full Apache Commons Logging implementation and thus is
+ able to discover the presense of log4j and configure itself.
If you want to configure Tomcat to use log4j globally:
+$CATALINA_HOME/lib
.$CATALINA_HOME/bin/tomcat-juli.jar
with
+ tomcat-juli.jar
from "extras".tomcat-juli-adapters.jar
from "extras" into
+ $CATALINA_HOME/lib
If you are running Tomcat with separate $CATALINA_HOME and + $CATALINA_BASE and want to configure to use log4j in a single + $CATALINA_BASE only:
+$CATALINA_BASE/bin
and
+ $CATALINA_BASE/lib
directories if they do not exist.
+ $CATALINA_BASE/lib
tomcat-juli.jar
from "extras" as
+ $CATALINA_BASE/bin/tomcat-juli.jar
tomcat-juli-adapters.jar
from "extras" into
+ $CATALINA_BASE/lib
$CATALINA_BASE/conf/catalina.policy
file to adjust
+ it to using a different copy of tomcat-juli.jar.tomcat-juli.jar
in
+ $CATALINA_HOME/bin
is still referenced by manifest of
+ bootstrap.jar
and thus will be implicitly present
+ on Tomcat's classpath. The startup scripts configure
+ $CATALINA_BASE/bin/tomcat-juli.jar
to be earlier on the
+ classpath than bootstrap.jar
, and so it should have
+ higher priority. Thus it should be OK, but
+ consider removing the unneeded copy of tomcat-juli.jar
+ (copy it into all other $CATALINA_BASEs that do not use log4j).
+ Tomcat 7 does not have this issue.Delete $CATALINA_BASE/conf/logging.properties
to
+ prevent java.util.logging generating zero length log files.
$CATALINA_HOME/bin/tomcat-juli.jar
with
- output/extras/tomcat-juli.jar
.output/extras/tomcat-juli-adapters.jar
in
- $CATALINA_HOME/lib.tomcat-juli.jar
and
- tomcat-juli-adapters.jar
go into different
- directories. While the first one goes into bin
, this
- one goes into lib
.$CATALINA_BASE/conf/logging.properties
to
- prevent java.util.logging generating zero length log files.Start Tomcat
@@ -491,7 +540,7 @@ log4j.logger.org.apache.catalina.core.Co individual log file, and everything else goes to the "catalina.log" log file. Each file is rolled-over once per day.
- +You can (and should) be more picky about which packages to include in the logging. Tomcat defines loggers by Engine and Host names. @@ -500,18 +549,19 @@ log4j.logger.org.apache.catalina.core.Co using this naming convention (with square brackets) in log4j XML based configuration files, so we recommend you use a properties file as described until a future version of log4j allows this convention. - +
- Be warned a level of DEBUG will produce megabytes of logging and slow ++ Be warned: a level of DEBUG will produce megabytes of logging and slow startup of Tomcat. This level should be used sparingly when debugging of internal Tomcat operations is required.
- +Your web applications should certainly use their own log4j configuration. This is valid with the above configuration. You would place a @@ -524,20 +574,26 @@ log4j.logger.org.apache.catalina.session bootstrapping guide.
-
- If you have multiple instances of Tomcat, each with a separate
- $CATALINA_BASE
but a shared $CATALINA_HOME
then
- you can configure log4j on a per instance basis by replacing references to
- $CATALINA_HOME
in the above instructions with
- $CATALINA_BASE
. Note that if you do this then you may need to
- make some, or all, of the following additional changes:
-
$CATALINA_BASE/bin
directory$CATALINA_BASE/lib
directory$CATALINA_BASE/conf/catalina.policy
Additional notes
+This exposes log4j libraries to the web applications through the + Common classloader. See class loading + documentation for details.
+Because of that, the web applications and libraries using + Apache Commons Logging + library are likely to automatically choose log4j as the underlying + logging implementation.
The java.util.logging
API is still available, for
+ those web applications that use it directly. The
+ ${catalina.base}/conf/logging.properties
file is still
+ referenced by Tomcat startup scripts.
Removal of ${catalina.base}/conf/logging.properties
+ file, mentioned as one of the steps, just causes
+ java.util.logging
to fallback to the default configuration
+ as configured in JRE, which is to use a ConsoleHandler and do not
+ create any files.