2017-08-25 142 views
0

我必须为Spring Boot应用程序配置日志记录,但我不知道如何在logback-spring.xml中使用自定义属性和JVM选项。具有自定义属性的弹簧日志记录配置

比方说,我有以下特性:

  • application.properties:logging.app.name =应用
  • JVM选项:-Dlogging.app.version = 1.0
  • (另外我需要活动的配置文件和主机名)

然后将文件名和日志条目应该是如下:

  • APP- [HOSTNAME]的.log
  • 2017年8月25日01:02:03.456信息应用程序/ 1.0/[资料] [主]一些日志...

当我知道我不能只需在我的日志记录配置(spring-logback.xml)中访问这些属性即可。这就是为什么我试图在配置类中手动创建这些bean(ConsoleAppender,RollingFileAppender),但它对我无效。我也尝试实现InitializingBean的afterPropertiesSet方法,并为Logback手动添加这些变量,但这也无济于事,我开始用尽想法。所以任何帮助真的很感激!

+0

也许这可能有帮助吗? https://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.html –

+0

我已经阅读了这篇文档,但并没有说如何访问自定义属性。 :( – aszidien

+0

这对于设置文件名至少没有帮助吗?https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html#_environment_properties –

回答

0

尝试使用此配置运行应用程序,您可以在其中定义到application.properties的路径并提供logback配置文件。

$java -jar /{pathToJar}/myApp.jar 
--spring.config.location=/{pathToFolderWithCustomeProperties}/application.properties 
--logging.config=/{path}/logback.xml 
-Dlogback.configurationFile=/{path}/logback.xml