logback filter过滤器简介说明

logback filter过滤器简介说明

转自:

http://www.java265.com/JavaCourse/202201/2150.html

下文笔者讲述logback中filter过滤器的简介说明,如下所示:

Logback提供两类Filter 
 Regular Filter;
 Turbo Filter

Regular Filter用于appeder上
Appender实例上可以绑定一个Regular Filter实例链
Regular Filter继承实现”ch.qos.logback.core.filter.Filter”类
自定义自己的regular filter需要继承ch.qos.logback.core.filter.Filter类,并实现decide()方法


TurboFilter对象绑定到日志记录上下文
可用于给定的appender时调用它们
每次都发出日志记录请求
它可在LoggingEvent对象创建之前被调用
TurboFilter对象不需要实例化日志记录事件来过滤日志记录请求
turbo过滤器旨在用于记录事件的高性能过滤,甚至在创建事件之前
要实现该类型的filter需要继承ch.qos.logback.classic.turbo.TurboFilter

logback中有3种常见的过滤器

LevelFilter
级别过滤器,根据日志级别进行过滤
 当日志级别等于配置级别,过滤器会根据onMath 和 onMismatch接收或拒绝日志

LevelFilter根据精确的级别匹配过滤事件
 当事件的级别等于配置的级别,则筛选器接受或拒绝该事件,具体取决于onMatch和onMismatch属性的配置 

EvaluatorFilter
求值过滤器,评估、鉴别日志是否符合指定条件 

EventEvaluator会评估给定事件是否满足给定条件
 在匹配和不匹配时,托管EvaluatorFilter将分别返回onMatch或onMismatch属性指定的值
 请注意,EventEvaluator是一个抽象类。您可以通过对EventEvaluator进行子类化来实现自己的事件评估逻辑

ThresholdFilter
  临界值过滤器,过滤掉低于指定临界值的日志。当日志级别等于或高于临界值时,过滤器返回NEUTRAL;当日志级别低于临界值时,日志会被拒绝
ThresholdFilter过滤低于指定阈值的事件。对于等于或高于阈值的事件,ThresholdFilter将在调用其decision()方法时响应NEUTRAL
 但是将拒绝级别低于阈值的事件
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » logback filter过滤器简介说明