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使用[转] log4net里面的filter类常用的为: 1.DenyAllFilter 拒绝所用的日志输出 <filte ...
- 【改进】用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都是件很头疼的事... 我们知 ...
随机推荐
- jQuery自动分页打印表格(HTMLtable),可以强制换页
最近做项目的时候需要做批量打印订单,一个订单可能在最后一页是的内容是不足一页的,这时候下一个订单需要下一页打印,这样就需要强制换页.在下一页再打印下一个订单 部分代码: 部分重要的css是分页的换页的 ...
- C++11中async中future用法(一)
async意味着异步执行代码,看如下示例: #include <future> #include <thread> #include <chrono> #inclu ...
- Leetcode 234 Palindrome Linked List 链表
判断链表是否是回文. 我直接将链表的一半进行倒置,然后将两半的链表进行比较 /** * Definition for singly-linked list. * struct ListNode { * ...
- [C#HttpHelper]类1.4正式版教程与升级报告
[C#HttpHelper]类1.4正式版教程与升级报告 导读 1.升级报告 2.HttpHelper1.4正式版下载 3.HttpHelper类使用方法, 4.最简单的Post与Get的写法 ...
- GTD时间管理(3)---行动容器分析理论法
昨天的一篇文章主要是把清空收集箱的信息,放入对应的清单容器 下面我将会对容器中的每件事经过3个维度的分析 那一个例子直接来说明 Ⅱ:如果这个事件很复杂,需要把这个事件当作一个项目进行拆分,最终量化出完 ...
- 构建自己的NSZombie
当开启 xcode zombie 选项,发送消息到一个被 "释放了的对象" 时 ObjZomies *oz = [[ObjZomies alloc] init]; oz.nam ...
- Android开发之蓝牙--扫描已经配对的蓝牙设备
一. 什么是蓝牙(Bluetooth)? 1.1 BuleTooth是目前使用最广泛的无线通信协议 1.2 主要针对短距离设备通讯(10m) 1.3 常用于连接耳机,鼠标和移动通讯设备等. 二. ...
- 常用的sql脚本 游标遍历操作
Declare @id int DECLARE cursor_data CURSOR FOR --这里是取得数据源 OPEN cursor_data FETCH FROM cursor_data IN ...
- 解决部份机型toast不显示问题
问题:部份机型不显示toast 解决方案: 1.自己在设置里面去允许通知,但是显然客户会说别的app都可以,so 2.自定义解决.查看toast的源码发现其附着在window上 源码下载地址:http ...
- 推荐一个C#代码混淆器 .NET Reactor【转】
C#的代码辛苦写出来之后,一个反射工具,就可以完全显露出来. 当然,在做项目时,这个功能还不错.因为我就曾在一个项目上使用C#,没有进行任何混淆.结果在项目二年多之后,需要做一些调整,自己保存的源代码 ...