log4cplus
2.1.0
|
#include <deviceappender.hxx>
Public Types | |
typedef device_appender_detail::device_type_traits< Device > | device_traits |
typedef device_traits::device_type | device_type |
Public Member Functions | |
template<typename D > | |
DeviceAppender (D &d, bool close_device=true) | |
template<typename D > | |
DeviceAppender (boost::shared_ptr< D > const &d, bool close_device=true) | |
template<typename D > | |
DeviceAppender (D &d, const helpers::Properties &props) | |
template<typename D > | |
DeviceAppender (boost::shared_ptr< D > const &d, const helpers::Properties &props) | |
virtual | ~DeviceAppender () |
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 |
Protected Member Functions | |
virtual void | append (log4cplus::spi::InternalLoggingEvent const &event) |
Subclasses of Appender should implement this method to perform actual logging. More... | |
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 | |
device_type | device |
bool | close_flag |
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... | |
Additional Inherited Members | |
Public Attributes inherited from log4cplus::helpers::SharedObject | |
thread::Mutex | access_mutex |
Definition at line 81 of file deviceappender.hxx.
typedef device_appender_detail::device_type_traits<Device> log4cplus::DeviceAppender< Device >::device_traits |
Definition at line 85 of file deviceappender.hxx.
typedef device_traits::device_type log4cplus::DeviceAppender< Device >::device_type |
Definition at line 86 of file deviceappender.hxx.
|
inline |
Definition at line 89 of file deviceappender.hxx.
|
inline |
Definition at line 95 of file deviceappender.hxx.
|
inline |
Definition at line 101 of file deviceappender.hxx.
References log4cplus::DeviceAppender< Device >::close_flag, log4cplus::helpers::Properties::exists(), and LOG4CPLUS_TEXT.
|
inline |
Definition at line 112 of file deviceappender.hxx.
References log4cplus::DeviceAppender< Device >::close_flag, log4cplus::helpers::Properties::exists(), and LOG4CPLUS_TEXT.
|
inlinevirtual |
Definition at line 124 of file deviceappender.hxx.
|
inlineprotectedvirtual |
Subclasses of Appender
should implement this method to perform actual logging.
Implements log4cplus::Appender.
Definition at line 138 of file deviceappender.hxx.
References log4cplus::DeviceAppender< Device >::device, log4cplus::Appender::formatEvent(), log4cplus::device_appender_detail::device_type_traits< T >::unwrap(), and log4cplus::helpers::write().
|
inlinevirtual |
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.
Definition at line 129 of file deviceappender.hxx.
References log4cplus::DeviceAppender< Device >::close_flag, log4cplus::DeviceAppender< Device >::device, and log4cplus::device_appender_detail::device_type_traits< T >::unwrap().
|
protected |
Definition at line 146 of file deviceappender.hxx.
Referenced by log4cplus::DeviceAppender< Device >::close(), and log4cplus::DeviceAppender< Device >::DeviceAppender().
|
protected |
Definition at line 145 of file deviceappender.hxx.
Referenced by log4cplus::DeviceAppender< Device >::append(), and log4cplus::DeviceAppender< Device >::close().