How to use Log4j to create log files using file appender in a
Servlet? Also, how to make that Servlet read the log4j.properties file?
I have tried following:
My web.xml( I use Eclipse europa)
-
<?xml version="1.0" encoding="UTF-8"?>
-
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
-
-
<display-name>ClientSkill_Log4j</display-name>
-
-
<welcome-file-list>
-
-
<welcome-file>index.html</welcome-file>
-
-
<welcome-file>index.htm</welcome-file>
-
-
<welcome-file>index.jsp</welcome-file>
-
-
<welcome-file>default.html</welcome-file>
-
-
<welcome-file>default.htm</welcome-file>
-
-
<welcome-file>default.jsp</welcome-file>
-
-
</welcome-file-list>
-
-
-
-
<servlet>
-
-
<description>Description</description>
-
-
<display-name>Display name</display-name>
-
-
-
<servlet-name>ClientSkillServlet</servlet-name>
-
-
<servlet-class>HTML_Generator</servlet-class>
-
-
-
-
<init-param>
-
-
<param-name>log4j.properties</param-name>
-
-
<param-value>WEB-INF/log4j.properties</param-value>
-
-
</init-param>
-
-
</servlet>
-
-
-
-
<servlet-mapping>
-
-
<servlet-name>ClientSkillServlet</servlet-name>
-
-
<url-pattern>/</url-pattern>
-
-
</servlet-mapping>
-
</web-app>
-
My log4j.properties file:-
-
-
# Configures Log4j as the Tomcat system logger
-
#
-
#
-
# Configure the logger to output info level messages into a log file.
-
#
-
log4j.rootLogger=INFO, R
-
#
-
# To continue using the "catalina.out" file (which grows forever),
-
# comment out the above line and uncomment the next.
-
#
-
log4j.rootLogger=ERROR, A1
-
#
-
# Configuration for standard output ("catalina.out").
-
#
-
log4j.appender.A1=org.apache.log4j.ConsoleAppender
-
log4j.appender.A1.layout=org.apache.log4j.PatternL ayout
-
#
-
# Print the date in ISO 8601 format
-
#
-
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
-
#
-
# Configuration for a rolling log file ("tomcat.log").
-
#
-
log4j.appender.R=org.apache.log4j.FileAppender
-
# Edit the next line to point to your logs directory.
-
# The last part of the name is the log file name.
-
#
-
log4j.appender.R.File=D:\DATA\tomcat.log
-
log4j.appender.R.layout=org.apache.log4j.PatternLa yout
-
#
-
# Print the date in ISO 8601 format
-
#
-
log4j.appender.R.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
-
# Application logging options
-
#
-
#log4j.logger.org.apache=DEBUG
-
#log4j.logger.org.apache=INFO
-
#log4j.logger.org.apache.struts=DEBUG
-
#log4j.logger.org.apache.struts=INFO
-
and My servlet code is:
Thanks in advance,
Kedar