spring-boot日志logback-spring.xml配置(自用)
说实话对日志这东西一直只是太肤浅的懂,就会用logger.info和logger.error输出,今天在写LemonRobot项目的时候,决定把调试信息也打出来,然后根据日志级别控制让上线的时候不显示debug级别的日志。但是运行后发现,默认logger.debug产生的日志也没有输出到控制台,经过一番研究,是由于logback的配置问题。
在sr/main/resources文件夹中新建logback.xml,然后复制下面的配置到文件中:
logback.xml会被自动加载,如果名字不一样,我们需要在application.yml或者是application.properties中配置:
#配置日志
logging:
#此处存放日志的路径
path:
config: classpath:config/logback-spring.xml
#指定不同目录下的日志的级别
level:
com.shimain.springboot.mapper: DEBUG
<?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="true" scanPeriod="3 seconds">
<!--设置日志输出为控制台-->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%logger{32}] %msg%n</pattern>
</encoder>
</appender>
<!--设置日志输出为文件-->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>logFile.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>logFile.%d{yyyy-MM-dd_HH-mm}.log.zip</FileNamePattern>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d{HH:mm:ss,SSS} [%thread] %-5level %logger{32} - %msg%n</Pattern>
</layout>
</appender>
<root>
<level value="DEBUG"/>
<appender-ref ref="STDOUT"/>
<appender-ref ref="FILE"/>
</root>
</configuration>
这段配置文件可以让日志同时输出到控制台和本地文件,同时将日志文件打成zip压缩包。
如果这个时候项目上线了,不需要debug日志了,只需要修改root标签下面的level级别为INFO即可。
作者:柠檬信息技术有限公司
链接:https://www.jianshu.com/p/88557448bb02
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。