Log4net(三)——RollingFileAppender配置

 


RollingFileAppender配置

log4net的记录介质很多,这里只总结最常用的方式之一:RollingFileAppender。

1.日志文件名是以文件大小进行变换的

  如果日志文件大小到100KB时,就会变换文件名为log.txt.1,log.txt.2,log.txt.3...,后边的数字越大,记录越早,一直到10为止,最新的文件名为一直log.txt。

复制代码
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">  
    <!--日志文件名-->
    <file value="F:/log.txt"/>
    <!--是否在文件中追加,设为false则去将以前的记录覆盖-->
    <appendToFile value="true"/>
    <!--按照文件的大小进行变换日志文件-->
    <rollingStyle value="Size"/>
    <!--最大变换数量-->
    <maxSizeRollBackups value="10"/>
    <!--最大文件大小-->
    <maximumFileSize value="100KB"/>
    <!--日志文件名是否为静态-->
    <staticLogFileName value="true"/>
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
    </layout>
</appender>
复制代码

2.备份的日志文件名以时间命名

  在F:/log/文件夹下,当前的日志名为:At_20180808-1247.log,上一分钟备份的名字At_20180808-1246.log 表示2018年8月8日,12点46分,每分钟备份一次

复制代码
 <appender name="滚动文件输出" type="log4net.Appender.RollingFileAppender">
      <file value="F:/log/At_" />
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <datePattern value="yyyyMMdd-HHmm'.log'" />
      <staticLogFileName value="false" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
复制代码

3.时间和大小混合的方式

  在F:/log/文件夹下,当前的日志时At_20180808-1252.log,这分钟内大小超过2kb时备份为At_20180808-1252.log.1;...,上一分钟日志名为: At_20180808-1251.log , 备份名字为:At_20180808-1251.log.1; ....

 

复制代码
 <appender name="滚动文件输出" type="log4net.Appender.RollingFileAppender">
      <!--日志文件名开头-->
      <file value="F:/log/At_" />
      <!--是否追加到文件-->
      <appendToFile value="true" />
      <!--混合使用日期和文件大小变换日志文件名-->
      <rollingStyle value="Composite" />
      <!--日期的格式-->
      <datePattern value="yyyyMMdd-HHmm'.log'" />
      <!--最大变换数量-->
      <maxSizeRollBackups value="100" />
      <!--最大文件大小-->
      <maximumFileSize value="2kB" />
      <staticLogFileName value="false" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
复制代码

 

 

 

更多内容参考官网:http://logging.apache.org/log4net/release/config-examples.html

 

posted @   捞月亮的猴子  阅读(12179)  评论(3编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示