2

我目前有一個log4net滾動文件appender,基於應該在每天滾動的日期。它已經這麼做了幾個月沒有問題 - 但在上週它已經開始在一天中的某個時間點覆蓋現有的日誌。當日志文件已經達到10mb左右時,似乎是這樣做的。log4net滾動文件appender(按日期)覆蓋現有文件

這是配置:

<appender name="Standard" type="log4net.Appender.RollingFileAppender"> 
    <file value="..\..\Logs\" /> 
    <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 
    <staticLogFileName value="false" /> 
    <datePattern value="yyyy-MM-dd'.log'" /> 
    <layout type="log4net.Layout.PatternLayout"> 
    <conversionPattern value="%d{yyyy-MM-dd HH:mm} %-5level %message%newline%exception" /> 
    </layout> 
    <filter type="log4net.Filter.LevelRangeFilter"> 
    <levelMin value="DEBUG" /> 
    <levelMax value="WARN" /> 
    </filter> 
</appender> 

我的理論是滾動式的沒有指定,而不是指定的最大大小,併爲每個默認設置是綜合和10MB。因此,當它達到10mb時,它開始翻轉,並且由於靜態日誌文件名被設置爲false,它只是重寫當前文件。

是這樣嗎?或者在這裏工作還有其他問題嗎?我已經添加了

<rollingStyle value="Date"/> 

現在,並且會看到它是如何發生的。但是,解釋爲什麼發生這種情況會很好。

謝謝!

回答

0

看起來我的理論是正確的!默認文件大小爲10mb,默認滾動樣式爲複合。與非靜態文件名相結合,當它達到10mb時,它會轉到相同的文件並重新開始記錄。

0

你總是可以改變你的約會模式

<param name="DatePattern" value="yyyy-MM-dd-hh'.log'" />