Log4net appender文件名问题

时间:2010-05-14 10:39:46

标签: log4net

我有像这样的appender设置

<appender name="Scheduler_Appender" type="log4net.Appender.RollingFileAppender">
   <file value="c:\temp\ApplicationLog.txt"/>
   <rollingStyle value="Date"/>
   <datePattern value="yyyyMMdd"/>
   <appendToFile value="true"/>
   <staticLogFileName value="true"/>
   <layout type="MinLayout">
    <locationInfo value="true"/>
   </layout>
</appender>

首次创建日志文件时,文件名只是 ApplicationLog.txt 这是正确的。

然而,当记录滚动时 - 生成的文件名是ApplicationLog.txt20100323(例如),而不是ApplicationLog20100323.txt

如何更改配置以便将文件滚动到[FileName] [Date]。[ext]而不是[FileName]。[ext] [Date]

由于

更新

我尝试了这个,只是一些实验,但现在由于某种原因它生成了扩展名为.pxp的文件......

<appender name="Scheduler_Appender" type="log4net.Appender.RollingFileAppender">
            <file value="c:\temp\Scheduler"/>
            <rollingStyle value="Date"/>
            <datePattern value="yyyyMMdd.txt"/>
            <appendToFile value="true"/>
            <staticLogFileName value="false"/>
            <layout type="MinLayout">

            </layout>
        </appender>

3 个答案:

答案 0 :(得分:22)

我相信您想要的设置是PreserveLogFileNameExtension

<appender name="Scheduler_Appender" type="log4net.Appender.RollingFileAppender">
     ...
     <PreserveLogFileNameExtension value="true" />

注意:此属性在当前发布的二进制文件(版本1.2.10.0)中不可用,因此您必须获取最新的源代码并从那里开始。

答案 1 :(得分:6)

<appender name="cheduler_Appender" type="log4net.Appender.RollingFileAppender">
            <file value="c:\temp\Scheduler"/>
            <rollingStyle value="Date"/>
            <datePattern value="yyyyMMdd'.txt'"/>
            <appendToFile value="true"/>
            <staticLogFileName value="false"/>
            <layout type="MinLayout">

            </layout>
        </appender>

答案 2 :(得分:4)

  

尝试这个,它将根据当前日期创建日志文件

     

log filename(相应更改格式):&#34; log- [15-02-2017]。[15.57.1​​0] .log&#34;

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <file type="log4net.Util.PatternString">
        <conversionPattern value="log-[%date{dd-MM-yyyy}].[%date{HH.mm.ss}].log" />
      </file>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%d [%t] %-5p [%logger:%L] - %m%n" />
      </layout>
    </appender>