在asp.net中使用log4net筆記)

來源:互聯網
上載者:User
log4net(Log For Net)是Apache開源的應用於.Net架構的日誌記錄工具,詳細資料參見Apache網站.它是針對Java的log4j(Log For Java的)姊妹工具.用過log4j的都知道,它功能強大,可配置性靈活,安全執行緒,對日誌的輸出管理和層級管理方便。具體的使用方法往下看。

        首先你應該下載log4net.dll並引入到你的項目References中,或者把原始碼項目作為你工程的一部分加入到你的工程當中。單擊這裡下載Log4net 。

        使用log4net需要知道其中兩個比較重要的概念:logger 和 appender。前者是日誌記錄對象,後者是日誌記錄的目標,包括控制台,檔案,定量大小的檔案,遠程廣播。也就是說我們使用log4net的過程可以 是這樣的:獲得一個用來記錄日誌的工具對象logger,然後為logger對象指定日誌的記錄位置.美妙的是,這一切工作都可以在Web.config 設定檔中完成,所用的代碼極少.
其配置如下:

先在web.config中的<configuration>節點下添加如下配置:

<configSections>
  <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>

用過web.config自訂節點的朋友都知道,還應該配置log4net節點,接下來在<configuration>節點下添加如下log4net節點配置:

 1<log4net debug="false">
 2    <appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
 3        <param name="File" value="c:\Applog.txt" />
 4        <param name="datePattern" value="yyyy-MM-dd HH:mm" />
 5        <param name="AppendToFile" value="true" />
 6        <layout type="log4net.Layout.PatternLayout">
 7            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
 8        </layout>
 9    </appender>
10    <appender name="HttpTraceAppender" type="log4net.Appender.ASPNetTraceAppender" >
11        <layout type="log4net.Layout.PatternLayout">
12            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
13        </layout>
14    </appender>
15    <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" >
16        <layout type="log4net.Layout.PatternLayout">
17            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
18        </layout>
19    </appender>
20    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
21        <param name="File" value="C:\Log.txt" />
22        <param name="AppendToFile" value="true" />
23        <param name="MaxSizeRollBackups" value="10" />
24        <param name="MaximumFileSize" value="5MB" />
25        <param name="RollingStyle" value="Size" />
26        <param name="StaticLogFileName" value="true" />
27        <layout type="log4net.Layout.PatternLayout">
28            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
29        </layout>
30    </appender>
31    <root>
32        <level value="DEBUG" />
33        <appender-ref ref="LogFileAppender" />
34    </root>
35</log4net>

        從上面的配置中可以看到定義了多個appender,每一個appender就是一個日誌記錄的目標。root節點指定了選用哪一個 appender. 在這裡我選用了LogFileAppender。

        到這裡配置就基本上完成了,但是怎麼使用上面的配置呢?log4net為我們提供了在應用程式啟動時載入配置資訊的入口,很簡單,在Global.asax.cs的Application_Start過程中添加如下代碼:
log4net.Config.DOMConfigurator.Configure();
好了,到此為止整個配置過程完成了,下面是怎麼調用的問題了。

        建立一個log4nettest.aspx頁面,在cs檔案中添加引用 using log4net;定義本頁的一個全域變數:
private static readonly ILog log = LogManager.GetLogger(typeof(log4nettest));

        然後在Page_Load中添加如下代碼:log.Debug("這是我在使用Log4Net");運行該頁面,在C:\下面會產生一個Applog.txt文字檔,開啟看看,裡面就有你寫入的日誌。

轉自:http://www.cnblogs.com/fineboy/archive/2005/08/15/215478.html

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.