zoukankan      html  css  js  c++  java
  • log4net按时间日期,文件大小和个数生成日志文件

    从启动模板生成的基于ABP的应用默认使用的log4net日志框架,当然你也可以使用其他的日志框架。

    ABP默认的log4net.config配置文件配置的很简单,将所有的日志都写到了一个txt文件中,下面分享一下我的日志配置文件。

    配置文件代码

    
    <?xml version="1.0" encoding="utf-8" ?>
    <log4net>
      <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" >
         <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
        <file value="Logs/" />
        <datePattern value="yyyyMMdd-HH'.txt'"/>
        <appendToFile value="true" />
        <!--<rollingStyle value="Date" />-->
        <staticLogFileName value="false"/>
        <rollingStyle value="Composite" />
        <maxSizeRollBackups value="10"/>
        <maximumFileSize value="1MB"/>
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%-5level %date [%-5.5thread] %-40.40logger - %message%newline" />
        </layout>
      </appender>
      <root>
        <appender-ref ref="RollingFileAppender" />
        <level value="DEBUG" />
      </root>
      <logger name="NHibernate">
        <level value="WARN" />
      </logger>
    </log4net>
    
    

    解释

    这里只解释几个稍微不一样的地方,其他的大家可自己搜索资料学习。

    • <datePattern value="yyyyMMdd-HH'.txt'"/>日期模式,这个会生成到文件名中,注意这里是日期(变量)和文件后缀.txt(常量)的组合,其中常量是带单引号的。
    • <staticLogFileName value="false"/>是否设置为静态日志文件名,这里如果不设置的话,上面的配置不会起作用。
    • <rollingStyle value="Composite" /> 复合(日期和文件大小)滚动样式。
    • <maxSizeRollBackups value="10"/> 最大滚动备份数量

    总之,我的配置文件的意思就是,按照小时记录日志,每个文件最大为1MB,每小时最多保存10个文件(也就是你这1小时内最多能看到10个文件)。

    效果

    最终的效果见下图:

    图片

  • 相关阅读:
    调试ASP
    规范的又一个例子
    不同单位转换问题
    客户处出现一个错误
    SQL视图嵌套视图很容易出错
    安装包得到大进步
    两年前的产品现在长得不错
    不用报表的理由
    PowerPoint笔记(五)
    文本编辑器vi
  • 原文地址:https://www.cnblogs.com/farb/p/log4netLogingByDateOrTime.html
Copyright © 2011-2022 走看看