1. log4net里面的filter类常用的为:
  2. 1、DenyAllFilter
  3. 拒绝所用的日志输出
  4. <filter type="log4net.Filter.LevelMatchFilter">
  5. <param name="LevelToMatch" value="DEBUG" />
  6. </filter>
  7. <filter type="log4net.Filter.DenyAllFilter" />
  8. 上面的配置是如果日志的输出级别不符合DEBUG要求的话,则不输出任何日志。
  9. 2、LevelMatchFilter
  10. 这个类里面有两个属性,一个是LevelToMatch这个属性是你要匹配输出日志的级别,比如:
  11. <filter type="log4net.Filter.LevelMatchFilter">
  12. <param name="LevelToMatch" value="DEBUG" />
  13. </filter>
  14. 这样的话,只有级别是DEBUG的日志才能输出。
  15. 另外这个类还有一个重要的属性就是AcceptOnMatch这个属性是设置如果这个条件匹配的话,是否接受输出打印,比如说:
  16. <filter type="log4net.Filter.LevelMatchFilter">
  17. <param name="LevelToMatch" value="DEBUG" />
  18. </filter>
  19. <filter type="log4net.Filter.StringMatchFilter">
  20. <param name="StringToMatch" value="debug" />
  21. </filter>
  22. 如果日志的级别为DEBVG的话,也就是说符合了第一个Filter的条件,日志就输出,则StringMatchFilter就不执行了。如果这样写的话,就会继续向下执行过滤:
  23. <filter type="log4net.Filter.LevelMatchFilter">
  24. <param name="LevelToMatch" value="DEBUG" />
  25. <AcceptOnMatch value="false"></AcceptOnMatch>
  26. </filter>
  27. <filter type="log4net.Filter.StringMatchFilter">
  28. <param name="StringToMatch" value="debug" />
  29. </filter>
  30. 如果这样写的话,即使第一个Filter符合了条件则第二个Filter也会继续执行。
  31. 3、LevelRangeFilter
  32. 配置文件是这样的:
  33. <filter type="log4net.Filter.LevelRangeFilter">
  34. <param name="LevelMin" value="DEBUG" />
  35. <param name="LevelMax" value="ERROR" />
  36. </filter>
  37. 4、LoggerMatchFilter
  38. 配置文件是这样的:
  39. <filter type="log4net.Filter.LoggerMatchFilter">
  40. <param name="LoggerToMatch" value="Client" />
  41. </filter>
  42. 5、StringMatchFilter
  43. 配置文件是这样的:
  44. <filter type="log4net.Filter.StringMatchFilter">
  45. <param name="StringToMatch" value="/blog/Client.Program" />
  46. </filter>

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

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

  1. log4net各种Filter使用【转】

    log4net各种Filter使用[转] log4net里面的filter类常用的为:      1.DenyAllFilter         拒绝所用的日志输出         <filte ...

  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. paip.java 多线程参数以及返回值Future FutureTask 的使用.

    paip.java 多线程参数以及返回值Future FutureTask 的使用. 在并发编程时,一般使用runnable,然后扔给线程池完事,这种情况下不需要线程的结果. 所以run的返回值是vo ...

  2. node.js在windows环境下的安装

    node.js官网 https://nodejs.org/en/ Download

  3. Unity3D脚本调用Objective C代码实现游戏内购买

    0.开篇吐槽: 一年之内从WP转到iOS,又从iOS转到U3D,真心伤不起. 1.Unity3D脚本调用OC代码的原理: 其实也没啥神秘的,因为OC是和C互通的 ,C#又可以通过DllImport的形 ...

  4. 关于 ‘--exec’ 参数( find 命令)及介绍 ‘xargs ’命令区别(新版)

    前言: find 命令一直都是系统管理员的常用命令之一, 其参数中 "-exec" 尤其实用.而 "xargs" 命令,针对查询也有属于自己的见解.本文着重讲解 ...

  5. INFO - InstallShield中的InstallScript工程Setup.exe /s的使用细节

    在InstallShield的各种工程类型中,Basic MSI工程Build出的安装包基于Windows Installer标准,所以默认就支持静默安装(至于如何静默安装,请自行补充相关知识).而对 ...

  6. C#:如何解决WebBrowser.DocumentCompleted事件的多次调用

    关于DocumentCompleted事件,MSDN给出的解释是在文档加载完毕后执行,但是在我的程序中DocumentCompleted却被多次调用,查了一下资料,大概出现了以下几种情况. 1.Web ...

  7. go语言实现一个简单的登录注册web小程序

    最近学习golang也有一段时间了,基础差不多学了个大概,因为本人是java程序员,所以对web更感兴趣.根据<go web编程>中的例子改编一个更简单的例子,供新手参考,废话不多说,上菜 ...

  8. Windows server 2008 R2充当路由器实现网络的互联(转)

    1.路由器的工作原理 当IP子网中的一台主机发送IP分组给同一IP子网的另一台主机时,它将直接把IP分组送到网络上,对方就能收到.而要送给不同IP子网上的主机时,它要 选择一个能到达目的子网上的路由器 ...

  9. C# 传入引用类型的参数 返回值是否发生变化

    前一段时间做项目是,一YY说如果一个方法的参数是引用类型,那么在这个方法里面所做的所有的修改再方法调用后应该有体现.事实是这样的吗? 先看code 和运行结果: 运行结果 方法SetPersonInf ...

  10. SQL获取本周销售总数

    select sum("NUMBER") as WEEK_NUMBER, COMPANY_CODE, PROJECT_CODE from D_VISIT WHERE "D ...