ppkarwasz commented on issue #2220: URL: https://github.com/apache/logging-log4j2/issues/2220#issuecomment-1903549607
@nitsanw, You are probably right: the main difference between `AsyncLogger`, `AsyncLoggerConfig` and `AsyncAppender` is that the first two have **full control** over the lifecycle of _mutable_ log events, so they can modify log events (e.g. swap parameters between events) without breaking other components. The further down we go in the logging pipeline, the harder it becomes to perform such tricks. The logic of `AsyncLogger` is almost trivial (it breaks the log event by moving its components to the disruptor and resets the event); the logic of `AsyncLoggerConfig` is more complex (it must perform all synchronous logging before breaking the log event); `AsyncAppender` doesn't even try to deal with mutable events and takes a snapshot of the current event. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org