24 #ifndef LOG4CPLUS_SOCKET_APPENDER_HEADER_
25 #define LOG4CPLUS_SOCKET_APPENDER_HEADER_
29 #if defined (LOG4CPLUS_HAVE_PRAGMA_ONCE)
107 #if ! defined (LOG4CPLUS_SINGLE_THREADED)
136 #if ! defined (LOG4CPLUS_SINGLE_THREADED)
Extend this class for implementing your own strategies for printing log statements.
Sends spi::InternalLoggingEvent objects to a remote a log server.
virtual helpers::Socket & ctcGetSocket()
log4cplus::tstring serverName
virtual void append(const spi::InternalLoggingEvent &event)
Subclasses of Appender should implement this method to perform actual logging.
virtual helpers::Socket ctcConnect()
log4cplus::helpers::Socket socket
virtual void close()
Release any resources allocated within the appender such as file handles, network connections,...
SocketAppender(const log4cplus::tstring &host, unsigned short port, const log4cplus::tstring &serverName=tstring(), bool ipv6=false)
helpers::SharedObjectPtr< helpers::ConnectorThread > connector
virtual void ctcSetConnected()
Sets connected flag to true in ConnectorThread's client.
SocketAppender(const log4cplus::helpers::Properties &properties)
virtual thread::Mutex const & ctcGetAccessMutex() const
Interface implemented by users of ConnectorThread.
This class implements client sockets (also called just "sockets").
The internal representation of logging events.
LOG4CPLUS_EXPORT log4cplus::spi::InternalLoggingEvent readFromBuffer(SocketBuffer &buffer)
LOG4CPLUS_EXPORT void convertToBuffer(SocketBuffer &buffer, const log4cplus::spi::InternalLoggingEvent &event, const log4cplus::tstring &serverName)
std::basic_string< tchar > tstring
std::size_t const LOG4CPLUS_MAX_MESSAGE_SIZE