Library: Net
Package: Logging
Header: Poco/Net/RemoteSyslogChannel.h
This Channel implements remote syslog logging over UDP according to the syslog Working Group Internet Draft: "The syslog Protocol" <http://www.ietf.org/internet-drafts/draft-ietf-syslog-protocol-17.txt>, and "Transmission of syslog messages over UDP" <http://www.ietf.org/internet-drafts/draft-ietf-syslog-transport-udp-07.txt>.
In addition, RemoteSyslogChannel also supports the "old" BSD syslog protocol, as described in RFC 3164.
Direct Base Classes: Poco::Channel
All Base Classes: Poco::Channel, Poco::Configurable, Poco::RefCountedObject
Member Functions: close, getPrio, getProperty, log, open, registerChannel, setProperty
Inherited Functions: close, duplicate, getProperty, log, open, referenceCount, release, setProperty
SYSLOG_PORT = 514
SYSLOG_KERN = (0 << 3)
kernel messages
SYSLOG_USER = (1 << 3)
random user-level messages
SYSLOG_MAIL = (2 << 3)
mail system
SYSLOG_DAEMON = (3 << 3)
system daemons
SYSLOG_AUTH = (4 << 3)
security/authorization messages
SYSLOG_SYSLOG = (5 << 3)
messages generated internally by syslogd
SYSLOG_LPR = (6 << 3)
line printer subsystem
SYSLOG_NEWS = (7 << 3)
network news subsystem
SYSLOG_UUCP = (8 << 3)
UUCP subsystem
SYSLOG_CRON = (9 << 3)
clock daemon
SYSLOG_AUTHPRIV = (10 << 3)
security/authorization messages (private)
SYSLOG_FTP = (11 << 3)
ftp daemon
SYSLOG_NTP = (12 << 3)
ntp subsystem
SYSLOG_LOGAUDIT = (13 << 3)
log audit
SYSLOG_LOGALERT = (14 << 3)
log alert
SYSLOG_CLOCK = (15 << 3)
clock deamon
SYSLOG_LOCAL0 = (16 << 3)
reserved for local use
SYSLOG_LOCAL1 = (17 << 3)
reserved for local use
SYSLOG_LOCAL2 = (18 << 3)
reserved for local use
SYSLOG_LOCAL3 = (19 << 3)
reserved for local use
SYSLOG_LOCAL4 = (20 << 3)
reserved for local use
SYSLOG_LOCAL5 = (21 << 3)
reserved for local use
SYSLOG_LOCAL6 = (22 << 3)
reserved for local use
SYSLOG_LOCAL7 = (23 << 3)
reserved for local use
SYSLOG_EMERGENCY = 0
Emergency: system is unusable
SYSLOG_ALERT = 1
Alert: action must be taken immediately
SYSLOG_CRITICAL = 2
Critical: critical conditions
SYSLOG_ERROR = 3
Error: error conditions
SYSLOG_WARNING = 4
Warning: warning conditions
SYSLOG_NOTICE = 5
Notice: normal but significant condition
Informational: informational messages
SYSLOG_DEBUG = 7
Debug: debug-level messages
Creates a RemoteSyslogChannel.
RemoteSyslogChannel(
const std::string & address,
const std::string & name,
int facility = SYSLOG_USER,
bool bsdFormat = false
);
Creates a RemoteSyslogChannel with the given target address, name, and facility. If bsdFormat is true, messages are formatted according to RFC 3164.
void close();
Closes the RemoteSyslogChannel.
See also: Poco::Channel::close()
std::string getProperty(
const std::string & name
) const;
Returns the value of the property with the given name.
See also: Poco::Channel::getProperty()
void log(
const Message & msg
);
Sends the message's text to the syslog service.
See also: Poco::Channel::log()
void open();
Opens the RemoteSyslogChannel.
See also: Poco::Channel::open()
static void registerChannel();
Registers the channel with the global LoggingFactory.
void setProperty(
const std::string & name,
const std::string & value
);
Sets the property with the given value.
The following properties are supported:
See also: Poco::Channel::setProperty()
static int getPrio(
const Message & msg
);
static const std::string BSD_TIMEFORMAT;
static const std::string PROP_FACILITY;
static const std::string PROP_FORMAT;
static const std::string PROP_HOST;
static const std::string PROP_LOGHOST;
static const std::string PROP_NAME;
static const std::string SYSLOG_TIMEFORMAT;