springboot项目logback.xml或者logback-spring.xml中读取不到application.yml或application.properties配置文件中的配置解决办法
在springboot项目中我们可能想要实现不同环境的日志项目配置不同,比如我想让不同环境的日志路径不同。
这时候我们很容易想:
1、到将日志路径配置在springboot的:application-dev.yml,application-prod.yml,application-test.yml配置文件中,
2、再在logback.xml或者logback-spring.xml中使用 "${}"来引用配置值,比如我的日志输出目录在不同环境配置文件的配置如下:
开发环境配置文件application-dev.yml:
path:
log: C:/logs-reptile-dev
测试环境配置文件application-test.yml:
path:
log: C:/logs-reptile-test
生产环境配置文件application-prod.yml:
path:
log: C:/logs-reptile-prod
在 logback-spring.xml中配置引用如下:
<property name="log.path" value="${path.log}"/>
但是很遗憾这样并读不到我们配置的值,这时候我们需要通过springProperty标签来引用,例入我的:
<springProperty scope="context" name="log.path" source="path.log"/>
这里的name和上面property标签一样不多说,source其实就是上面的value啦,只不过要注意:千万不要加${}
如果还是读取不到,请把你的logback.xml配置文件名,改为:logback-spring.xml就可以啦
(转载请注明花儿为何那样红博客)