有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

多日志文件创建的java log4j滚动追加器问题

我正在使用log4j来打印日志。到目前为止,我只有一个日志文件(比如X.log),它在固定大小(比如4MB)后被滚动。现在,我试图将一些特定的请求和响应记录到另一个日志文件Y.log中

我的要求是在4MB之后也滚动Y.log文件。我对X和Y日志都使用了滚动文件appender。Y.log将在X.log可用的相同位置创建

但现在看来,这两个日志文件在4MB之后都不会被滚动。它不断地附加到相同的日志中,并且大小不断增加。下面是我的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) 个答案

  1. # 1 楼答案

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

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