log4net各种Filter使用


  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>    
  47. 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的要高

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值