我有一个编码器,net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder
用于通过股票提供者、模式和自定义提供者的组合来配置日志内容。相同的内容将用于不同的附加程序,例如控制台、文件、滚动文件和用于单元测试的自定义附加程序。我不想在每个 appender 中重复相同的配置,因为它完全相同,所以我想知道是否有办法在不同的 appender 之间共享它?
例如
<configuration>
<appender name="FILE_LOG" class="ch.qos.logback.core.FileAppender">
<encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
... configuration can be shared ...
</encoder>
</appender>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
... repeated the exact same configuration ...
</encoder>
</appender>
我知道有这个“包含”功能,但似乎它必须从根级别(即appender
)开始才能包含。有没有办法在encoder
级别“包含”?