AsyncAppender Class ReferenceInheritance diagram for AsyncAppender:
[legend]Collaboration diagram for AsyncAppender:
[legend]List of all members.
Detailed Description
The AsyncAppender lets users log events asynchronously. It uses a bounded buffer to store logging events.
The AsyncAppender will collect the events sent to it and then dispatch them to all the appenders that are attached to it. You can attach multiple appenders to an AsyncAppender.
The AsyncAppender uses a separate thread to serve the events in its bounded buffer.
Important note: The AsyncAppender can only be script configured using the DOMConfigurator.
Member Function Documentation
void addAppender |
( |
const AppenderPtr & |
newAppender |
) |
[virtual] |
|
|
Close this AsyncAppender by interrupting the dispatcher thread which will process all pending events before exiting.
Implements Appender. |
AppenderList getAllAppenders |
( |
|
) |
const [virtual] |
|
AppenderPtr getAppender |
( |
const String & |
name |
) |
const [virtual] |
|
int getBufferSize |
( |
|
) |
const |
|
|
Returns the current value of the BufferSize option. |
bool getLocationInfo |
( |
|
) |
const [inline] |
|
|
Returns the current value of the LocationInfo option. |
bool isAttached |
( |
const AppenderPtr & |
appender |
) |
const [virtual] |
|
|
Is the appender passed as parameter attached to this asyncappender?
Implements AppenderAttachable. |
void removeAllAppenders |
( |
|
) |
[virtual] |
|
void removeAppender |
( |
const String & |
name |
) |
[virtual] |
|
|
Remove the appender with the name passed as parameter from the list of appenders.
Implements AppenderAttachable. |
void removeAppender |
( |
const AppenderPtr & |
appender |
) |
[virtual] |
|
|
Remove the appender passed as parameter from the list of appenders.
Implements AppenderAttachable. |
virtual bool requiresLayout |
( |
|
) |
const [inline, virtual] |
|
|
The AsyncAppender does not require a layout. Hence, this method always returns false .
Implements Appender. |
void setBufferSize |
( |
int |
size |
) |
|
|
|
The BufferSize option takes a non-negative integer value. This integer value determines the maximum size of the bounded buffer. Increasing the size of the buffer is always safe. However, if an existing buffer holds unwritten elements, then decreasing the buffer size will result in event loss. Nevertheless, while script configuring the AsyncAppender, it is safe to set a buffer size smaller than the default buffer size because configurators guarantee that an appender cannot be used before being completely configured. |
void setLocationInfo |
( |
bool |
flag |
) |
[inline] |
|
|
The LocationInfo option takes a boolean value. By default, it is set to false which means there will be no effort to extract the location information related to the event. As a result, the event that will be ultimately logged will likely to contain the wrong location information (if present in the log format).
Location information extraction is comparatively very slow and should be avoided unless performance is not a concern. |
Member Data Documentation
|
The default buffer size is set to 128 events. |
The documentation for this class was generated from the following files:
- asyncappender.h
- asyncappender.cpp
|