Log4j: How to use RollingPolicy?
Hi.
I am using weblogic 8.1 application server and log4j v1.2.11.
In the log4j config.xml, I have configured rolling as follows (followed what was given in http://logging.apache.org/log4j/companions/extras/apidocs/org/apache/log4j/rolling/RollingFileAppender.html):
<appender name="ROLL" class="org.apache.log4j.rolling.RollingFileAppender">
<rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
<param name="FileNamePattern" value="C:/log/application.log.%d{yyyy-MM-dd-HH-mm}"/>
</rollingPolicy>
<param name="MaxBackupIndex" value="10"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d:%-7p:%t: %-60m: %-25c{1}%n"/>
</layout>
</appender>
When I use this and start the application server, I get the following error:
log4j:ERROR Element type "rollingPolicy" must be declared.
log4j:ERROR Parsing error on line 157 and column 14
log4j:ERROR The content of element type "appender" must match "(errorHandler?,param*,layout?,filter*,appender-ref*)".
log4j:ERROR Could not create an Appender. Reported error follows.
java.lang.ClassNotFoundException: org.apache.log4j.rolling.RollingFileAppender
at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:141)
I checked the log4j.dtd and found that rollingPolicy has not been defined. That seems to be the reason for this error.
Could you please let me know how I can work around this issue? I want to be able to use rollingPolicy. Do I need to upgrade log4j version?
Any help/pointers will be appreciated.