spring-boot-starter-loggingas a transitive dependency for the spring-boot-starter module
一、配置简介
SLF4J的全称是Simple Logging Facade for Java,即简单日志门面。SLF4J并不是具体的日志框架,而是作为一个简单门面服务于各类日志框架,如java.util.logging, logback和log4j, Spring里面的SLFJ默认使用的就是Logback。SLF4J提供了统一的记录日志的接口,对不同日志系统的具体实现进行了抽象化,只要按照其提供的方法记录即可,最终日志的格式、记录级别、输出方式等通过绑定具体的日志系统来实现。
我们可以改变默认日志框架:
image.png
可以在application.properties中配置日志级别:
logging.level.org.springframework.web=INFO
logging.level.org.hibernate=ERROR
logging.level.com.apress=DEBUG
可以在配置文件里面指定除去console外日志存在哪个文件里面:
logging.path=/var/logs/app.log
或者
logging.file=myapp.log
这里有我写的例子:https://www.jianshu.com/writer#/notebooks/28924213/notes/32654433 的第九部分
二、扩展Configuration Properties
我们可以把配置参数分到几个不同的配置文件里面,依据应用需求选择不同的配置文件进行加载。
spring 通过@PropertySource 指定配置文件列表,而Spring Boot则更进一步,自动注册了一个PropertyPlaceHolderConfigurer Bean,默认把root classpath里面的application.properties作为默认配置文件,当然我们也可以创建application-{profile}.properties格式的配置文件,比如用application.properties配置默认属性值,
用application-dev.properties作为开发状态的属性配置文件, 使用application-prod.properties当作产品阶段的配置文件,对所有配置文件都共有配置的application-default.properties。
你也可以使用YAML (.yml) 作为 .properties的替代。