log4net簡單運用

來源:互聯網
上載者:User

標籤:style   blog   http   io   color   ar   使用   sp   檔案   

通過log4net來記錄系統日誌、異常...是非常方便的,自己可以定義檔案儲存路徑、檔案大小、內容格式等等,網上也有很多關於log4net的使用講解,大家可以去http://logging.apache.org/log4net/看關於log4net更詳細的介紹(沒啥好講的,我也將不明白,寫此文只是做個筆記,方便自己用的時候拷貝)

下面看使用三重奏

  • 第一奏 配置 

我一般用log4net用來記錄一些使用者操作,和異常,所以只用到INFO和ERROR

 1   <configSections> 2     <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/> 3   </configSections> 4   <log4net> 5     <root> 6       <level value="All"/> 7       <appender-ref ref="LogFileAppender"/> 8       <appender-ref ref="ErrorFileAppender"/> 9     </root>10 11     <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" LEVEL="INFO">12       <param name="File" value="Logs\info\"/>13       <param name="AppendToFile" value="true"/>14       <param name="MaxSizeRollBackups" value="-1"/>15       <param name="MaximumFileSize" value="10MB"/>16       <param name="DatePattern" value="yyyy-MM-dd.‘.txt‘"/>17       <param name="RollingStyle" value="Date"/>18       <param name="StaticLogFileName" value="false"/>19       <layout type="log4net.Layout.PatternLayout">20         <param name="ConversionPattern" value="記錄時間:%date 線程ID:[%thread] 記錄層級:%-5level 類:%logger property:[%property{NDC}] - 描述:%message%newline"/>21       </layout>22       <filter type="log4net.Filter.LevelRangeFilter">23         <param name="LevelMin" value="INFO"/>24         <param name="LevelMax" value="INFO"/>25       </filter>26     </appender>27     <appender name="ErrorFileAppender" type="log4net.Appender.RollingFileAppender" LEVEL="ERROR">28       <param name="File" value="Logs\error\"/>29       <param name="AppendToFile" value="true"/>30       <param name="MaxSizeRollBackups" value="-1"/>31       <param name="MaximumFileSize" value="10MB"/>32       <param name="DatePattern" value="yyyy-MM-dd.‘.txt‘"/>33       <param name="RollingStyle" value="Date"/>34       <param name="StaticLogFileName" value="false"/>35       <layout type="log4net.Layout.PatternLayout">36         <param name="ConversionPattern" value="記錄時間:%date 線程ID:[%thread] 記錄層級:%-5level 類:%logger property:[%property{NDC}] - 描述:%message%newline"/>37       </layout>38       <filter type="log4net.Filter.LevelRangeFilter">39         <param name="LevelMin" value="ERROR"/>40         <param name="LevelMax" value="ERROR"/>41       </filter>42     </appender>43   </log4net>
1 [assembly: log4net.Config.XmlConfigurator(Watch = true)]
  • 第二奏 調用 

為了省事,我建了個log4net的協助類

 1     public sealed class Log4netHelper<T> where T : class 2     { 3         private static log4net.ILog logger; 4         private static readonly object padlock = new object(); 5       6         Log4netHelper() 7         { 8               9         }10 11         public static log4net.ILog Logger12         {13             get14             {15                 if (logger == null)16                 {17                     lock (padlock)18                     {19                         if (logger == null)20                         {21                             logger = log4net.LogManager.GetLogger(typeof(T));22                         }23                     }24                 }25                 return logger;26             }27         }28 29     }
  • 第三奏 調用 

配置完了,現在就開始隨便調了

 

請謹慎使用以上代碼,以免造成誤導,當中若有錯誤(代碼習慣、規範、文法等等),我很樂意聽取您的建議和指導

 

log4net簡單運用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.