2017-06-21 45 views
0

我一定在做一些愚蠢的事情,但我想不起來(我相信我的問題的核心是PatternString不是動態的,並且在程序啓動時它會被設置一次)。這裏是我的lognet.config文件:爲什麼文件上的日期不滾動?

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> 
     <file type="log4net.Util.PatternString" value="F:\Logs\MonitorService_%date{yyyyMMdd}.log" /> 
     <appendToFile value="true" /> 
     <rollingStyle value="Composite" /> 
     <datePattern value="yyyyMMdd" /> 
     <maxSizeRollBackups value="5" /> 
     <maximumFileSize value="3000MB" /> 
     <filter type="log4net.Filter.LevelRangeFilter"> 
     <levelMin value="DEBUG" /> 
     <levelMax value="FATAL" /> 
     </filter> 
     <layout type="log4net.Layout.PatternLayout"> 
     <param name="ConversionPattern" value="%d [%t] %-5p %c :: %m%n" /> 
     </layout> 
    </appender> 

這似乎是文件,是走出來的一團糟方式:

F:\Logs\MonitorService_20170212.log 
F:\Logs\MonitorService_20170212.log20170613 
F:\Logs\MonitorService_20170212.log20170614 

我想他們出來如下當他們推出的每一天:

F:\Logs\MonitorService_20170612.log 
F:\Logs\MonitorService_20170613.log 
F:\Logs\MonitorService_20170614.log 

我在做什麼錯?

回答

1

有沒有必要把日期放在file元素的valuedatePattern元素確定創建新日誌文件時應用於日誌文件的後綴。

<file type="log4net.Util.PatternString" value="F:\Logs\MonitorService" /> 
<datePattern value="_yyyyMMdd" /> 

這裏,當前日誌文件將被稱爲「MonitorService」和被捲上,該文件將被重新命名爲「MonitorService_20170622」和一個名爲「MonitorService」的新文件將被創建存儲新的日誌消息。

+0

有沒有辦法讓文件名的擴展名爲「.log」? – Denis

相關問題