如何使用log4j2创建错误日志?

时间:2015-11-24 20:08:34

标签: java logging appender

我如何创建一个错误日志,只有在记录了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>

0 个答案:

没有答案