log4cplus
2.1.0
|
This Appender
is a wrapper to which other appenders can be attached.
More...
#include <asyncappender.h>
Public Member Functions | |
AsyncAppender (SharedAppenderPtr const &app, unsigned max_len) | |
AsyncAppender (helpers::Properties const &) | |
virtual | ~AsyncAppender () |
virtual void | close () |
Release any resources allocated within the appender such as file handles, network connections, etc. More... | |
Public Member Functions inherited from log4cplus::Appender | |
Appender () | |
Appender (const log4cplus::helpers::Properties &properties) | |
virtual | ~Appender () |
void | destructorImpl () |
This function is for derived appenders to call from their destructors. More... | |
bool | isClosed () const |
Check if this appender is in closed state. More... | |
void | syncDoAppend (const log4cplus::spi::InternalLoggingEvent &event) |
This method performs threshold checks and invokes filters before delegating actual logging to the subclasses specific {} method. More... | |
void | asyncDoAppend (const log4cplus::spi::InternalLoggingEvent &event) |
This method performs book keeping related to asynchronous logging and executes syncDoAppend() to do the actual logging. More... | |
void | doAppend (const log4cplus::spi::InternalLoggingEvent &event) |
This function checks async flag. More... | |
virtual log4cplus::tstring | getName () |
Get the name of this appender. More... | |
virtual void | setName (const log4cplus::tstring &name) |
Set the name of this appender. More... | |
virtual void | setErrorHandler (std::unique_ptr< ErrorHandler > eh) |
Set the ErrorHandler for this Appender. More... | |
virtual ErrorHandler * | getErrorHandler () |
Return the currently set ErrorHandler for this Appender. More... | |
virtual void | setLayout (std::unique_ptr< Layout > layout) |
Set the layout for this appender. More... | |
virtual Layout * | getLayout () |
Returns the layout of this appender. More... | |
void | setFilter (log4cplus::spi::FilterPtr f) |
Set the filter chain on this Appender. More... | |
log4cplus::spi::FilterPtr | getFilter () const |
Get the filter chain on this Appender. More... | |
void | addFilter (log4cplus::spi::FilterPtr f) |
Add filter at the end of the filters chain. More... | |
void | addFilter (std::function< spi::FilterResult(const log4cplus::spi::InternalLoggingEvent &)>) |
Add filter at the end of the filters chain. More... | |
LogLevel | getThreshold () const |
Returns this appenders threshold LogLevel. More... | |
void | setThreshold (LogLevel th) |
Set the threshold LogLevel. More... | |
bool | isAsSevereAsThreshold (LogLevel ll) const |
Check whether the message LogLevel is below the appender's threshold. More... | |
void | waitToFinishAsyncLogging () |
This method waits for all events that are being asynchronously logged to finish. More... | |
Public Member Functions inherited from log4cplus::helpers::SharedObject | |
void | addReference () const LOG4CPLUS_NOEXCEPT |
void | removeReference () const |
Public Member Functions inherited from log4cplus::helpers::AppenderAttachableImpl | |
AppenderAttachableImpl () | |
virtual | ~AppenderAttachableImpl () |
virtual void | addAppender (SharedAppenderPtr newAppender) |
Add an appender. More... | |
virtual SharedAppenderPtrList | getAllAppenders () |
Get all previously added appenders as an vectory. More... | |
virtual SharedAppenderPtr | getAppender (const log4cplus::tstring &name) |
Look for an attached appender named as name . More... | |
virtual void | removeAllAppenders () |
Remove all previously added appenders. More... | |
virtual void | removeAppender (SharedAppenderPtr appender) |
Remove the appender passed as parameter from the list of appenders. More... | |
virtual void | removeAppender (const log4cplus::tstring &name) |
Remove the appender with the name passed as parameter from the list of appenders. More... | |
int | appendLoopOnAppenders (const spi::InternalLoggingEvent &event) const |
Call the doAppend method on all attached appenders. More... | |
Public Member Functions inherited from log4cplus::spi::AppenderAttachable | |
virtual | ~AppenderAttachable ()=0 |
Protected Member Functions | |
virtual void | append (spi::InternalLoggingEvent const &) |
Subclasses of Appender should implement this method to perform actual logging. More... | |
void | init_queue_thread (unsigned) |
Protected Member Functions inherited from log4cplus::Appender | |
tstring & | formatEvent (const log4cplus::spi::InternalLoggingEvent &event) const |
Protected Member Functions inherited from log4cplus::helpers::SharedObject | |
SharedObject () | |
SharedObject (const SharedObject &) | |
SharedObject (SharedObject &&) | |
virtual | ~SharedObject () |
SharedObject & | operator= (const SharedObject &) LOG4CPLUS_NOEXCEPT |
SharedObject & | operator= (SharedObject &&) LOG4CPLUS_NOEXCEPT |
Protected Attributes | |
thread::AbstractThreadPtr | queue_thread |
thread::QueuePtr | queue |
Protected Attributes inherited from log4cplus::Appender | |
std::unique_ptr< Layout > | layout |
The layout variable does not need to be set if the appender implementation has its own layout. More... | |
log4cplus::tstring | name |
Appenders are named. More... | |
LogLevel | threshold |
There is no LogLevel threshold filtering by default. More... | |
log4cplus::spi::FilterPtr | filter |
The first filter in the filter chain. More... | |
std::unique_ptr< ErrorHandler > | errorHandler |
It is assumed and enforced that errorHandler is never null. More... | |
std::unique_ptr< helpers::LockFile > | lockFile |
Optional system wide synchronization lock. More... | |
bool | useLockFile |
Use lock file for inter-process synchronization of access to log file. More... | |
bool | async |
Asynchronous append. More... | |
std::atomic< std::size_t > | in_flight |
std::mutex | in_flight_mutex |
std::condition_variable | in_flight_condition |
bool | closed |
Is this appender closed? More... | |
Protected Attributes inherited from log4cplus::helpers::AppenderAttachableImpl | |
ListType | appenderList |
Array of appenders. More... | |
Additional Inherited Members | |
Public Attributes inherited from log4cplus::helpers::SharedObject | |
thread::Mutex | access_mutex |
Public Attributes inherited from log4cplus::helpers::AppenderAttachableImpl | |
thread::Mutex | appender_list_mutex |
Protected Types inherited from log4cplus::helpers::AppenderAttachableImpl | |
typedef std::vector< SharedAppenderPtr > | ListType |
This Appender
is a wrapper to which other appenders can be attached.
The attached appendres are then appended to from a separate thread which reads events appended to this appender from a queue.
QueueLimit
Events queue size limit. Default is 100.
Appender
Appender
and its properties to use as sink for logged events.
Definition at line 77 of file asyncappender.h.
log4cplus::AsyncAppender::AsyncAppender | ( | SharedAppenderPtr const & | app, |
unsigned | max_len | ||
) |
log4cplus::AsyncAppender::AsyncAppender | ( | helpers::Properties const & | ) |
|
virtual |
|
protectedvirtual |
Subclasses of Appender
should implement this method to perform actual logging.
Implements log4cplus::Appender.
|
virtual |
Release any resources allocated within the appender such as file handles, network connections, etc.
It is a programming error to append to a closed appender.
Implements log4cplus::Appender.
|
protected |
|
protected |
Definition at line 94 of file asyncappender.h.
|
protected |
Definition at line 93 of file asyncappender.h.