log4net各种Filter使用【转】

log4net里面的filter类常用的为: 
    1、DenyAllFilter 
       拒绝所用的日志输出 
       <filter type="log4net.Filter.LevelMatchFilter"> 
           <param name="LevelToMatch" value="DEBUG" />       
       </filter> 
       <filter type="log4net.Filter.DenyAllFilter" /> 
       上面的配置是如果日志的输出级别不符合DEBUG要求的话,则不输出任何日志。 
    2、LevelMatchFilter 
       这个类里面有两个属性,一个是LevelToMatch这个属性是你要匹配输出日志的级别,比如: 
        <filter type="log4net.Filter.LevelMatchFilter"> 
           <param name="LevelToMatch" value="DEBUG" />       
        </filter> 
       这样的话,只有级别是DEBUG的日志才能输出。 
       另外这个类还有一个重要的属性就是AcceptOnMatch这个属性是设置如果这个条件匹配的话,是否接受输出打印,比如说: 
        <filter type="log4net.Filter.LevelMatchFilter"> 
           <param name="LevelToMatch" value="DEBUG" />       
        </filter> 
        <filter type="log4net.Filter.StringMatchFilter"> 
           <param name="StringToMatch" value="debug" />       
        </filter> 
       如果日志的级别为DEBVG的话,也就是说符合了第一个Filter的条件,日志就输出,则StringMatchFilter就不执行了。如果这样写的话,就会继续向下执行过滤: 
        <filter type="log4net.Filter.LevelMatchFilter"> 
           <param name="LevelToMatch" value="DEBUG" />   
           <AcceptOnMatch value="false"></AcceptOnMatch>    
        </filter> 
        <filter type="log4net.Filter.StringMatchFilter"> 
           <param name="StringToMatch" value="debug" />       
        </filter> 
       如果这样写的话,即使第一个Filter符合了条件则第二个Filter也会继续执行。 
    3、LevelRangeFilter 
       配置文件是这样的: 
        <filter type="log4net.Filter.LevelRangeFilter"> 
            <param name="LevelMin" value="DEBUG" /> 
            <param name="LevelMax" value="ERROR" /> 
        </filter> 
    4、LoggerMatchFilter 
       配置文件是这样的: 
        <filter type="log4net.Filter.LoggerMatchFilter"> 
            <param name="LoggerToMatch" value="Client" /> 
        </filter> 
    5、StringMatchFilter 
       配置文件是这样的: 
        <filter type="log4net.Filter.StringMatchFilter"> 
            <param name="StringToMatch" value="/blog/Client.Program" /> 
        </filter>

level定义记录的日志级别,就是说,你要记录哪个级别以上的日志,级别由低往高依次是:
ALL
DEBUG
INFO
WARN
ERROR
FATAL
None
说明:有的博客中写的是INFO的比DEBUG的低,可是进过我的亲自测验,还是INFO的比DEBUG的要高

log4net各种Filter使用【转】的更多相关文章

  1. log4net各种Filter使用

    log4net里面的filter类常用的为: 1.DenyAllFilter 拒绝所用的日志输出 <filter type="log4net.Filter.LevelMatchFilt ...

  2. 【改进】用Log4net建立日志记录

    上一篇随笔中只使用了普通的文件读写来进行日志的写入,正如很多朋友说的,频繁的对文件进行读写会造成很多的问题,代码缺少边界控制和操作控制,没有对资源进行管理,是非常典型的bad code. 然后经过前辈 ...

  3. django 操作数据库--orm(object relation mapping)---models

    思想 django为使用一种新的方式,即:关系对象映射(Object Relational Mapping,简称ORM). PHP:activerecord Java:Hibernate C#:Ent ...

  4. MVC扩展Filter,通过继承HandleErrorAttribute,使用log4net或ELMAH组件记录服务端500错误、HttpException、Ajax异常等

    □ 接口 public interface IExceptionFilter{    void OnException(ExceptionContext filterContext);} Except ...

  5. Log4net - 规则简介

    参考页面: http://www.yuanjiaocheng.net/CSharp/csharprumenshili.html http://www.yuanjiaocheng.net/entity/ ...

  6. Log4net - 项目使用的一个简单Demo

    参考页面: http://www.yuanjiaocheng.net/entity/entitytypes.html http://www.yuanjiaocheng.net/entity/entit ...

  7. log4net使用手册

    1. log4net简介 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的媒介.Java平台下,它还 ...

  8. quartz定时+log4net日志+exchangeservice发邮件

    main using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...

  9. .NET WebAPI 用ExceptionFilterAttribute实现错误(异常)日志的记录(log4net做写库操作)

    好吧,还是那个社区APP,非管理系统,用户行为日志感觉不是很必要的,但是,错误日志咱还是得记录则个.总不能上线后报bug了让自己手足无措吧,虽然不管有木有错误日志报bug都是件很头疼的事... 我们知 ...

随机推荐

  1. Loadrunner代理录制设置

    使用LR代理录制原理 启用LR代理服务器监听设置好的端口号是否有请求信息发送给服务器,有请求时,代理服务器接收带请求,并转发给对应的系统服务器,LR从而获取到请求的信息与数据,生成脚本. 使用代理的前 ...

  2. 用Lua扩展谷歌拼音输入法

    谷歌拼音输入法最后一次更新是2013年,最近2年毫无动静,这个产品应该已经停了,不过这并不影响对它的使用,我一直喜欢它的简洁和稳定. 说不上来什么原因,忽然想起了摆弄摆弄谷歌拼音输入法的扩展特性(我经 ...

  3. 移动端报表JS开发示例--获取定位

    上次分享了移动端报表JS开发的系统概念,后来我又回去摸索了一些案例.之前接触到的FineReport的APP客户端可以用来打卡签到,就好奇研究了以下,这次就来聊一聊报表移动端开发如何实现定位功能. 1 ...

  4. 【bzoj1010】 HNOI2008—玩具装箱toy

    http://www.lydsy.com/JudgeOnline/problem.php?id=1010 (题目链接) 题意 给定N个物品,可以连续的划分为若干个组,每个组的代价是(物品数-1+每个物 ...

  5. NOIP模拟赛20161114

    幸运串 题意:长度为n,字符集大小为m的字符串中有多少不同的不含回文的串 n,m<10^9 我靠这不就是萌数的DP部分吗 有规律 f[2][j][k]=1 f[i][j][k]=sigma{f[ ...

  6. NYOJ 485

    A*B Problem 描述 设计一个程序求出A*B,然后将其结果每一位相加得到C,如果C的位数大于等于2,继续将C的各位数相加,直到结果是个一位数k. 例如: 6*8=48: 4+8=12: 1+2 ...

  7. [2016湖南长沙培训Day4][前鬼后鬼的守护 chen] (动态开点线段树+中位数 or 动规 or 贪心+堆优化)

    题目大意 给定一个长度为n的正整数序列,令修改一个数的代价为修改前后两个数的绝对值之差,求用最小代价将序列转换为不减序列. 其中,n满足小于500000,序列中的正整数小于10^9 题解(引自mzx神 ...

  8. caffe的python接口学习(4):mnist实例---手写数字识别

    深度学习的第一个实例一般都是mnist,只要这个例子完全弄懂了,其它的就是举一反三的事了.由于篇幅原因,本文不具体介绍配置文件里面每个参数的具体函义,如果想弄明白的,请参看我以前的博文: 数据层及参数 ...

  9. AVA数据库连接池.

    package db_pool; //// 一个效果非常不错的JAVA数据库连接池.// from:http://www.jxer.com/home/?uid-195-action-viewspace ...

  10. # 2015-2016-2 《Java程序设计》课程总结

    2015-2016-2 <Java程序设计>课程总结