Java log4j2和ch.qos.logback.core.PropertyDefinerBase
Logback的PropertyDefinebase允许在Logback.xml中使用动态属性。我使用它为FileAppender配置一个目标目录,并使用我的应用程序配置中的值。在我的例子中,有一个枚举实例包含我要使用的值:Java log4j2和ch.qos.logback.core.PropertyDefinerBase,java,logging,configuration,logback,log4j2,Java,Logging,Configuration,Logback,Log4j2,Logback的PropertyDefinebase允许在Logback.xml中使用动态属性。我使用它为FileAppender配置一个目标目录,并使用我的应用程序配置中的值。在我的例子中,有一个枚举实例包含我要使用的值: public String getPropertyValue() {return MyConfigEnum.LOGDIR.value();} logback.xml的相关部分: <fileNamePattern>${logdir}/test.log</f
public String getPropertyValue() {return MyConfigEnum.LOGDIR.value();}
logback.xml的相关部分:
<fileNamePattern>${logdir}/test.log</fileNamePattern>
${logdir}/test.log
。。。以及:
<define name="logdir" class="com.example.MyLogdirDefiner" />
log4j2现在需要这个习惯用法。如何在log4j2.xml中应用MyConfigEnum.LOGDIR的值
我不想在应用程序启动时设置属性。Log4j2还允许您在配置文件中定义新属性
详细信息请参见手册的配置>属性替换部分:谢谢,接受您的回答。显然,Log4j中没有一对一的类比。我现在实现了自己的StrLookup,比如SystemPropertiesLookup。这些查找在启动时由Log4j的插值器自动注册,比较: