2010-10-26 100 views
1

我正在使用log4j與RollingFileAppender和也觸發與SizeBasedTriggeringPolicy.log文件的策略分裂,但一個文件拆分的大小11kb,但其他可以增長,無需拆分,當它達到給定的大小,也給wrENCE消息「log4j:WARN失敗post-接近側翻行動」。我不能能解決problem.my lo4j.xml文件由以下配置:問題使用SizeBasedTriggeringPolicy與log4j?

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false"> 
    <appender class="org.apache.log4j.rolling.RollingFileAppender" name="FixedWindowRollingFile"> 
    <param name="Append" value="true"/> 
    <param name="ImmediateFlush" value="true"/> 
    <rollingPolicy class="org.apache.log4j.rolling.FixedWindowRollingPolicy"> 
     <param name="fileNamePattern" value="E:/BonitaMQ_workflow/RequestHandlerService/logs/log_%i.log"/> 
     <param name="minIndex" value="1"/> 
     <param name="maxIndex" value="1"/> 
    </rollingPolicy> 
    <triggeringPolicy class="org.apache.log4j.rolling.SizeBasedTriggeringPolicy"> 
     <param name="MaxFileSize" value="10240"/> 
    </triggeringPolicy> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d{MMM,dd yyyy h:mm:ss a } %p %c{1}:%L - %m%n"/> 
    </layout> 
    </appender> 

    <logger name="com.bonitaservice" additivity="false"> 
    <level value="INFO"/> 
    <appender-ref ref="FixedWindowRollingFile"/> 
    </logger> 

    <root> 
    <priority value="Debug"/> 
    <appender-ref ref="FixedWindowRollingFile"/> 
    </root> 
</log4j:configuration> 

請幫我解決這個問題。

謝謝

回答

0

我有同樣的問題。我沒有完全調查它,但相信它是由FixedWindowRollingPolicy始終至少旋轉一次,這意味着始終存在索引1和索引2這一事實引起的。在您的情況下是log_1.log和log_2.log,即使您的MaxIndex設置爲1.

在我的情況下,將maxIndex增加到2解決了問題。

乾杯, ED

+0

我嘗試了你的建議,但它不適用於我。我的問題是堅持不懈。 – 2010-10-27 12:13:28

1

這種行爲可以通過登錄到多個JVM實例相同的日誌文件引起的。解決辦法是將processid附加到日誌文件名,但我還沒有制定出如何執行此操作。

+0

我在系統中遇到了這個問題,這似乎是問題所在。我懷疑這是一個僅限於Windows的事情:從我可以告訴在一個進程中的日誌記錄停止在另一個進程中移動文件。 – 2012-12-18 00:06:17