【问题标题】:Log4J2 property substitution - with an external properties fileLog4J2 属性替换 - 使用外部属性文件
【发布时间】:2019-11-15 14:22:13
【问题描述】:

在我的应用程序中,我有一个外部属性文件,我试图使用这个文件在我的 log4J2.xml 中定义一些属性

有人知道怎么做吗?

提前致谢。

[已编辑]

我认为我的问题并不清楚,我有使用外部属性文件而不是 application.properties 的 springboot 模块。问题是当我这样做 ${bundle:application:file.name} 时它起作用了,但是现在将 application.properties 更改为另一个位置(比如 D:/myProperties.properties)我的 log4j2.xml 无法识别属性“我的文件名”。

【问题讨论】:

    标签: java spring spring-boot log4j log4j2


    【解决方案1】:

    您可以使用属性替换,Log4j 2 支持将配置中的标记指定为对其他地方定义的属性的引用。 https://logging.apache.org/log4j/2.0/manual/configuration.html#PropertySubstitution

    <Configuration status="debug">
        <Appenders>
            <Appender type="File" name="File"
                      fileName="${sys:testAppLogPath:-default/location/of/testApp.log}">
    
        </Appenders>
    </Configuration>
    

    【讨论】:

    • 使用 EnvironmentLookup 允许在全局文件或应用程序的启动脚本中配置环境变量,然后从日志配置中检索这些变量。 $${env:USER}
    猜你喜欢
    • 2014-03-28
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 2013-06-30
    • 2013-08-12
    • 2012-04-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多