一、    Log4net特征
    Log4net是一个用于.NET开发环境的日志记录组件,由于它的超快及超灵活,很多大型的应用都会用到。
    它有如下特点:
    1.自定义日志输出级别
        Log4net将日志分为五个级别优先级从高到低依次:FATAL > ERROR > WARN > INFO > DEBUG,此外还有ALL(允许所有的日志请求)和OFF(拒绝所有的日志请求)这两种特殊的级别。可以通过日志级别来控制日志是否输出。如果你配置文件中定义的是INFO级别,程序中有三种日志记录方式
    Log.Info(“日志内容”),Log.Warn(“日志内容”),Log.Debug(“日志内容”)
    则Log.Info,Log.Debug都会输出日志,Log.Warn不会输出日志。
    2.自定义日志输出方式
        Log4net的日志输出方式很灵活,可以将日志输出至文本文件,控制台,邮件,Windows Event Log,数据库等等。
    对于写日志至文本文件还可以有如下非常灵活的配置。
        a.按时间段打印日志,按月,按日 ,按时,按分等随你配置
        b.按文件的大小 打印滚动日志,如每10M,100M一个日志文件,这样可以防止日志文件不至于过大,日志文件达到4,5G日后我们基本上就很难打开了。
        c.指定日志大小,比如说指定500M,那么日志将只有一个且不会超出500M。
    3.性能超快
        Log4net的日志记录性能是采用stringwriter记录日志方式的4倍左右。
二、    Log4net在项目中应用
    1.在log4net的官网http://logging.apache.org/log4net/下载一个log4net.dll,然后在项目中添加引用。
    2.配置
        a.log4net的配置有两种,一种是独立到单独的一个配置文件中,另一种是嵌入程序本身的配置文件中(如web项目的web.config,winform的appsetting中),但这两种的配置都差不多。
        b.配置步骤,在配置文件中的<configSections>节点下加入如下一行
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
        c.在<configSections>节点下加入真正用来干活的配置。
    比如说:
    <log4net debug="false">
     <appender name="My Appender " type="log4net.Appender.RollingFileAppender">
      <file value="D:\Vehpro\MyLogger.log" />
    <appendToFile value="true" />
     <rollingStyle value="Date" />
     <datePattern value="yyyyMMdd&quot;.log&quot;" />
     <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c %m%n" />
      </layout>
    </appender>
    <logger name="MyLogger"  additivity="false">
    <level value="ALL"/>
    <appender-ref ref=" My Appender "/>
     </logger>
      <root>
          <level value="ALL" />
          <appender-ref ref=" My Appender "/>
     </root>
    </log4net>

在这段配置中定义了两个logger一个是root,另一个是MyLogger.它们都是通过appender-ref指定的My Appender介质来输出日志。
    d.激活log4net
    对于web工程,如果独立在一个配置文件中,假定配置文件名为log4net.config.xml
        则在Global.asax的Application_Start加入如下两行
        System.IO.FileInfo file = new System.IO.FileInfo(Server.MapPath("~\\log4net.config.xml"));
                log4net.Config.XmlConfigurator.ConfigureAndWatch(file);
        如果配置在web.config中则将代码换成log4net.Config.XmlConfigurator.Configure();

对于应用程序,winform,windows服务等则可以在AssemblyInfo中加入
        [assembly: log4net.Config.XmlConfigurator(Watch = true)]即可。
    3.上战场
    在类中加入一个字段log如下
    private  static log4net.ILog log = log4net.LogManager.GetLogger("MyLogger ");
    GetLogger方法体中的参数MyLogger就是配置文件中定义的logger name,这行代码的意思就是我要采用Mylogger的配置进行日志记录。
    接下来变可以在代码中调用log的方法输出日志了。

第一篇博客,发现写一点点文字还真不是个轻松的事。想写好还是没写得好,想写清没写得清呵呵,欢迎拍砖....

log4net 使用指南,最常遇到的问题整理。。。的更多相关文章

  1. Log4net使用指南

    请在这里下载示例代码 1           简介 1.1          Log4net的优点: 几乎所有的大型应用都会有自己的用于跟踪调试的API.因为一旦程序被部署以后,就不太可能再利用专门的 ...

  2. [转]log4net 使用指南

    声明:本文内容主要译自Nauman Leghari的Using log4net,亦加入了个人的一点心得(节3.1.4). 请在这里下载示例代码 1           简介 1.1          ...

  3. Log4Net使用指南(转)

    转自:http://www.cnblogs.com/dragon/archive/2005/03/24/124254.html 声明:本文内容主要译自Nauman Leghari的Using log4 ...

  4. C# Log4Net使用指南(转)

    1           简介 1.1          Log4net的优点: 几乎所有的大型应用都会有自己的用于跟踪调试的API.因为一旦程序被部署以后,就不太可能再利用专门的调试工具了.然而一个管 ...

  5. Log4Net使用指南之用log4net记录日志到数据库(含有自定义属性)------附Demo例子源代码

    Log4NET简介 log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台.文件.数据库等)的工具. 前提 最近做项目 ...

  6. log4net菜鸟指南二----生成access和txt

    前言 有可能目标计算机缺少某些组件,导致无法生成access文件,或者打不开文件,这时txt文件就可以方便的使用了 一,标准的控制台程序输出日志到access <?xml version=&qu ...

  7. log4net菜鸟指南

    log4net的作用 提供一个记录日志的框架,可以将日志信息记录到文件(txt.xml等).控制台.Windows事件日志和数据库(MSSQL.Acess.Oracle.DB2和SQLite等). 要 ...

  8. JS搞基指南----延迟对象入门提高资料整理

    JavaScript的Deferred是比较高大上的东西,  主要的应用还是主ajax的应用,  因为JS和nodeJS这几年的普及,  前端的代码越来越多,  各种回调套回调再套回调实在太让人崩溃, ...

  9. git完全cli指南之详细思维导图整理分享

    一直以来都觉得 在开发过程中 能用命令行的还是用命令行 能用快捷键的就要快捷键 前期可能要点学习成本 但是熟练后带来的好处还是非常可观的 所以一直坚持使用命令行的方式来使用git 基本上每个操作都能心 ...

随机推荐

  1. OpenCV_火焰检测——完整代码

    转:http://blog.csdn.net/xiao_lxl/article/details/43307993 火焰检测小程序 前几天,偶然看到了An Early Fire-Detection Me ...

  2. windows10添加开机自启动程序

    1. 将要启动的程序创建快捷方式 2. 将创建的快捷方式放到以下文件夹中 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

  3. try catch finally return

    public override bool Start(IServerConfig config) { bool flag = true; listenSocket = new Socket(Liste ...

  4. POJ 2528 Mayor's posters(线段树染色问题+离散化)

    http://poj.org/problem?id=2528 题意: 给出一面无限长的墙,现在往墙上依次贴海报,问最后还能看见多少张海报. 题意:这道题目就相当于对x轴染色,然后计算出最后还能看见多少 ...

  5. install ros-indigo-tf

    sudo apt-get install ros-indigo-tf

  6. vim with space-vim

    space-vim https://github.com/liuchengxu/space-vim macOS # homebrew /usr/bin/ruby -e "$(curl -fs ...

  7. div固定顶部和底部

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. google搜索 site:pku.edu.cn inurl:aspx 即可查找所有动态网页 =====html(静态网页) asp(动态) jsp(动态) php(动态) cgi(网络程序) aspx(动态)

    shodan shodan和我们国内的钟馗之眼是一种搜索引擎,他们区别于百度等引擎,他们只爬设备,只爬联网设备. 网址为: https://www.shodan.io/ Shodan,也有人把他叫撒旦 ...

  9. HDFS读写流程

    01.并行读取 02.逐个节点写入

  10. L200

    Last week, I read a story about a 34-year-old British woman who is extremely afraid of metal forks.S ...