EvaluatorFilter简介说明
转自:
http://www.java265.com/JavaCourse/202201/2155.html
LogBack简介:
Logback是由log4j创始人设计的另一个开源日志组件,中文网站 http://www.logback.cn/ 。它当前分为下面下个模块:
logback-core:其它两个模块的基础模块
logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging
logback-access:访问模块与Servlet容器集成提供通过Http来访问日志的功能
下文讲述EvaluatorFilter的简介说明,如下所示:
EvaluatorFilter:是求值过滤器 然后评估、鉴别日志是否符合指定条件
EvaluatorFilter属性
<evaluator>:鉴别器,常用的鉴别器是JaninoEventEvaluato,也是默认的鉴别器 它以任意的java布尔值表达式作为求值条件 求值条件在配置文件解释过成功被动态编译,布尔值表达式返回true就表示符合过滤条件 evaluator有个子标签<expression>:用于配置求值条件 <onMatch>:用于配置符合过滤条件的操作 <onMismatch>:用于配置不符合过滤条件的操作
例
//过滤掉所有日志消息中不包含“billing”字符串的日志 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <filter class="ch.qos.logback.core.filter.EvaluatorFilter"> <evaluator> <!-- 默认为 ch.qos.logback.classic.boolex.JaninoEventEvaluator --> <expression>return message.contains("billing");</expression> </evaluator> <OnMatch>ACCEPT </OnMatch> <OnMismatch>DENY</OnMismatch> </filter> <encoder> <pattern> %-4relative [%thread] %-5level %logger - %msg%n </pattern> </encoder> </appender>