Spring boot的logback配置

LogBack 默认集成在 Spring Boot 中,是基于 Slf4j 的日志框架。默认情况下 Spring Boot 是以 INFO 级别输出到控制台。

它的日志级别是:

ALL < TRACE < DEBUG < INFO < WARN < ERROR < OFF

配置

LogBack 可以直接在 application.propertiesapplication.yml 中配置,但仅支持一些简单的配置,复杂的文件输出还是需要配置在 xml 配置文件中。配置文件可命名为 logback.xml , LogBack 自动会在 classpath 的根目录下搜索配置文件,不过 Spring Boot 建议命名为 logback-spring.xml,这样会自动引入 Spring Boot 一些扩展功能。

如果需要引入自定义名称的配置文件,需要在 Spring Boot 的配置文件中指定,如:

logging:  config: classpath:logback-spring.xml

同时 Spring Boot 提供了一个默认的 base.xml 配置,可以按照如下方式引入:

<?xml version="1.0" encoding="UTF-8"?>    

base.xml 提供了一些基本的默认配置以及在控制台输出时的关键字配色,具体文件内容可以看这里,可以查看到一些常用的配置写法。

详细配置

变量

可以使用 来定义变量:

同时可以引入 Spring 的环境变量:

推荐使用 ,相比 提供了 scopedefaultValue

所有的变量都可以通过 ${} 来调用。

输出到控制台

<?xml version="1.0" encoding="UTF-8"?>            %.-1level|%-40.40logger{0}|%msg%n                      

输出到文件

    ${LOG_FILE}.log                    ${LOG_FILE}.%d{yyyy-MM-dd}.gz                30                3GB                %-4relative [%thread] %-5level %logger{35} - %msg%n     

多环境配置

LogBack 同样支持多环境配置,如 devtestprod

    

启动的时候 java -jar xxx.jar --spring.profiles.active=dev 即可使配置生效。

如果要使用 Spring 扩展的 profile 支持,配置文件名必须命名为 LogBack_Spring.xml,此时当 application.properties 中指定为 spring.profiles.active=dev 时,上述配置才会生效。


备注

如需手动配置logback依赖,则pom.xml增加如下:

https://mvnrepository.com/artifact/ch.qos.logback/logback-classic【可选择需要的版本】

    ch.qos.logback    logback-classic    1.2.11
我的parttern配置如下: %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} %L - %msg%n


来源

https://weyunx.com/2019/02/01/springboot-logback/

https://segmentfault.com/a/1190000018323081

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章