用于创建多个日志文件的log4j滚动appender问题

时间:2016-10-25 07:10:22

标签: java logging log4j

我正在使用log4j作为打印日志的应用程序。到目前为止,我只有一个日志文件(比如X.log),并且它在固定大小(例如4 MB)之后开始滚动。现在,我正在尝试将一些特定请求和响应记录到另一个日志文件Y.Log。

我的要求是在4 MB之后也滚动Y.log文件。我正在为X和Y日志使用 滚动文件追加器 。 Y.log将在X.log可用的相同位置创建。

但现在看起来两个日志文件都没有在4 MB之后滚动。它继续附加到相同的日志,并且大小正在增加。下面是我的log4j配置。

<appender name="Xlogfile" class="org.apache.log4j.RollingFileAppender">
    <param name="append" value="true" />
    <param name="file" value="/logs/X.log" />
    <param name="MaxBackupIndex" value="200" />
    <param name="MaxFileSize" value="4MB" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{dd MMM yyyy HH:mm:ss} %5p %c{1} - %m%n"/>
    </layout>
</appender>

<appender name="Ylogfile" class="org.apache.log4j.RollingFileAppender">
    <param name="append" value="true" />
    <param name="file" value="/logs/Y.log" />
    <param name="MaxBackupIndex" value="200" />
    <param name="MaxFileSize" value="4MB" />
    <layout class="org.apache.log4j.PatternLayout">
          <param name="ConversionPattern" value="%d{dd MMM yyyy HH:mm:ss} %5p %c{1} - %m%n"/>
    </layout>
</appender>

<root>
    <level value="INFO"  />
    <appender-ref ref=" Xlogfile " />
    <appender-ref ref=" Ylogfile " />
</root>

有谁能请我为此提供解决方案。提前谢谢。

1 个答案:

答案 0 :(得分:0)

尝试向您的appender添加策略,如下所示:

<Policies>
    <SizeBasedTriggeringPolicy size="4mb"/>
</Policies>