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!


Reply via email to