log4cpp::NTEventLogAppender - Man Page

NTEventLogAppender is an Appender that sends LoggingEvents to the Windows event log.

Synopsis

#include <NTEventLogAppender.hh>

Inherits log4cpp::AppenderSkeleton.

Public Member Functions

NTEventLogAppender (const std::string &name, const std::string &sourceName)
Instantiate an NTEventLogAppender with given name and source.
virtual ~NTEventLogAppender ()
virtual bool reopen ()
Calls open() and close()
virtual void close ()
Release any resources allocated within the appender such as file handles, network connections, etc.
virtual bool requiresLayout () const
The NTEventLogAppender does its own Layout.
virtual void setLayout (Layout *layout)
Set the Layout for this appender.

Public Member Functions inherited from log4cpp::AppenderSkeleton
virtual ~AppenderSkeleton ()
Destructor for AppenderSkeleton.
virtual void doAppend (const LoggingEvent &event)
Log in Appender specific way.
virtual bool reopen ()
Reopens the output destination of this Appender, e.g.
virtual void close ()=0
Release any resources allocated within the appender such as file handles, network connections, etc.
virtual bool requiresLayout () const =0
Check if the appender uses a layout.
virtual void setLayout (Layout *layout)=0
Set the Layout for this appender.
virtual void setThreshold (Priority::Value priority)
Set the threshold priority of this Appender.
virtual Priority::Value getThreshold ()
Get the threshold priority of this Appender.
virtual void setFilter (Filter *filter)
Set a Filter for this appender.
virtual Filter * getFilter ()
Get the Filter for this appender.

Public Member Functions inherited from log4cpp::Appender
virtual ~Appender ()
Destructor for Appender.
virtual void doAppend (const LoggingEvent &event)=0
Log in Appender specific way.
virtual bool reopen ()=0
Reopens the output destination of this Appender, e.g.
virtual void close ()=0
Release any resources allocated within the appender such as file handles, network connections, etc.
virtual bool requiresLayout () const =0
Check if the appender uses a layout.
virtual void setLayout (Layout *layout)=0
Set the Layout for this appender.
const std::string & getName () const
Get the name of this appender.
virtual void setThreshold (Priority::Value priority)=0
Set the threshold priority of this Appender.
virtual Priority::Value getThreshold ()=0
Get the threshold priority of this Appender.
virtual void setFilter (Filter *filter)=0
Set a Filter for this appender.
virtual Filter * getFilter ()=0
Get the Filter for this appender.

Protected Member Functions

WORD getCategory (Priority::Value priority)
Convert log4cpp Priority to an EventLog category.
WORD getType (Priority::Value priority)
Convert log4cpp Priority to an EventLog type.
HKEY regGetKey (TCHAR *subkey, DWORD *disposition)
void regSetString (HKEY hkey, TCHAR *name, TCHAR *value)
void regSetDword (HKEY hkey, TCHAR *name, DWORD value)
void addRegistryInfo (const char *source)
virtual void open ()
virtual void _append (const LoggingEvent &event)
Sends a LoggingEvent to NT Event log.

Protected Member Functions inherited from log4cpp::AppenderSkeleton
AppenderSkeleton (const std::string &name)
Constructor for AppenderSkeleton.
virtual void _append (const LoggingEvent &event)=0
Log in Appender specific way.

Protected Member Functions inherited from log4cpp::Appender
Appender (const std::string &name)
Constructor for Appender.

Protected Attributes

HANDLE _hEventSource
std::string _strSourceName

Additional Inherited Members

Static Public Member Functions inherited from log4cpp::Appender

static Appender * getAppender (const std::string &name)
Get a pointer to an exitsing Appender.
static bool reopenAll ()
Call reopen() on all existing Appenders.
static void closeAll ()
Call reopen() on all existing Appenders.

Detailed Description

NTEventLogAppender is an Appender that sends LoggingEvents to the Windows event log.

Building log4cpp.dsp/log4cppDLL.dsp creates the resource DLL NTEventLogAppender.dll. Do not forget to place this DLL in a directory that is on the PATH of the Windows system. Otherwise, the category and message will not display correctly in Event Viewer.
NB: This class is only available on Win32 platforms.

Constructor & Destructor Documentation

log4cpp::NTEventLogAppender::NTEventLogAppender (const std::string & name, const std::string & sourceName)

Instantiate an NTEventLogAppender with given name and source.

Parameters

name The name of the Appender
sourceName The source name to log

log4cpp::NTEventLogAppender::~NTEventLogAppender () [virtual]

Member Function Documentation

void log4cpp::NTEventLogAppender::_append (const LoggingEvent & event) [protected], [virtual]

Sends a LoggingEvent to NT Event log.

Parameters

event the LoggingEvent to log.

Implements log4cpp::AppenderSkeleton.

void log4cpp::NTEventLogAppender::addRegistryInfo (const char * source) [protected]

void log4cpp::NTEventLogAppender::close () [virtual]

Release any resources allocated within the appender such as file handles, network connections, etc.

Implements log4cpp::AppenderSkeleton.

WORD log4cpp::NTEventLogAppender::getCategory (Priority::Value priority) [protected]

Convert log4cpp Priority to an EventLog category. Each category is backed by a message resource so that proper category names will be displayed in the NT Event Viewer.

WORD log4cpp::NTEventLogAppender::getType (Priority::Value priority) [protected]

Convert log4cpp Priority to an EventLog type. The log4cpp package supports 8 defined priorites, but the NT EventLog only knows 3 event types of interest to us: ERROR, WARNING, and INFO.

void log4cpp::NTEventLogAppender::open () [protected], [virtual]

HKEY log4cpp::NTEventLogAppender::regGetKey (TCHAR * subkey, DWORD * disposition) [protected]

void log4cpp::NTEventLogAppender::regSetDword (HKEY hkey, TCHAR * name, DWORD value) [protected]

void log4cpp::NTEventLogAppender::regSetString (HKEY hkey, TCHAR * name, TCHAR * value) [protected]

bool log4cpp::NTEventLogAppender::reopen () [virtual]

Calls open() and close()

Reimplemented from log4cpp::AppenderSkeleton.

bool log4cpp::NTEventLogAppender::requiresLayout () const [virtual]

The NTEventLogAppender does its own Layout.

Returns

false

Implements log4cpp::AppenderSkeleton.

void log4cpp::NTEventLogAppender::setLayout (Layout * layout) [virtual]

Set the Layout for this appender.

Parameters

layout The layout to use.

Implements log4cpp::AppenderSkeleton.

Member Data Documentation

HANDLE log4cpp::NTEventLogAppender::_hEventSource [protected]

std::string log4cpp::NTEventLogAppender::_strSourceName [protected]

Author

Generated automatically by Doxygen for log4cpp from the source code.

Info

Thu Jan 19 2023 Version 1.1.3 log4cpp