文章出處

log4net 是.net 的一款日志記錄框架。

它提供了很多的方法來幫助記錄日志:

clipboard

使用起來也比較方便:

選中項目,點擊右鍵,然后選擇 Manage NuGet Packages...

clipboard[1]

安裝log4net package。

clipboard[2]

安裝好Package 之后,需要用配置文件來配置log4net.

在項目中添加log4net.config 文件,這個配置文件會將日志以xml 的形式記錄到 log.xml 中。

代碼如下:

<log4net>

  <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">

    <file value="log.xml" />

    <appendToFile value="true" />

    <datePattern value="yyyyMMdd" />

    <rollingStyle value="Date" />

    <layout type="log4net.Layout.XmlLayoutSchemaLog4j">

      <locationInfo value="true" />

    </layout>

  </appender>

  <root>

    <level value="ALL" />

    <appender-ref ref="RollingFileAppender" />

  </root>

</log4net>

這里有一點要注意,就是需要將log4net.config  copy 到bin folder,這樣我們的Exe 才能找到這個配置文件。

clipboard[3]

 

在Program 的上面添加代碼:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
//[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.xml", Watch = true)]
namespace Log4net
{
 class Program
 {
  static void Main(string[] args)
  {
  }
 }
}

或者是:

namespace Log4net
{
 class Program
 {
  static void Main(string[] args)
  {
   XmlConfigurator.ConfigureAndWatch(new FileInfo("log4net.config"));
  }
 }
}

配置好之后,我們就可以記錄日志了:

下面是我記錄的一個

image

 

在這里推薦使用EasyLogViewer 來查看日志:

http://www.codeproject.com/Tips/996927/EasyLogViewer-Yet-another-log-viewer-tool-but-Easi

image

 

當然還可以將日志文件的形式保存,只要我們更改下log4net.config 就可以了:

<log4net>

  <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">

    <!--日志文件名開頭-->

    <file value="project.log" />

    <!--是否追加到文件-->

    <appendToFile value="true" />

    <!--混合使用日期和文件大小變換日志文件名-->

    <rollingStyle value="Composite" />

    <!--日期的格式-->

    <datePattern value="&quot;.&quot;yyyyMMdd" />

    <!--最大變換數量-->

    <maxSizeRollBackups value="30" />

    <!--最大文件大小-->

    <maximumFileSize value="50MB" />

    <layout type="log4net.Layout.PatternLayout">

      <conversionPattern value="%d [%t] %-5p %m - [%F:%L]%n" />

    </layout>

  </appender>

  <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">

    <layout type="log4net.Layout.PatternLayout">

      <conversionPattern value="%d [%t] %-5p %m%n" />

    </layout>

  </appender>

  <root>

    <level value="ALL"></level>

    <appender-ref ref="RollingLogFileAppender"></appender-ref>

    <appender-ref ref="ConsoleAppender"></appender-ref>

  </root>

</log4net>

 

具體的選項請參考:http://logging.apache.org/log4net/release/config-examples.html


文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()