【问题标题】:Configure log4net RollingFileAppender to roll on size but append datetime?配置 log4net RollingFileAppender 以滚动大小但附加日期时间?
【发布时间】:2015-03-10 01:53:03
【问题描述】:

我想配置我的 log4net 滚动日志附加器,以便我的初始日志文件的名称是:-

log_{current_datetime}.log

当文件达到 25MB 大小时,应以相同格式创建一个新的日志文件,并且不应重命名之前的日志文件。

如何在 log4net appender 上进行这样的设置?

【问题讨论】:

    标签: logging log4net log4net-configuration log4net-appender


    【解决方案1】:

    使用 PatternString 作为文件名:

    <file type="log4net.Util.PatternString" value="log_%date{yyyyMMdd}.log" />

    为了配置滚动大小,请确保指定 RollingStyle 和 MaximumFileSize:

    <rollingStyle value="Size"/>
    <maximumFileSize value="25MB"/>
    

    完整的例子可以在here找到。

    更新:

    不幸的是,文件名中指定的日期仅在配置时评估,这意味着每次滚动都将使用相同的日期,直到重新配置 log4net。我还没有找到解决此问题的方法。

    【讨论】:

      【解决方案2】:

      如果您观看此视频,则会看到有关 rollngFileAppender 的配置示例。 我的示例用法如下。它每天都会创建文件。

      链接:https://www.youtube.com/watch?v=2lAdQ_QwNww

      <appender name="JsonFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="c:\\Log\\.json"/>
      <param name="AppendToFile" value="true"/>
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
      <param name="RollingStyle" value="Date"/>
      <param name="DatePattern" value="'SampleProjectLog_'dd.MM.yyyy"/>
      <param name="StaticLogFileName" value="false"/>
      <preserveLogFileNameExtension value="true" />
      <layout type="OrmanSu.Altyapi.Core.CrossCuttingConcern.Logging.Log4Net.Layouts.JsonLayout" />
      

      【讨论】:

        猜你喜欢
        • 2010-09-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多