如何读取logback.xml中的环境变量或属性,并在每个日志行中打印该属性



我想从logback.xml中读取每个日志行中的环境变量或属性。示例如果我点击echo"${FOO_INFO}">,结果是"FOO_result",我需要在每个日志行中打印此FOO_result。

添加JAVA_OPTS="-Dfoo.info=${FOO_info}"后

我尝试了以下选项:-

选项:添加并调用%d{ISO8601}[%thread]%-5level%记录器{36}${FOO_INFO}-%msg%n

文档指出,可以通过使用具有属性转换模式%property{key}的PatternLayout来包含系统属性,其中key是系统属性名称。

您可以使用类似${SOME_VAR}的系统属性,并在运行时使用-D将该值传递到应用程序中。

所以在我的情况下:

<logger name="com.example.app" level="${SOME_LOGGING_LEVEL}"/>

和:

java -DSOME_LOGGING_LEVEL=WARN MyApp

经过验证并且有效。ofc可以在docker、docker compose和Kubernetes中使用,因为这是Logback功能。参见此处

相关内容

  • 没有找到相关文章

最新更新