春天 - 找不到密钥'找不到密钥' logging.exception-conversion-word'

时间:2017-05-09 17:30:26

标签: java logging spring-boot spring-batch logback

我的Spring-Boot-Batch应用程序运行正常,看起来所有日志记录都按预期工作。我正在使用Logback并有一个正在读取的logback-spring.xml文件,似乎正在正确设置所有内容。但是,每次运行程序时都会得到以下结果:

13:12:32.538 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.exception-conversion-word' in any property source
13:12:32.553 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.pattern.console' in any property source
13:12:32.553 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.pattern.file' in any property source
13:12:32.553 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.pattern.level' in any property source
2017-05-09 13:12:32,804 1187  DEBUG o.s.c.e.PropertySourcesPropertyResolver - Could not find key 'logging.register-shutdown-hook' in any property source 

我的文件中没有所说的属性,所以在该声明中它是正确的,但我通过Google搜索找不到的是:什么在寻找这些属性?由于我似乎不需要所述属性,我如何阻止它寻找它们?如果我需要添加它们,可能的值是什么以及如何使用它们?

我的其他Spring-Boot-Batch应用程序都没有这些属性,也没有抛出此错误。

3 个答案:

答案 0 :(得分:2)

如果您只是希望它们停止打印,可以将debug=false添加到您的application.properties文件中。

奇怪的是,添加debug=true还不足以让他们回归。

答案 1 :(得分:1)

看来Spring应用程序无法从任何地方获取这些属性。
您可以通过两种方式设置它们

  • 创建名称为application.properties的文件并在其中设置属性,示例: logging.pattern.console=example

  • 第二种方法是在运行.jar时运行它们,示例: java -jar example.jar --logging.pattern.console=example

  

详细了解Springapplication.properties中的媒体资源   ,和Externalized Configuration

答案 2 :(得分:1)

在寻找其他东西时遇到了这个问题,但简而言之 - 不要担心它们。这是寻找这些属性的spring-boots自动配置,如果找不到它们,那么就没有任何伤害。

如果您不想使用自己的logback-spring.xml,这些是有用的属性,实际上使配置更简单一些。无论如何,你的logback-spring.xml都会覆盖这些属性。