SpringBoot中的日志

Posted 时间的朋友

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot中的日志相关的知识,希望对你有一定的参考价值。

默认情况下,Spring Boot会用SLF4J + Logback来记录日志,并用INFO级别输出到控制台。
SLF4J,即简单日志门面(Simple Logging Facade for Java),它可以看做是一个接口框架,并不提供具体的实现,具体的实现由类似于Log4j,Log4j2,Logback等等这样的日志框架去完成。SLF4J让你的代码独立于任何特定的日志记录API,可以让我们的程序更加的健壮,不会让你因为不同日志的实现而导致的问题去分心。
如果我们在一个Spring Boot 的程序中去使用SLF4J,因为spring-boot-starter中就已经包含了有关slf4j的jar包。我们只需要通过LoggerFactory去获取即可:
private static final Logger logger = LoggerFactory.getLogger(ResponseAop.class);

默认情况下,Spring Boot将日志输出到控制台,不会写到日志文件。如果要编写除控制台输出之外的日志文件,则需在application.yml中设置logging.file或logging.path属性。但是这俩属性同时配置的时候,只有logging.file生效!
生产环境会单独配一个日志文件,如果要在日志文件中读取application.xml中属性要注意:logback.xml早于application.yml加载,logback-spring.xml晚于application.yml加载如果logback配置需要使用application.yml中的属性,需要命名为logback-spring.xml。并且logback使用springProperty才可使用application.yml中的值,如: <springProperty scope="context" name="logPath" source="log.path" defaultValue="logs"/>


以上是关于SpringBoot中的日志的主要内容,如果未能解决你的问题,请参考以下文章

日志片段,类中的Logfactory声明

常用python日期日志获取内容循环的代码片段

学习小片段——springboot 错误处理

Java日志框架 -- SpringBoot中的日志使用

Java日志框架 -- SpringBoot中的日志使用

Java日志框架 -- SpringBoot中的日志使用