Apache Log4cxx
Version 1.3.0
|
Use SyslogAppender to send log messages to a remote syslog daemon. More...
#include <syslogappender.h>
Public Member Functions | |
SyslogAppender () | |
SyslogAppender (const LayoutPtr &layout, int syslogFacility) | |
SyslogAppender (const LayoutPtr &layout, const LogString &syslogHost, int syslogFacility) | |
~SyslogAppender () | |
void | close () override |
Release any resources held by this SyslogAppender. | |
void | append (const spi::LoggingEventPtr &event, helpers::Pool &p) override |
Subclasses of AppenderSkeleton should implement this method to perform actual logging. | |
void | activateOptions (helpers::Pool &p) override |
Activate the options that were previously set with calls to option setters. | |
void | setOption (const LogString &option, const LogString &value) override |
Set option to value . | |
bool | requiresLayout () const override |
The SyslogAppender requires a layout. | |
void | setSyslogHost (const LogString &syslogHost) |
The SyslogHost option is the name of the the syslog host where log output should go. | |
const LogString & | getSyslogHost () const |
Returns the value of the SyslogHost option. | |
void | setFacility (const LogString &facilityName) |
Set the syslog facility. | |
LogString | getFacility () const |
Returns the value of the Facility option. | |
void | setFacilityPrinting (bool facilityPrinting1) |
If the FacilityPrinting option is set to true, the printed message will include the facility name of the application. | |
bool | getFacilityPrinting () const |
Returns the value of the FacilityPrinting option. | |
void | setMaxMessageLength (int maxMessageLength1) |
int | getMaxMessageLength () const |
Public Member Functions inherited from log4cxx::AppenderSkeleton | |
AppenderSkeleton () | |
AppenderSkeleton (const LayoutPtr &layout) | |
virtual | ~AppenderSkeleton () |
void | finalize () |
Finalize this appender by calling the derived class' close method. | |
void | activateOptions (helpers::Pool &) override |
Activate the options that were previously set with calls to option setters. | |
void | setOption (const LogString &option, const LogString &value) override |
Set option to value . | |
void | addFilter (const spi::FilterPtr newFilter) override |
Add a filter to end of the filter list. | |
void | clearFilters () override |
Clear the filters chain. | |
const spi::ErrorHandlerPtr | getErrorHandler () const |
Return the currently set spi::ErrorHandler for this Appender. | |
spi::FilterPtr | getFilter () const override |
Returns the head Filter. | |
const spi::FilterPtr | getFirstFilter () const |
Return the first filter in the filter chain for this Appender. | |
LayoutPtr | getLayout () const override |
Returns the layout of this appender. | |
LogString | getName () const override |
Returns the name of this Appender. | |
const LevelPtr | getThreshold () const |
Returns this appenders threshold level. | |
bool | isAsSevereAsThreshold (const LevelPtr &level) const |
Check whether the message level is below the appender's threshold. | |
void | doAppend (const spi::LoggingEventPtr &event, helpers::Pool &pool) override |
This method performs threshold checks and invokes filters before delegating actual logging to the subclasses specific AppenderSkeleton::append method. | |
void | setErrorHandler (const spi::ErrorHandlerPtr eh) |
Set the ErrorHandler for this Appender. | |
void | setLayout (const LayoutPtr layout1) override |
Set the layout for this appender. | |
void | setName (const LogString &name1) override |
Set the name of this Appender. | |
void | setThreshold (const LevelPtr &threshold) |
Set the threshold level. | |
Public Member Functions inherited from log4cxx::Appender | |
virtual | ~Appender () |
virtual void | addFilter (const spi::FilterPtr newFilter)=0 |
Add a filter to the end of the filter list. | |
virtual spi::FilterPtr | getFilter () const =0 |
Returns the head Filter. | |
virtual void | clearFilters ()=0 |
Clear the list of filters by removing all the filters in it. | |
virtual void | close ()=0 |
Release any resources allocated within the appender such as file handles, network connections, etc. | |
virtual void | doAppend (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &pool)=0 |
Log in Appender specific way. | |
virtual LogString | getName () const =0 |
Get the name of this appender. | |
virtual void | setLayout (const LayoutPtr layout)=0 |
Set the Layout for this appender. | |
virtual LayoutPtr | getLayout () const =0 |
Returns this appenders layout. | |
virtual void | setName (const LogString &name)=0 |
Set the name of this appender. | |
virtual bool | requiresLayout () const =0 |
Configurators call this method to determine if the appender requires a layout. | |
Public Member Functions inherited from log4cxx::spi::OptionHandler | |
virtual | ~OptionHandler () |
virtual void | activateOptions (helpers::Pool &p)=0 |
Activate the options that were previously set with calls to option setters. | |
virtual void | setOption (const LogString &option, const LogString &value)=0 |
Set option to value . | |
Public Member Functions inherited from log4cxx::helpers::Object | |
virtual | ~Object () |
virtual const helpers::Class & | getClass () const =0 |
virtual bool | instanceof (const Class &clazz) const =0 |
virtual const void * | cast (const Class &clazz) const =0 |
Static Public Member Functions | |
static LogString | getFacilityString (int syslogFacility) |
Returns the specified syslog facility as a lower-case String, e.g. | |
static int | getFacility (const LogString &facilityName) |
Returns the integer value corresponding to the named syslog facility, or -1 if it couldn't be recognized. | |
Protected Member Functions | |
void | initSyslogFacilityStr () |
Protected Member Functions inherited from log4cxx::AppenderSkeleton | |
AppenderSkeleton (LOG4CXX_PRIVATE_PTR(AppenderSkeletonPrivate) priv) | |
virtual void | append (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &p)=0 |
Subclasses of AppenderSkeleton should implement this method to perform actual logging. | |
void | doAppendImpl (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &pool) |
Use SyslogAppender to send log messages to a remote syslog daemon.
Note that by default, this appender will split up messages that are more than 1024 bytes long, for compatability with BSD syslog(see RFC 3164). Modern syslog implementations(e.g. syslog-ng) can accept messages much larger, and may have a default of 8k. You may modify the default size of the messages by setting the MaxMessageLength option.
When the message is too large for the current MaxMessageLength, the packet number and total # will be appended to the end of the message like this: (5/10)
log4cxx::net::SyslogAppender::SyslogAppender | ( | ) |
log4cxx::net::SyslogAppender::SyslogAppender | ( | const LayoutPtr & | layout, |
int | syslogFacility | ||
) |
log4cxx::net::SyslogAppender::SyslogAppender | ( | const LayoutPtr & | layout, |
const LogString & | syslogHost, | ||
int | syslogFacility | ||
) |
log4cxx::net::SyslogAppender::~SyslogAppender | ( | ) |
|
overridevirtual |
Activate the options that were previously set with calls to option setters.
No action is performed in this implementation.
Reimplemented from log4cxx::AppenderSkeleton.
|
overridevirtual |
Subclasses of AppenderSkeleton
should implement this method to perform actual logging.
See also AppenderSkeleton::doAppend method.
Implements log4cxx::AppenderSkeleton.
|
overridevirtual |
Release any resources held by this SyslogAppender.
Implements log4cxx::Appender.
LogString log4cxx::net::SyslogAppender::getFacility | ( | ) | const |
Returns the value of the Facility option.
|
static |
Returns the integer value corresponding to the named syslog facility, or -1 if it couldn't be recognized.
facilityName | one of the strings KERN, USER, MAIL, DAEMON, AUTH, SYSLOG, LPR, NEWS, UUCP, CRON, AUTHPRIV, FTP, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The matching is case-insensitive. |
bool log4cxx::net::SyslogAppender::getFacilityPrinting | ( | ) | const |
Returns the value of the FacilityPrinting option.
|
static |
Returns the specified syslog facility as a lower-case String, e.g.
"kern", "user", etc.
int log4cxx::net::SyslogAppender::getMaxMessageLength | ( | ) | const |
const LogString & log4cxx::net::SyslogAppender::getSyslogHost | ( | ) | const |
Returns the value of the SyslogHost option.
|
protected |
|
inlineoverridevirtual |
The SyslogAppender requires a layout.
Hence, this method returns true
.
Implements log4cxx::Appender.
void log4cxx::net::SyslogAppender::setFacility | ( | const LogString & | facilityName | ) |
Set the syslog facility.
This is the Facility option.
The facilityName
parameter must be one of the strings KERN, USER, MAIL, DAEMON, AUTH, SYSLOG, LPR, NEWS, UUCP, CRON, AUTHPRIV, FTP, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. Case is unimportant.
void log4cxx::net::SyslogAppender::setFacilityPrinting | ( | bool | facilityPrinting1 | ) |
If the FacilityPrinting option is set to true, the printed message will include the facility name of the application.
It is false by default.
void log4cxx::net::SyslogAppender::setMaxMessageLength | ( | int | maxMessageLength1 | ) |
|
overridevirtual |
Set option
to value
.
Supported options | Supported values | Default value |
---|---|---|
SysLogHost | (1) | - |
Facility | (2) | - |
MaxMessageLength | {int} | 1024 |
(1) A valid internet address, optionally with the port number as a suffix after a ':'.
(2) One of kern,user,mail,daemon,auth,syslog,lpr,news,uucp,cron,ftp,local0,local1,local2,local3,local4,local5,local6,local7
Reimplemented from log4cxx::AppenderSkeleton.
void log4cxx::net::SyslogAppender::setSyslogHost | ( | const LogString & | syslogHost | ) |
The SyslogHost option is the name of the the syslog host where log output should go.
WARNING If the SyslogHost is not set, then this appender will fail.