不同子类的单独日志记录

separate logging for various subclass

我期待来自第一个 class 的 class 和子 class 的日志。让我们说-

"com.example" 和"com.example.logger"

我需要为这两个创建一个单独的日志文件。 我为这两个创建了两个 appender

Appender1 - 对于 "com.example" 除了 "com.example.logger"

Appender2 - 特定于 "com.example.logger"

尝试将 AsyncLogger 写为 -

<AsyncLogger name="com.example" level="WARN">
    <AppenderRef ref="Appender1" />
</AsyncLogger>

<AsyncLogger name="com.example.logger" level="DEBUG">
    <AppenderRef ref="Appender2" />
</AsyncLogger>

但是,这不起作用,因为来自“com.example.logger”的日志也将转到 Appender1 文件。

需要将 AsyncLogger1 中的内容添加到黑名单“com.example.logger”以防止转到 Appender1

首先为 com.example.logger 定义记录器,将 additivity 参数设置为 false。

例如

<AsyncLogger name="com.example.logger" level="DEBUG" additivity="false">
    <AppenderRef ref="Appender2" />
</AsyncLogger>

<AsyncLogger name="com.example" level="WARN">
    <AppenderRef ref="Appender1" />
</AsyncLogger>