我正在使用logback库在spring boot项目中实现日志记录。我想根据我的spring配置文件(属性“ spring.pofiles.active”)加载不同的日志记录配置文件。我有3个文件:logback-dev.xml,logback-inte.xml和logback-prod.xml。我正在使用Spring Boot版本1.2.2.RELEASE。
如你在Spring Boot文档中所读。它说:
可以通过在类路径中包括适当的库来激活各种日志记录系统,并通过在类路径的根目录中或在Spring Environment属性logging.config指定的位置中提供适当的配置文件来进一步自定义各种日志记录系统。(但是请注意,由于日志记录是在创建ApplicationContext之前初始化的,因此无法从Spring @Configuration文件中的@PropertySources控制日志记录。系统属性和常规的Spring Boot外部配置文件都可以正常工作。)
所以我试图在我的application.properties文件中设置’logging.config’属性:
logging.config=classpath:/logback-${spring.profiles.active}.xml
但是,当我启动应用程序时,未加载我的logback- {profile} .xml …
我认为日志记录是使用Spring Boot的所有项目都遇到的常见问题。我采用上述方法走上正确的路吗?我还有其他可行的解决方案,但我发现它们不那么优雅(在logback.xml文件或命令行属性中使用Janino进行条件解析)。