【问题标题】:Log4net - Create new log file each time application is startedLog4net - 每次启动应用程序时创建新的日志文件
【发布时间】:2011-06-13 07:49:19
【问题描述】:

我们可以在每次运行应用程序时创建单独的日志文件吗?如果我运行我的应用程序 2 次,我应该得到 2 个单独的日志文件,希望文件名可以附加创建的日期时间

例如:
log_0830 - 当应用程序在上午 8:30 运行时
log_2130 - 当应用程序在晚上 9:30 运行时

【问题讨论】:

标签: log4net log4net-configuration


【解决方案1】:

把它放到你的 app.config 中:

 <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
 </configSections>
 <log4net>
    <appender name="file" type="log4net.Appender.RollingFileAppender">
      <file value="log_"/>
      <rollingStyle value="Date"/>
      <datePattern value="HHmm.\tx\t"/>
      <staticLogFileName value="false"/>
      <appendToFile value="true" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date %-5level %message%newline" />
      </layout>      
    </appender>
    <root>
      <level value="ALL"/>
      <appender-ref ref="file"/>
    </root>
  </log4net>

该配置会产生文件名:
log_0830.txt - 当应用程序在上午 8:30 运行时
log_2130.txt - 当应用程序在晚上 9:30 运行时

【讨论】:

    【解决方案2】:

    我相信你可以在这样的配置中做到这一点:

    <appender name="LogFileAppender" type="log4net.Appender.FileAppender"> 
        <file type="log4net.Util.PatternString" value="log-file-%d [%t].txt" /> 
        <layout type="log4net.Layout.PatternLayout" value="%date [%thread] %-5level %logger - %message%newline" /> 
    </appender> 
    

    【讨论】:

      猜你喜欢
      • 2015-02-09
      • 2011-06-06
      • 2017-11-21
      • 1970-01-01
      • 1970-01-01
      • 2021-06-02
      • 2017-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多