首页 > 解决方案 > 从 Logback 和 Spring Boot 中的 application-properties 文件加载 datePattern

问题描述

在我的logback-spring.xml文件中,我定义了一个时间戳,如下所示:

<timestamp key="date" datePattern="yyyyMMdd"/>

我想知道是否可以从我的application-properties文件中加载这个 datePattern 值。我已经定义了一个logging.date.format=yyyyMMdd在代码的其他部分中使用的属性,如果我也可以在我的 logback 文件中使用它,那将非常有帮助,这样我只需在一个地方进行更改。

标签: javalogginglog4jlogback

解决方案


我在我的应用程序中将属性传递给 logback。在我的 webapp 初始化程序中,获取 LoggerContext 并输入属性。我重置了上下文,因为我更改了一些其他设置,不知道是否需要。

LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory();
JoranConfigurator jc = new JoranConfigurator();
jc.setContext(context);
context.reset();
context.putProperty("prop-name", "prop-value");
jc.doConfigure(config)

在 logback 文件中,您可以使用任何其他属性行

${prop-name}

推荐阅读