1.7. 在日志处理程序中添加日志过滤器
日志处理程序(如控制台日志处理程序)可以与决定是否应记录日志记录 的过滤器 相关联。
注册日志记录过滤器:
使用
@io.quarkus.logging.LoggingFilter注解实现java.util.logging.Filter的最后一个类,并设置name属性:编写过滤器的示例:
package com.example; import io.quarkus.logging.LoggingFilter; import java.util.logging.Filter; import java.util.logging.LogRecord; @LoggingFilter(name = "my-filter") public final class TestFilter implements Filter { private final String part; public TestFilter(@ConfigProperty(name = "my-filter.part") String part) { this.part = part; } @Override public boolean isLoggable(LogRecord record) { return !record.getMessage().contains(part); } }在本例中,我们排除了包含控制台日志中特定文本的日志记录。要过滤的特定文本不是硬编码的,而是从
my-filter.part配置属性中读取。在
application.properties中配置过滤器的示例:my-filter.part=TEST使用位于
application.properties中的过滤器配置属性,将过滤器附加到对应的处理器中:quarkus.log.console.filter=my-filter