PEP # ?: Pegasus 2.2 Logging Improvements |
Type | Status | Approveers |
---|---|---|
Architecture | Draft | Pegasus architecture team |
Version | Date | Author | Comments |
---|---|---|---|
1.0 | Fri Feb 21 09:39:19 2003 | IBM/Mike Day | proposed outline, to be completed in further revisions |
This proposal is to upgrade the Pegasus logging component and
logging points to the standard expected for commercial daemon
services and to to allow Pegasus logging messages to be
written to native platform logging systems such as the
syslog daemon
on Unix.
The logging component in Pegasus 2.1 is minimally implemented and rarely used. There are too few logging points in the source code and logging is not configurable by component (e.g., security, read/write events, connection events, etc.).
Basic support for logging to text files should be retained in
Pegasus 2.2. However, the Logger
class needs to
be modified to defer to system logging services including at
least the Unix syslog daemon
and the Windows
event log.
Pegasus logging components need to be defined and supported in
the Logger
class. Logging needs to be
configurable on a per-component basis.
A tentative list of Pegasus logging components includes the following:
Each log entry should be classified consistently with the Unix
syslog
classes which are defined below in
priority order:
The current logging support for Pegasus is in the source
files:
$PEGASUS_ROOT/src/Pegasus/Common/Logger.h
and $PEGASUS_ROOT/src/Pegasus/Common/Logger.cpp
Chip Vincent has some Pegasus logging code that is integrated into IBM Director that may be useful.