log4cplus_SysLogAppender(3)
| log4cplus::SysLogAppender(3) | log4cplus | log4cplus::SysLogAppender(3) |
NAME
log4cplus::SysLogAppender - Appends log events to a file.
SYNOPSIS
#include <syslogappender.h>
Inherits log4cplus::Appender, and log4cplus::helpers::IConnectorThreadClient.
Public Types
enum RemoteSyslogType { RSTUdp, RSTTcp }
Remote syslog IP protocol type.
Public Member Functions
SysLogAppender (const tstring &ident)
SysLogAppender (const tstring &ident, const
tstring &host, int port=514, const tstring
&facility=tstring(), RemoteSyslogType
remoteSyslogType=RSTUdp, bool ipv6=false)
SysLogAppender (const log4cplus::helpers::Properties
&properties)
virtual ~SysLogAppender ()
virtual void close ()
Release any resources allocated within the appender such as file handles,
network connections, etc.
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. bool
isClosed () const
Check if this appender is in closed state. void syncDoAppend (const
log4cplus::spi::InternalLoggingEvent &event)
This method performs threshold checks and invokes filters before delegating
actual logging to the subclasses specific append method. void
asyncDoAppend (const log4cplus::spi::InternalLoggingEvent
&event)
This method performs book keeping related to asynchronous logging and executes
syncDoAppend() to do the actual logging. void doAppend
(const log4cplus::spi::InternalLoggingEvent &event)
This function checks async flag. virtual log4cplus::tstring
getName ()
Get the name of this appender. virtual void setName (const
log4cplus::tstring &name)
Set the name of this appender. virtual void setErrorHandler
(std::unique_ptr< ErrorHandler > eh)
Set the ErrorHandler for this Appender. virtual
ErrorHandler * getErrorHandler ()
Return the currently set ErrorHandler for this
Appender. virtual void setLayout
(std::unique_ptr< Layout > layout)
Set the layout for this appender. virtual Layout * getLayout ()
Returns the layout of this appender. void setFilter
(log4cplus::spi::FilterPtr f)
Set the filter chain on this Appender. log4cplus::spi::FilterPtr
getFilter () const
Get the filter chain on this Appender. void addFilter
(log4cplus::spi::FilterPtr f)
Add filter at the end of the filters chain. void addFilter
(std::function< spi::FilterResult(const
log4cplus::spi::InternalLoggingEvent &)>)
Add filter at the end of the filters chain. LogLevel
getThreshold () const
Returns this appenders threshold LogLevel. void setThreshold
(LogLevel th)
Set the threshold LogLevel. bool isAsSevereAsThreshold (LogLevel
ll) const
Check whether the message LogLevel is below the appender's threshold. void
waitToFinishAsyncLogging ()
This method waits for all events that are being asynchronously logged to
finish.
Public Member Functions inherited from
log4cplus::helpers::SharedObject
void addReference () const LOG4CPLUS_NOEXCEPT
void removeReference () const
Protected Types
typedef void(SysLogAppender::* AppendFuncType) (const
spi::InternalLoggingEvent &)
Protected Member Functions
virtual int getSysLogLevel (const LogLevel &ll)
const
virtual void append (const spi::InternalLoggingEvent &event)
Subclasses of Appender should implement this method to perform
actual logging. void appendLocal (const
spi::InternalLoggingEvent &event)
Local syslog (served by syslog()) worker function. void appendRemote
(const spi::InternalLoggingEvent &event)
Remote syslog worker function. void initConnector ()
void openSocket ()
virtual thread::Mutex const & ctcGetAccessMutex () const
virtual helpers::Socket & ctcGetSocket ()
virtual helpers::Socket ctcConnect ()
virtual void ctcSetConnected ()
Sets connected flag to true in ConnectorThread's client.
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 Member Functions inherited from
log4cplus::helpers::IConnectorThreadClient
virtual ~IConnectorThreadClient ()
Protected Attributes
tstring ident
int facility
AppendFuncType appendFunc
tstring host
int port
RemoteSyslogType remoteSyslogType
helpers::Socket syslogSocket
bool connected
bool ipv6 = false
helpers::SharedObjectPtr< helpers::ConnectorThread >
connector
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. log4cplus::tstring name
Appenders are named. LogLevel threshold
There is no LogLevel threshold filtering by default.
log4cplus::spi::FilterPtr filter
The first filter in the filter chain. std::unique_ptr< ErrorHandler
> errorHandler
It is assumed and enforced that errorHandler is never null.
std::unique_ptr< helpers::LockFile > lockFile
Optional system wide synchronization lock. bool useLockFile
Use lock file for inter-process synchronization of access to log file. bool
async
Asynchronous append. std::atomic< std::size_t > in_flight
std::mutex in_flight_mutex
std::condition_variable in_flight_condition
bool closed
Is this appender closed?
Static Protected Attributes
static tstring const remoteTimeFormat
Additional Inherited Members
Public Attributes inherited from
log4cplus::helpers::SharedObject
thread::Mutex access_mutex
Detailed Description
Appends log events to a file.
Properties
- ident
- First argument to openlog(), a string that will be prepended to every message.
- facility
- Facility is used in combination with syslog level in first argument to syslog(). It can be one of the supported facility names (case insensitive), e.g. auth, cron, kern, mail, news etc.
- host
- Destination syslog host. When this property is specified, messages are sent using UDP to destination host, otherwise messages are logged to local syslog.
- port
- Destination port of syslog service on host specified by the host property. The default value is port 514.
- udp
- When the syslog is remote, this property picks the IP protocol. When the value is true, UDP is used. When the value is false, TCP is used. The default value is true.
- IPv6
- Boolean value specifying whether to use IPv6 (true) or IPv4 (false). Default value is false.
Note
Definition at line 80 of file syslogappender.h.
Member Typedef Documentation
typedef void(SysLogAppender::* log4cplus::SysLogAppender::AppendFuncType) (const spi::InternalLoggingEvent &) [protected]
Definition at line 123 of file syslogappender.h.
Member Enumeration Documentation
enum log4cplus::SysLogAppender::RemoteSyslogType
Remote syslog IP protocol type.
Enumerator
- RSTUdp
- RSTTcp
Definition at line 88 of file syslogappender.h.
Constructor & Destructor Documentation
log4cplus::SysLogAppender::SysLogAppender (const tstring & ident)
log4cplus::SysLogAppender::SysLogAppender (const tstring & ident, const tstring & host, int port = 514, const tstring & facility = tstring(), RemoteSyslogType remoteSyslogType = RSTUdp, bool ipv6 = false)
log4cplus::SysLogAppender::SysLogAppender (const log4cplus::helpers::Properties & properties)
virtual log4cplus::SysLogAppender::~SysLogAppender () [virtual]
Member Function Documentation
virtual void log4cplus::SysLogAppender::append (const spi::InternalLoggingEvent & event) [protected], [virtual]
Subclasses of Appender should implement this method to perform actual logging.
See also
Implements log4cplus::Appender.
void log4cplus::SysLogAppender::appendLocal (const spi::InternalLoggingEvent & event) [protected]
Local syslog (served by syslog()) worker function.
void log4cplus::SysLogAppender::appendRemote (const spi::InternalLoggingEvent & event) [protected]
Remote syslog worker function.
virtual void log4cplus::SysLogAppender::close () [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.
virtual helpers::Socket log4cplus::SysLogAppender::ctcConnect () [protected], [virtual]
Returns
Implements log4cplus::helpers::IConnectorThreadClient.
virtual thread::Mutex const & log4cplus::SysLogAppender::ctcGetAccessMutex () const [protected], [virtual]
Returns
Implements log4cplus::helpers::IConnectorThreadClient.
virtual helpers::Socket & log4cplus::SysLogAppender::ctcGetSocket () [protected], [virtual]
Returns
Implements log4cplus::helpers::IConnectorThreadClient.
virtual void log4cplus::SysLogAppender::ctcSetConnected () [protected], [virtual]
Sets connected flag to true in ConnectorThread's client.
Implements log4cplus::helpers::IConnectorThreadClient.
virtual int log4cplus::SysLogAppender::getSysLogLevel (const LogLevel & ll) const [protected], [virtual]
void log4cplus::SysLogAppender::initConnector () [protected]
void log4cplus::SysLogAppender::openSocket () [protected]
Member Data Documentation
AppendFuncType log4cplus::SysLogAppender::appendFunc [protected]
Definition at line 125 of file syslogappender.h.
bool log4cplus::SysLogAppender::connected [protected]
Definition at line 131 of file syslogappender.h.
helpers::SharedObjectPtr<helpers::ConnectorThread> log4cplus::SysLogAppender::connector [protected]
Definition at line 145 of file syslogappender.h.
int log4cplus::SysLogAppender::facility [protected]
Definition at line 121 of file syslogappender.h.
tstring log4cplus::SysLogAppender::host [protected]
Definition at line 127 of file syslogappender.h.
tstring log4cplus::SysLogAppender::ident [protected]
Definition at line 120 of file syslogappender.h.
bool log4cplus::SysLogAppender::ipv6 = false [protected]
Definition at line 132 of file syslogappender.h.
int log4cplus::SysLogAppender::port [protected]
Definition at line 128 of file syslogappender.h.
RemoteSyslogType log4cplus::SysLogAppender::remoteSyslogType [protected]
Definition at line 129 of file syslogappender.h.
tstring const log4cplus::SysLogAppender::remoteTimeFormat [static], [protected]
Definition at line 134 of file syslogappender.h.
helpers::Socket log4cplus::SysLogAppender::syslogSocket [protected]
Definition at line 130 of file syslogappender.h.
Author
Generated automatically by Doxygen for log4cplus from the source code.
| Mon Jun 5 2023 21:46:10 | Version 2.0.7 |
