您的位置:首页 > 编程语言 > C#

一分钟学会 log4net(c#) 配置及使用

2016-12-28 22:04 537 查看
1. 首先从apache网站下载log4net, http://logging.apache.org/log4net/download_log4net.cgi 。我下的是最新版本
log4net-1.2.11-bin-newkey

2. 将 \bin\net\4.0\release\log4net.dll 复制到你的项目中 。

3. 将log4net.dll 添加引用到你的项目中。

4. 添加如下内容到 assemblyinfo.cs。

[csharp] view
plain copy

 





[assembly: log4net.Config.XmlConfigurator(ConfigFile="Log4Net.config", Watch=true)]  

 注意: ConfigFile
可以指定相对路径 和 绝对路径。 eg: /log/xxxx.log  或者 d://log//xxxx.log

 

5.在项目中创建一个新的log4net的配置文件Log4Net.config。

[html] view
plain copy

 





<?xml version="1.0" encoding="utf-8" ?>  

<configuration>  

  <configSections>  

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

  </configSections>  

  

   <log4net debug="true">  

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

        <file value="applicationLog.log" /><!--file可以指定具体的路径 eg : d:\\test.log。不指定的话log被生成在项目的bin/Debug 或者 bin/Release目录下 (web的项目 默认生成在根目录下)-->  

        <appendToFile value="true" />  

        <rollingStyle value="Size" />  

        <maxSizeRollBackups value="10" /><!--备份log文件的个数最多10个-->  

        <maximumFileSize value="2MB" /><!--每个log文件最大是2M,如果超过2M将重新创建一个新的log文件,并将原来的log文件备份。-->  

        <staticLogFileName value="true" />  

        <layout type="log4net.Layout.PatternLayout"> <!--指定log的格式-->  

          <conversionPattern value="[%date]  %thread -- %-5level -- %logger [%M] -- %message%newline" />  

        </layout>  

      </appender>  

  

      <root>  

        <level value="DEBUG" /><!--指定将此级别及以上的log打印到log文件中-->  

        <appender-ref ref="RollingLogFileAppender" />  

      </root>  

   </log4net>  

</configuration>  

 

注意:根据第4步的配置,应该把log4net的配置文件放到项目的bin/Debug 或者 bin/Release目录下,否则会出现找不到配置文件而无法创建logger对象。

(web的项目,直接放在web项目的根目录下即可)

 

6.在你的类中引入命名空间

[csharp] view
plain copy

 





using log4net;  

 

7. 在你的类中创建logger 实例

[csharp] view
plain copy

 





private static log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);  

8. 运行你的项目,打出的log结果

[plain] view
plain copy

 





[2012-06-26 14:14:34,862]  1 -- DEBUG -- LogTest.Program [Main] -- this is the log4net log test.  

[2012-06-26 14:14:34,877]  1 -- INFO  -- LogTest.Program [Main] -- this is the info..........................................  

[2012-06-26 14:14:34,878]  1 -- INFO  -- LogTest.Program [print] -- this method is print()  

[2012-06-26 14:14:34,878]  1 -- ERROR -- LogTest.Program [print] -- error test  

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: