Log4net 日志记录详细介绍及应用

所属分类: 软件编程 / java 阅读数: 25
收藏 0 赞 0 分享

Log4net 日志

概要:

  Log4net是一个帮助程序员将日志信息输出到各种目标(控制台、文件、数据库等)的工具。日志是程序的黑匣子,可以通过日志查看系统的运行过程,从而发现系统的问题。日志的作用:将运行过程的步骤、成功失败记录下来,将关键性的数据记录下来,进而分析系统问题所在。因为对于网站来说,不能把异常信息显示给用户,异常信息只能记录到日志。网站出问题后,开发人员查看日志就知道问题所在。

一、如何配置Log4net环境

1、添加“应用程序配置文件”(App.config);

2、在App.config或者Web.config中添加配置:

  
<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引用;

4、将log4net.config的属性“复制到输出目录”设置为“始终复制”;

5、初始化:

    在程序最开始加入 log4net.Config.XmlConfigurator.Configure()让当前的Log4net起作用;

6、在要打印日志的地方写LonManager.GetLogger(typeof(Program)).Debug("信息");。

   通过LonManager.GetLogger()传递要记录的日志类类名获得类ILog,这样在日志文件中就知道这个日志是哪个类输出的了,然后调用Debug方法输出消息。因为一个类内部不止一个地方要打印日志,所以,一般把ILog声明为一个static字段。

7、用Ilog.Error方法输出错误信息,第二个参数可以传递Exception对象。Log.Error("****错误"+ex);

二、Log4NetDemo

<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("Test"); 
  
       logWriter.Info("消息"); 
      logWriter.Warn("警告"); 
      logWriter.Error("异常"); 
      logWriter.Fatal("错误"); 
 } }} 
</pre> 
<pre></pre> 
<p>  </p> 
<h1><a name="t2"></a><strong><span style="font-family:SimHei; font-size:18px"> 三、Appender</span></strong></h1> 
<strong><span style="font-family:SimHei; font-size:18px">  可以在配置文件中使用Log4net的Appender方法进行优化;</span></strong> 
<pre></pre> 
<pre code_snippet_id="2146508" snippet_file_name="blog_20170123_2_6827063" name="code" class="csharp"><strong><span style="font-family:SimHei; font-size:18px"><img src="http://img.blog.csdn.net/20170123115415135?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvV0tYMTgzMzA2OTg1MzQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt=""> 
 更多内容,推荐阅读:  
    <a target="_blank" href="http://www.cnblogs.com/jiajinyi/p/5884930.html">http://www.cnblogs.com/jiajinyi/p/5884930.html</a
   以上是我对Log4net日志记录的简单理解,请路过的大鸟指点。</span></strong> 
<p></p></pre> 
<pre></pre> 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!   

更多精彩内容其他人还在看

Collections工具类_动力节点Java学院整理

Collections工具类提供了大量针对Collection/Map的操作。这篇文章主要介绍了Collections工具类_动力节点Java学院整理,需要的朋友可以参考下
收藏 0 赞 0 分享

SpringMVC集成Swagger实例代码

本篇文章主要介绍了SpringMVC集成Swagger实例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

十大常见Java String问题_动力节点Java学院整理

本文介绍Java中关于String最常见的10个问题,需要的朋友参考下吧
收藏 0 赞 0 分享

Java微信公众平台开发(13) 微信JSSDK中Config配置

这篇文章主要为大家详细介绍了Java微信公众平台开发第十三步,微信JSSDK中Config配置,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java实现一个达达租车系统的步骤详解

这篇文章主要给大家介绍了利用Java实现一个达达租车系统的步骤,文中给出了详细的实现思路和示例代码,并在文末给出了完整的源码供大家学习下载,需要的朋友可以参考借鉴,下面来一起看看吧。
收藏 0 赞 0 分享

Java微信公众平台开发(14) 微信web开发者工具使用

这篇文章主要为大家详细介绍了Java微信公众平台开发第十四步,微信web开发者工具的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Spring Boot整合RabbitMQ实例(Topic模式)

Topic Exchange 转发消息主要是根据通配符。接下来通过本文给大家分享Spring Boot整合RabbitMQ实例(Topic模式),需要的朋友参考下吧
收藏 0 赞 0 分享

Java微信公众平台开发(15) 微信JSSDK的使用

这篇文章主要为大家详细介绍了Java微信公众平台开发第十五步,微信JSSDK的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

java多线程的同步方法实例代码

这篇文章主要介绍了 java多线程的同步方法实例代码的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

spring boot整合RabbitMQ实例详解(Fanout模式)

这篇文章主要介绍了spring boot整合RabbitMQ的实例讲解(Fanout模式),非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多