Spring Boot集成logback日志

Java常用的日志框架log4j,log4j2,和logback等。 这几种日志框架通过lsf4j以门面模式的方式暴露出来,供开发者使用。

logback比其他两种日志框架提供更细化的日志控制,控制各个java包的日志级别。

1.为什么阿里巴巴工程师禁止直接使用Log4j和Logback API
2.带你弄清混乱的java日志体系

logback基于包的日志级别控制

Spring Boot集成logback日志插件时,需要在resources下新建文件logback-spring.xml,然后编写以下内容,

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <!--导入默认的Spring-boot logback配置-->
    <include resource="org/springframework/boot/logging/logback/base.xml"/>
    <logger name="com.fubin" level="DEBUG"/>
</configuration>

该文件需要引入logback中的base.xml文件,base.xml文件又依赖于defaults.xml,该文件给出了logback的一些默认配置。

基于springProfile的日志控制

profile是用于多种环境下的配置,比如dev开发环境,test测试环境,prod生产环境,以下配置的name=“default”替换为你需要的profile环境即可

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <!--导入默认的Spring-boot logback配置-->
    <include resource="org/springframework/boot/logging/logback/base.xml"/>
    <logger name="com.fubin" level="DEBUG"/>
    <!--该日志级别比上面的通用日志级别更高-->
    <springProfile name="default">
        <logger name="com.fubin" level="INFO"></logger>
    </springProfile>
</configuration>

在application.yml配置文件中设置logging

logging:
  level:
    root: debug
  path: logs/mylog

root 表示根路径的日志级别,path用于输出日志到磁盘的路径。更多信息查看Spring boot详细配置。

原文地址:https://www.cnblogs.com/fubinhnust/p/11930725.html