The Jakarta Project
    The Tomcat Servlet/JSP Container

Links

Top Level Elements

Connectors

Containers

Nested Components

Server Configuration Reference

The Logger Component

Printer Friendly Version
print-friendly
version
Introduction

Tomcat uses the Commons Logging package to implement all logging. This includes the logging defined by ServletContext.log.

If you are interested in producing access logs like a web server does (for example, to run hit count analysis software), you will want to configure an Access Log Valve component on your Engine, Host, or Context.

The description below uses the variable name $CATALINA_HOME to refer to the directory into which you have installed Tomcat 5, and is the base directory against which most relative paths are resolved. However, if you have configured Tomcat 5 for multiple instances by setting a CATALINA_BASE directory, you should use $CATALINA_BASE instead of $CATALINA_HOME for each of these references.

Using Log4j

One of the options for logging is to use the Log4j package to implement the logging for Tomcat. The simplest way to do this is to copy the log4j-x.x.x.jar and the commons-logging.jar to $CATALINA_HOME/common/lib. The log4j.xml file can then be placed in $CATALINA_HOME/common/classes. An example configuration is:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration  xmlns:log4j='http://jakarta.apache.org/log4j/'>

	<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
           <layout class="org.apache.log4j.PatternLayout">
             <param name="ConversionPattern"
		    value="%d %-5p [%t] %c (%F:%L) - %m%n"/>
           </layout>	    
	</appender>
        <appender name="catalina" 
                     class="org.apache.log4j.DailyRollingFileAppender">
          <param name="File" 
                    value="${catalina.home}/logs/catalina_log.txt" />
          <param name="DatePattern" value="'.'yyy-MM-dd" />
           <layout class="org.apache.log4j.PatternLayout">
             <param name="ConversionPattern"
		    value="%-5p %d - %m%n"/>
           </layout>	    
        </appender>
        <appender name="localhost" 
                     class="org.apache.log4j.DailyRollingFileAppender">
          <param name="File" 
                    value="${catalina.home}/logs/localhost_log.txt" />
          <param name="DatePattern" value="'.'yyy-MM-dd" />
           <layout class="org.apache.log4j.PatternLayout">
             <param name="ConversionPattern"
		    value="%-5p %d - %m%n"/>
           </layout>	    
        </appender>
        <appender name="localhost.admin" 
                     class="org.apache.log4j.DailyRollingFileAppender">
          <param name="File" 
                    value="${catalina.home}/logs/localhost_admin_log.txt" />
          <param name="DatePattern" value="'.'yyy-MM-dd" />
           <layout class="org.apache.log4j.PatternLayout">
             <param name="ConversionPattern"
		    value="%-5p %d - %m%n"/>
           </layout>	    
        </appender>
	
	<category 
             name="org.apache.catalina.core.ContainerBase.[Catalina]" 
             additivity="false">
	  <priority value="info" />
          <appender-ref ref="catalina" />
	</category>
	<category 
            name="org.apache.catalina.core.ContainerBase.[Catalina].[localhost]" 
            additivity="false">
	  <priority value="info" />
          <appender-ref ref="localhost" />
	</category>
	<category 
           name="org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin]" 
           additivity="false">
	  <priority value="info" />
          <appender-ref ref="localhost.admin" />
	</category>
	
	<root>
	   <priority value ="info" />
   	   <appender-ref ref="STDOUT" />
	</root>
	
</log4j:configuration>
     
Using JDK1.4 logging

TO DO


Copyright © 1999-2003, Apache Software Foundation