Actually, several of the Appenders deal with batches of events, but they get the events 1 at a time and queue them internally. When an application logs an event each event goes through the chain of filters and appenders and every appender that gets the event can do whatever it wants with it. Log4j only queues events when they are going to be processed asynchronously. But even then they are processed one by one.
It really isn’t possible to deal with the events in any other way as the filters must be applied to each message individually. Ralph > On Jun 13, 2017, at 1:39 PM, Volkan Yazıcı <[email protected]> wrote: > > Hi, > > While implementing an *org.apache.logging.log4j.core.Appender*, the only > *append()* method that needs to be implemented takes a single *LogEvent* > argument: *void append(LogEvent event)*. This makes it impossible to > handle and resolve batch append operations at the appender level. This > results in enforcing the appender to implement its own *BurstFilter* and/or > *AsyncFilter* logic. Am I missing something or is this really the case? > > Cheers!
