我正在使用log4j并希望为同一个包中的不同类创建不同的日志文件,我可以通过使用两个xml文件来执行此操作,但我想通过使用单个xml文件来执行它。
请告诉我这样做的方法。
答案 0 :(得分:2)
使所有应该登录到同一文件的类使用相同的记录器,例如在每个类中放置以下Logger实例:
Logger firstFileLogger= Logger.getLogger("firstFile");
在log4j.xml
声明相应的记录器
<logger name="firstFile>
<level value="debug"/>
<appender-ref ref="firstFileAppender" />
</logger>
并让它登录到相应的文件appender:
<appender name="firstFileAppender" class="org.apache.log4j.RollingFileAppender">
<param name="file" value="firstFile.log"/>
<param name="MaxFileSize" value="100KB"/>
<param name="MaxBackupIndex" value="1"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%p %t %c - %m%n"/>
</layout>
</appender>
对要写入的每个日志文件重复此操作。