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使用【转】的更多相关文章
- log4net各种Filter使用
log4net里面的filter类常用的为: 1.DenyAllFilter 拒绝所用的日志输出 <filter type="log4net.Filter.LevelMatchFilt ...
- 【改进】用Log4net建立日志记录
上一篇随笔中只使用了普通的文件读写来进行日志的写入,正如很多朋友说的,频繁的对文件进行读写会造成很多的问题,代码缺少边界控制和操作控制,没有对资源进行管理,是非常典型的bad code. 然后经过前辈 ...
- django 操作数据库--orm(object relation mapping)---models
思想 django为使用一种新的方式,即:关系对象映射(Object Relational Mapping,简称ORM). PHP:activerecord Java:Hibernate C#:Ent ...
- MVC扩展Filter,通过继承HandleErrorAttribute,使用log4net或ELMAH组件记录服务端500错误、HttpException、Ajax异常等
□ 接口 public interface IExceptionFilter{ void OnException(ExceptionContext filterContext);} Except ...
- Log4net - 规则简介
参考页面: http://www.yuanjiaocheng.net/CSharp/csharprumenshili.html http://www.yuanjiaocheng.net/entity/ ...
- Log4net - 项目使用的一个简单Demo
参考页面: http://www.yuanjiaocheng.net/entity/entitytypes.html http://www.yuanjiaocheng.net/entity/entit ...
- log4net使用手册
1. log4net简介 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的媒介.Java平台下,它还 ...
- quartz定时+log4net日志+exchangeservice发邮件
main using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...
- .NET WebAPI 用ExceptionFilterAttribute实现错误(异常)日志的记录(log4net做写库操作)
好吧,还是那个社区APP,非管理系统,用户行为日志感觉不是很必要的,但是,错误日志咱还是得记录则个.总不能上线后报bug了让自己手足无措吧,虽然不管有木有错误日志报bug都是件很头疼的事... 我们知 ...
随机推荐
- 两种交换机配置模式,以配置基于端口划分的VLAN为例
关于交换机的配置模式,大体上可以分为两类:其一以CISCO交换机为代表的配置模式,其二以Huawei.H3C交换机为代表的配置模式.其实这两种配置模式并没有本质的不同,只是配置的命令名称和配置方式存在 ...
- JavaScript中知而不全的this
都说 JavaScript 是一种很灵活的语言,这其实也可以说它是一个混乱的语言.它把 函数式编程和 面向对象编程糅合一起,再加上 动态语言特性,简直强大无比(其实是不能和C++比的,^_^ ). 这 ...
- window 和 linux 环境下杀死tomcat进程——也可以解决其他端口被占用的问题
1.应用场景 在Windows或者linux操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用的错误,而我们又不知道如何停止这个tomcat服务器. 2.window环境 ...
- .NET 类型(Types)的那些事
引言 您是.Net工程师?那 .NetFramework中的类型您知道有三大类吗?(除了引用类型和值类型,还有?) 引用类型一定在“堆”上,值类型一定在“栈”上? 那引用类型在内存中的布局细节您又知道 ...
- WPF Freezable–How to improve your application's performances
在给ImageBrush绑定动态图片是会报以下错误. Error 4 The provided DependencyObject is not a context for this Fre ...
- (转)基于jQuery的form转json示例
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Nginx 日志中记录cookie
在http节点下添加 log_format mai2 '$remote_addr - $remote_user [$time_local] "$request" ' '$statu ...
- 让easyui 的alert 消息框中的确定按钮支持空格键
var _messager = $.extend({},$.messager);$.extend($.messager,{ alert:function(title, msg, icon, fn){ ...
- bzoj 2287: 【POJ Challenge】消失之物
Description ftiasch 有 N 个物品, 体积分别是 W1, W2, ..., WN. 由于她的疏忽, 第 i 个物品丢失了. "要使用剩下的 N - 1 物品装满容积为 x ...
- MVC模式在UI里的应用
In a similar way to other parts of a game, user interfaces usually go through several iterations unt ...