
使用 SpringBoot 开发项目,日志一般使用 logback,配置文件默认名字就是:logback-spring.xml。
所有日志配置都有个基本的诉求:不同环境输出到不同目标。比如,开发环境输出到控制台,方便在 IDEA、Eclipse 等 IDE 里直接查看;测试、生产环境则输出到日志文件。
这时 logback-spring.xml 配置文件就需要根据环境配置:
1 | <?xml version="1.0" encoding="UTF-8"?> |
配置里的 springProfile
对应的就是 application.properties 文件中的 spring.profiles.active
配置项。
1 | # 环境类型,开发环境:dev,测试环境:stg,生产环境:prd。 |
另外注意:
为什么打印到 FILE 的 appender 配置要用 springProfile 标签包起来?
这是因为如果打印到 FILE 的 appender 像 CONSOLE appender 一样直接定义的话,在开发环境时,虽然不会将日志打印到文件,但是还是会生成日志文件,只不过里面是空内容,这是我们不希望看到的。所以需要用 springProfile 标签包起来,这样在测试、生产才打开功能。