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個文件)。

效果

最終的效果見下圖:

圖片


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM