logback 通过javaconfig实现配置

时间:2022-07-24
本文章向大家介绍logback 通过javaconfig实现配置,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

创建JAVACONFIG

  • myapp.BasicConfigurator
public class BasicConfigurator
 extends ch.qos.logback.core.spi.ContextAwareBase
  implements ch.qos.logback.classic.spi.Configurator {

    public BasicConfigurator() {
    }

    public void configure(LoggerContext lc) {
        addInfo("Setting up default configuration.");
        
        ConsoleAppender<ILoggingEvent> ca = new ConsoleAppender<ILoggingEvent>();
        ca.setContext(lc);
        ca.setName("console");
        LayoutWrappingEncoder<ILoggingEvent> encoder = new LayoutWrappingEncoder<ILoggingEvent>();
        encoder.setContext(lc);
        
 
        // same as 
        // PatternLayout layout = new PatternLayout();
        // layout.setPattern("%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n");
        TTLLLayout layout = new TTLLLayout();
 
        layout.setContext(lc);
        layout.start();
        encoder.setLayout(layout);
        
        ca.setEncoder(encoder);
        ca.start();
        
        Logger rootLogger = lc.getLogger(Logger.ROOT_LOGGER_NAME);
        rootLogger.addAppender(ca);
    }
}

创建SPI配置文件

创建文件 META-INFservicesch.qos.logback.classic.spi.Configurator

# 指定自定义javaconfig实现类
myapp.BasicConfigurator 

注意此方法在springboot应用中无效

springboot logback配置源码

springboot配置方法

springboot通过javaconfig实现logback配置