Log4Net 使用总结

  在项目中要记录日志,便于程序调试。于是就想到了大名鼎鼎的Log4Net,这货可以方便地将日志信息记录到文件、控制台、Windows事件日志和数据库(包括MS SQL Server, Access, Oracle9i,Oracle8i,Oracle11g,DB2,SQLite)中,并且可以控制日志级别:FATAL(致命错误)、ERROR(一般错误)、WARN(警告)、INFO(一般信息)、DEBUG(调试信息)等。撰写此文的目的主要是便于以后Review,如果能解决大家的问题,幸甚!

一、获取log4net

  该组件可以在http://logging.apache.org/log4net/download_log4net.cgi获取,并且开源。

二、配置log4net

  如何配置可参考周公的这篇文章:http://blog.csdn.net/zhoufoxcn/article/details/2220533,另外,本文部分语句从该文中引用的,特意说明下。

三、扩展log4net(Log4net自定义信息存入数据库)

  log4net本身提供了几个默认的字段,并且支持扩展,具体可参考这位前辈的文章:http://blog.csdn.net/ajaxtop/article/details/6696933。

三、如何调试

   刚开始使用log4net的时候,配置完了之后运行,发现数据库里没有数据,就是说配置不成功啊,而且也没有抛出什么异常信息之类的,难道这个组件没有输出异常或者调试信息的功能嘛,后来仔细看了看周公的配置说明可以按如下配置:

    启用log4net调试信息输出:    

 <appSettings>  

    <!-- To enable internal log4net logging specify the   

             following appSettings key -->  

     <add key="log4net.Internal.Debug" value="true"/>   

  </appSettings>  

    或者在节点 <log4net debug="true">上设置

    设置调试信息输出到文件:

<system.diagnostics>  

    <trace autoflush="true">  

      <listeners>  

        <add  

            name="textWriterTraceListener"  

            type="System.Diagnostics.TextWriterTraceListener"  

            initializeData="D:/CSProjects/Log4NetDemo/Log4NetDemo/bin/log4net.txt" />  

      </listeners>  

    </trace>  

  </system.diagnostics

    PS:确认文件log4net.txt 可写

  通过查看log4net.txt文件可以快速的定位到问题的原因。好了,到此为止吧,谢谢阅读。  

    

你可能感兴趣的:(log)