在工作中,我们常常遇到这种场景:
定时任务、MQ消费等日志刷屏影响常规日志查找检索;
我们想对一个请求或者监听动作做日志分文件打印,例如MQ消费消息,整个逻辑涉及很多操作,我们不可能对它调用的所有类和方法进行区分打印,只能退而求其次去打印关键类日志,这样又导致了其他日志还在主日志里刷屏,非常影响日志的查找使用;
这次,我们有了新的方案!
第一步,先定义一个日志filter
package com.family.infrastructure.config.filter;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.filter.AbstractMatcherFilter;
import ch.qos.logback.core.spi.FilterReply;
import cn.hutool.core.util.StrUtil;
import lombok.Setter;
/**
* logback线程过滤器
*
* @author 張丶張張張某人
* @version 1.0.0
* @since 2022/6/20
* @see AbstractMatcherFilter
*/
@Setter
public class ThreadFilter extends AbstractMatcherFilter<ILoggingEvent> {
/**
* 线程名称前缀
*/
private String threadPrefix;
/