【发布时间】:2016-02-22 00:41:41
【问题描述】:
我们的运维人员希望在应用启动时将 Spring 引导配置(即所有属性)转储到日志文件中。我假设这可以通过注入带有注释 @ConfigurationProperties 的属性并打印它们来完成。
问题在于是否有更好的或内置的机制来实现这一点。
鉴于似乎没有内置的解决方案,我试图自己做饭。这是我想出的:
@Component
public class ConfigurationDumper {
@Autowired
public void init(Environment env){
log.info("{}",env);
}
}
这样做的挑战是它不会打印我的 application.yml 中的变量。相反,这是我得到的:
StandardServletEnvironment
{
activeProfiles=[],
defaultProfiles=[default],
propertySources=[
servletConfigInitParams,
servletContextInitParams,
systemProperties,
systemEnvironment,
random,
applicationConfig: [classpath: /application.yml]
]
}
如何解决这个问题,以便加载和打印所有属性?
【问题讨论】:
标签: spring configuration spring-boot