org.apache.log.output

Class AsyncLogTarget

Implemented Interfaces:
Runnable, ErrorAware, LogTarget

public class AsyncLogTarget
extends AbstractTarget
implements Runnable

An asynchronous LogTarget that sends entries on in another thread. It is the responsibility of the user of this class to start the thread etc.
 LogTarget mySlowTarget = ...;
 AsyncLogTarget asyncTarget = new AsyncLogTarget( mySlowTarget );
 Thread thread = new Thread( asyncTarget );
 thread.setPriority( Thread.MIN_PRIORITY );
 thread.start();

 logger.setLogTargets( new LogTarget[] { asyncTarget } );
 
Authors:
Avalon Development Team
Peter Donald

Constructor Summary

AsyncLogTarget(LogTarget logTarget)
Creation of a new async log target.
AsyncLogTarget(LogTarget logTarget, int queueSize)
Creation of a new async log target.

Method Summary

void
doProcessEvent(LogEvent event)
Process a log event by adding it to queue.
void
run()
Thread startup.
void
setErrorHandler(ErrorHandler errorHandler)
Provide component with ErrorHandler.

Methods inherited from class org.apache.log.output.AbstractTarget

close, doProcessEvent, error, getErrorHandler, isOpen, open, processEvent, setErrorHandler

Constructor Details

AsyncLogTarget

public AsyncLogTarget(LogTarget logTarget)
Creation of a new async log target.
Parameters:
logTarget - the underlying target

AsyncLogTarget

public AsyncLogTarget(LogTarget logTarget,
                      int queueSize)
Creation of a new async log target.
Parameters:
logTarget - the underlying target
queueSize - the queue size

Method Details

doProcessEvent

public void doProcessEvent(LogEvent event)
Process a log event by adding it to queue.
Overrides:
doProcessEvent in interface AbstractTarget
Parameters:
event - the log event

run

public void run()
Thread startup.

setErrorHandler

public void setErrorHandler(ErrorHandler errorHandler)
Provide component with ErrorHandler.
Specified by:
setErrorHandler in interface ErrorAware
Overrides:
setErrorHandler in interface AbstractTarget
Parameters:
errorHandler - the errorHandler