我如何创建一个错误日志,只有在记录了ERROR级别以上的内容时才写入文件?如何在eclipse中将所有日志打印到控制台?
我需要两个appender吗?现在,即使日志类型为INFO而不是ERROR,我的appender也会创建一个新文件。
我的代码:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- Error -->
<appender name="ErrorFile"
class="org.apache.log4j.RollingFileAppender">
<param name="Threshold" value="error"/>
<param name="file" value="./logs/error_report_${file.date.format}.log" />
<param name="Append" value="false" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%d{HH:mm:ss}] [%p] [%c{1}]: %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelMatchFilter">
<param name="LevelToMatch" value="error"/>
<param name="AcceptOnMatch" value="true"/>
</filter>
<filter class="org.apache.log4j.varia.DenyAllFilter"/>
</appender>
<!-- Console -->
<appender name="Console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%p] [%c{1}]: %m%n" />
</layout>
</appender>
<root>
<appender-ref ref="ErrorFile"/>
<appender-ref ref="Console"/>
</root>
</log4j:configuration>