我正在尝试编写评估器/过滤器或 logback 中可用的任何其他挂钩,以将日志重定向到应用于单个附加程序的 2 个不同文件。
目前,我正在使用 2 个附加程序和 2 个过滤器。
<appender name="MY_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>..../file1.log</file>
<rollingPolicy ...
</rollingPolicy>
<filter class="MyTrueFilter" /> <!-- FilterReply Match when the filter evaluates to true -->
<encoder>...</encoder>
</appender>
<appender name="MY_FILE2" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>..../file2.log</file>
<rollingPolicy ...
</rollingPolicy>
<filter class="MyFalseFilter" /> <!-- FilterReply Match when the filter evaluates to false -->
<encoder>...</encoder>
</appender>
我正在尝试提出一个使用单个过滤器的单个附加程序,该过滤器具有判断它是否存在的逻辑,MATCH
并使用配置中的表达式来指定当过滤器回复匹配时它必须转到哪个文件。此外,我不想在所有附加程序中复制过滤器/评估器或为每个附加程序编写不同的过滤器。
非常感谢帮助。
PS:我在项目中使用 Scala。