我的log4j记录器不想使用log4j.xml
文件进行配置。此文件位于src
文件夹中,如下所示:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration>
<appender name="ROLLING" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="C:\debug\myproject\logfile.log" />
<param name="MaxFileSize" value="10024KB" />
<param name="MaxBackupIndex" value="5" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p %d{dd-MM HH:mm:ss,SSS} (%F:%M:%L) -%m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="FATAL" />
</filter>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="ROLLING" />
</root>
</log4j:configuration>
但是logfile.log仍为空,控制台中没有“DEBUG”行。
注意:它是JBoss 7.1.0上的Java EE项目并使用Struts2。
答案 0 :(得分:1)
以下答案并不完全是我的。它由OP发布在问题本身中,因此我将其转移到此社区wiki答案中。
我通过明确配置日志记录配置解决了这个问题。
请注意,如果使用文件对其进行配置,则无法在运行时更改配置。
答案 1 :(得分:0)
确保log4j.xml文件位于Web应用程序的/WEB-INF/classes
目录中。
答案 2 :(得分:0)
问题在于日志文件。如果使用绝对文件名,请确保用斜杠替换反斜杠。例如
<param name="File" value="C:/debug/myproject/logfile.log" />