Log4j 1.2在翻转期间重新启动应用程序时,TimeBasedRollingPolicy无法翻转文件

时间:2014-08-08 19:32:46

标签: logging log4j rollingfileappender

我们在RollingFileAppender上使用TimeBasedRollingPolicy来每天滚动日志。我注意到在我们的服务器重启(通常跨越午夜)的日子里,滚动文件中出现了一些空白。随后的滚动有两天的日志。

TimeBasedRollingPolicy是否考虑了跨越正常滚动窗口的停机时间?有没有办法解决这个问题而无需编写自定义策略?

我们正在使用预先打包的框架(Liferay),并在其lib中注入自定义jar并不理想。


Log4j:1.2.16,Log4j-extras:1.1

<appender name="EXAMPLE" class="org.apache.log4j.rolling.RollingFileAppender">
    <param name="file" value="/example/logs/example.log" />

    <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
        <param name="FileNamePattern" value="/example/logs/example.%d{yyyy-MM-dd}.log.gz" />
    </rollingPolicy>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyyMMddHHmmssSSS}|%m%n" />
    </layout>
</appender>

<appender name="EXAMPLE-ASYNC" class="org.apache.log4j.AsyncAppender">
    <param name="BufferSize" value="500"/>
    <appender-ref ref="EXAMPLE"/>
</appender>

<logger name="com.company.example" additivity="false">
    <level value="INFO" />
    <appender-ref ref="EXAMPLE-ASYNC" />
</logger>

Here是有关常见翻转问题的log4j 1.2常见问题解答,均不适用。

0 个答案:

没有答案