首頁  >  文章  >  Java  >  Log4net 日誌記錄詳細介紹及應用

Log4net 日誌記錄詳細介紹及應用

巴扎黑
巴扎黑原創
2017-08-22 16:40:302117瀏覽

Log4net 日誌9TBHTML5中文學習網- HTML5先行者學習網

摘要:9TBHTML5中文學習網- HTML5先行者學習網

  Log4net是一個幫助程式設計師將日誌資訊輸出到各種目標(控制台、檔案、資料庫等)的工具。日誌是程式的黑盒子,可以透過日誌查看系統的運行過程,從而發現系統的問題。日誌的作用:將運行過程的步驟、成功失敗記錄下來,將關鍵性的資料記錄下來,進而分析系統問題所在。因為對於網站來說,不能把異常訊息顯示給用戶,異常訊息只能記錄到日誌。網站出問題後,開發人員查看日誌就知道問題所在。 9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

一、如何設定Log4net環境9TBHTML5中文學習網- HTML5先行者學習網

1、新增「應用程式設定檔」(App.config);9TBHTML5中文學習網- HTML5先行者學習網

2、在App.config或Web.config中加入設定:9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

  <log4net>   <!-- Define some output appenders -->   <appendernameappendername="RollingLogFileAppender"type="log4net.Appender.RollingFileAppender">    <file value="test.txt"/>    <appendToFilevalueappendToFilevalue="true"/>    <maxSizeRollBackupsvaluemaxSizeRollBackupsvalue="10"/>    <maximumFileSizevaluemaximumFileSizevalue="1024KB"/>    <rollingStylevaluerollingStylevalue="Size"/>    <staticLogFileNamevaluestaticLogFileNamevalue="true"/>    <layouttypelayouttype="log4net.Layout.PatternLayout">     <conversionPattern value="%date[%thread] %-5level %logger - %message%newline"/>    </layout>   </appender>   <root>    <level value="DEBUG"/>    <appender-refrefappender-refref="RollingLogFileAppender"/>   </root>  </log4net>

3、新增Log4net.dll引用;9TBHTML5中文學習網- HTML5先行者學習網

#4、將log4net.config的屬性「複製到輸出目錄」設定為「總是複製」;9TBHTML5中文學習網- HTML5先行者學習網

5、初始化:9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

    在程式最開始加入log4net.Config.XmlConfigurator.Configure()讓目前的Log4net起作用;9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

6、在要列印日誌的地方寫入LonManager.GetLogger(typeof(Program)).Debug("訊息");。 9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

   透過LonManager.GetLogger()傳遞要記錄的日誌類別類別名稱取得類別ILog,這樣在日誌檔案中就知道這個日誌是哪個類別輸出的了,然後呼叫Debug方法輸出訊息。因為一個類別內部不只一個地方要列印日誌,所以,一般把ILog聲明為一個static字段。 9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

7、用Ilog.Error方法輸出錯誤訊息,第二個參數可以傳遞Exception物件。 Log.Error("****錯誤"+ex);9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

二、Log4NetDemo9TBHTML5中文學習網- HTML5先行者學習網
9TBHTML5中文學習網- HTML5先行者學習網

#
<html>
 <head></head>
 <body>
  <pre code_snippet_id="2146508" snippet_file_name="blog_20170123_2_6827063" name="code" class="csharp">
namespace Log4NetDemo {   
class Program   {    
 static void Main(string[] args)     {       //使用log4net记录日志。    
   log4net.Config.XmlConfigurator.Configure();      
      ILog logWriter =log4net.LogManager.GetLogger(&quot;Test&quot;);       
         logWriter.Info(&quot;消息&quot;);       logWriter.Warn(&quot;警告&quot;);     
           logWriter.Error(&quot;异常&quot;);       logWriter.Fatal(&quot;错误&quot;); 
            } 
            }
            } 
            
  

三、Appender

可以在配置文件中使用Log4net的Appender方法进行优化;
 
  
  <strong><span style="font-family:SimHei; font-size:18px">
  <img src="http://www.php.cn/20170123115415135?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvV0tYMTgzMzA2OTg1MzQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /> 
   更多内容,推荐阅读:  
    </span></strong>

   9TBHTML5中文學習網- HTML5先行者學習網

以上是Log4net 日誌記錄詳細介紹及應用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn