Spring Boot 项目 Logback 配置文件命名问题

起因

今天在把一个老项目从 war 改成 jar,顺带按照架构部要求升级到 Spring Boot 2。按照他们给的文档,把 Logback 配置文件名称修改成了 logback-spring.xml,之后再重启项目,看日志输出路径以及日志名称,怎么看怎么对不上。

logback-spring 配置文件中指定的日志名是 curriculum-gateway.logcurriculum-gateway-error.log,左边 xx-monitor-service.log 又是什么鬼?

问题分析

首先就是全局搜索 monitor 关键字,只是在 pom 文件中发现了个 jar 包名称带 monitor,之后就发现 Spring Boot 用了这个 jar 包里的 logback.xml 配置文件。之前留意过 Spring Boot 官方文档中有关 Logback 配置的描述,再看一下
Spring Boot 项目 Logback 配置文件命名问题_第1张图片
最后又搜了一下,在这个回答中找到了答案,stackoverflow

If spring boot doesn’t find any logback configurations (“logback-test.groovy”, “logback-test.xml”, “logback.groovy”, “logback.xml”) on the classpath, logback-spring.xml will be picked up.

总结

Spring Boot 会在 classpath 下查找是否有 jar 包,包含 logback-test.groovylogback-test.xmllogback.groovy 或者 logback.xml,如果都找不到的话,才会加载项目路径下的 logback-spring.xml

你可能感兴趣的:(Spring,Cloud,与,SSM,框架,Logback)