logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Niclas Hedhman <nic...@ewarna.com>
Subject AsyncAppender features...
Date Tue, 05 Mar 2002 03:00:45 GMT

I have posted this same issue when I first joined the mailing list, but 
never saw it show up, so...

The AsyncAppender is a great feature for slow logging devices, such as 
file and sockets, but if you have too much load the async FIFO buffer 
will wait (or so it seems) for the secondary appender to complete (i.e. 
remove entries). And then the system will come to a grinding halt anyway.

My suggestion is to introduce a small feature in the AsyncAppender. It 
works like this;

If the FIFO buffer is full, the AsyncAppender first try to remove all 
statements of a certain level (and higher/lower?) in the FIFO, place a 
marker in the FIFO that it has occurred, and add the new entry. If no 
entries were removed, no marker is inserted and current behaviour prevails.
"none" should be the default level for removal and the current behaviour.


I have seen other requests for having the "Location" information 
available for AsyncBuffers, but I think this is less desirable. The 
rationale is that in a development environment, you don't use the 
AsyncAppender, and in the production evironment, the Location generation 
takes too long to generate anyway, and the primary feature of the 
AsyncAppender (low latency) is lost.

I know I have no votes, but -1 on that anyway...


Niclas Hedhman





--
To unsubscribe, e-mail:   <mailto:log4j-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:log4j-dev-help@jakarta.apache.org>


Mime
View raw message