【问题标题】:Creating new Log file everyday and deleting previous log files每天创建新的日志文件并删除以前的日志文件
【发布时间】:2013-07-10 07:17:13
【问题描述】:

我有一个 Windows 服务。出于该服务的日志记录目的,我正在使用 Log4Net.dll。现在我的要求是我想每天创建一个新的日志文件,它应该只保留前 7 天的日志。表示在第 8 天,它应该删除第一天的文件并使用新文件。我将 appender 用作:

 <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
    <file type="log4net.Util.PatternString" value="D:\Log\%property{LogName}" />
     <AppendToFile value="true" />
     <rollingStyle value="Date" />      
     <maxSizeRollBackups value="100" />       
     <staticLogFileName value="false" />
     <layout type="log4net.Layout.PatternLayout">
       <conversionPattern value="%newline %date %-5level %C.%M() - %message" />
     </layout>
 </appender>

在服务启动时,我将记录器配置为:

log4net.GlobalContext.Properties["LogName"] = "App_" + DateTime.Now.ToString("MMddyyyy") + ".log";
log4net.Config.XmlConfigurator.Configure();   

那么 Log4Net 有什么功能可以实现上述功能吗?或者有没有其他方法可以做到这一点?我们将不胜感激任何类型的帮助。

【问题讨论】:

    标签: c# visual-studio-2010 logging log4net


    【解决方案1】:

    恐怕你不能:RollingFileAppender Class

    在日期/时间边界滚动时的最大备份文件数 不支持

    查看此主题以获得其他建议:Log4Net: set Max backup files on RollingFileAppender with rolling Date

    要每天实现日志文件,你会使用:

    <rollingStyle value="Date" />
    <datePattern value="yyyyMMdd" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-30
      • 1970-01-01
      相关资源
      最近更新 更多