(file) Return to logging.html CVS log (file) (dir) Up to [Pegasus] / pegasus

  1 mday  1.1.2.1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2               <html>
  3                 <head>
  4                   <title>PEP # ?: Pegasus 2.2 Logging Improvements</title>
  5                   <link rel="stylesheet" type="text/css" href="http://www.soft-hackle.net/md.css">
  6                 </head>
  7               
  8                 <body>
  9                 <table >
 10                   <tr>
 11               
 12                     <td>
 13               	<img height="70" src="http://www.opengroup.org/images/pegicon2.gif" width="70" border="0">
 14                     </td>
 15                     <td>
 16               	<h1>PEP # ?: Pegasus 2.2 Logging Improvements</h1>
 17                     </td>
 18                   </tr>
 19                 </table>
 20               
 21                   <table class="comment">
 22 mday  1.1.2.1       <tr align="left">
 23               	<th>Type</th><th>Status</th><th>Approveers</th>
 24                     </tr>
 25                     <tr>
 26               	<td>Architecture</td><td>Draft</td><td>Pegasus architecture team</td>
 27                     </tr>
 28                   </table>
 29                   <table class="comment">
 30                     <tr align="left">
 31               	<th>Version</th><th>Date</th><th>Author</th><th>Comments</th>
 32                     </tr>
 33                     <tr>
 34               	<td>1.0</td><td>Fri Feb 21 09:39:19 2003</td><td>IBM/Mike Day
 35               	</td><td><i>proposed outline, to be completed in further revisions</i></td>
 36                     </tr>
 37                   </table>
 38                   <hr>
 39               
 40                     <h2>Summary</h2>
 41                     <p>
 42               	This proposal is to upgrade the Pegasus logging component and
 43 mday  1.1.2.1 	logging points to the standard expected for commercial daemon
 44               	services and to to allow Pegasus logging messages to be
 45               	written to native platform logging systems such as the
 46               	<code>syslog daemon</code> on Unix.
 47                     </p>
 48               
 49               
 50                     <h2>Problem Solved/Feature Added</h2>
 51               
 52                     <p>
 53               	The logging component in Pegasus 2.1 is minimally implemented
 54               	and rarely used. There are too few logging points in the
 55               	source code and logging is not configurable by component
 56               	(e.g., security, read/write events, connection events, etc.).
 57                     </p>
 58               
 59                     <h3>Integration with platform's native logging service</h3>
 60                     <p>
 61               	Basic support for logging to text files should be retained in
 62               	Pegasus 2.2. However, the <code>Logger</code> class needs to
 63               	be modified to defer to system logging services including at
 64 mday  1.1.2.1 	least the Unix <code>syslog daemon</code> and the Windows
 65               	event log.
 66                     </p>
 67               
 68                     <h3>Definition of Pegasus Logging Components</h3>
 69               
 70                     <p>
 71               	Pegasus logging components need to be defined and supported in
 72               	the <code>Logger</code> class. Logging needs to be
 73               	configurable on a per-component basis. 
 74                     </p>
 75                     <p>
 76               	A tentative list of Pegasus logging components includes the
 77               	following:
 78               	<dl class="enumerated">
 79               	  <dt>Security</dt>
 80               	  <dd>Authentication and authorization events</dd>
 81               	  <dt>Connection</dt>
 82               	  <dd>Connection and termination of clients</dd>
 83               	  <dt>Repository</dt>
 84               	  <dd>Repository write events</dd>
 85 mday  1.1.2.1 	  <dt>Provider</dt>
 86               	  <dd>Provider load/unload and operation execution events</dd>
 87               	  <dt>Exceptions</dt>
 88               	  <dd>Errors and Exceptions</dd>
 89               	  <dt>Lifetime</dt>
 90               	  <dd>Start, stop, install, remove.</dd>
 91               	</dl>
 92                     </p>
 93               
 94                     <h3>Definition of Pegasus Log Entry Classifications</h3>
 95               
 96                     <p>
 97               	Each log entry should be classified consistently with the Unix
 98               	<code>syslog</code> classes which are defined below in
 99               	priority order:
100               
101                     </p>
102                     <p>
103               	<dl class="enumerated">
104               	  <dt>Degug</dt>
105               	  <dd>Information that enables problem solving in the field</dd>
106 mday  1.1.2.1 	  <dt>Info</dt>
107               	  <dd>General low-priority nominal events</dd>
108               	  <dt>Notice</dt>
109               	  <dd>Events that signal a change in state or execution path</dd>
110               	  <dt>Warning</dt>
111               	  <dd>Events that may be a problem or may indication a future problem</dd>
112               	  <dt>Err</dt>
113               	  <dd>Error, nominal</dd>
114               	  <dt>Crit</dt>
115               	  <dd>Error, serious.</dd>
116               	  <dt>Alert</dt>
117               	  <dd>Event (not necesarily an error) that requires notification to other components,
118               	    services, or programs.</dd>
119               	  <dt>Emerg</dt>
120               	  <dd>Fatal error or event that requires immediate response</dd>
121               	</dl>
122                     </p>
123               
124                     <h3>Solution Requirements</h3>
125                     <div class="comment">
126                     <ol class="enumerated">
127 mday  1.1.2.1 	<li>Easy for the customer to configure in the
128               	  field. This includes activating/deactivating logging
129               	  classifications and managing log files.</li>
130               	<li>Provider relevant and sufficient information. There must
131               	  be sufficient logging points throughout the Pegasus source
132               	  code to enable all relevent events to be logged, and to
133               	  provide sufficient information about each event to solve
134               	  problems, handle events, and generally manage the lifetime
135               	  and utility of Pegasus. </li>
136               	<li>NLS enabling. Log messages must be separated from the
137               	  source code to allow for translation and
138               	  internationalization. </li>
139                     </ol>
140                     </div>
141               
142                     <h3>Notes</h3>
143                     <p>
144               	The current logging support for Pegasus is in the source
145               	files: 
146               
147               	<code>$PEGASUS_ROOT/src/Pegasus/Common/Logger.h</code> <br>
148 mday  1.1.2.1 	    and <code>$PEGASUS_ROOT/src/Pegasus/Common/Logger.cpp</code>
149                     </p>
150                     <p>
151               	Chip Vincent has some Pegasus logging code that is integrated
152               	into IBM Director that may be useful. 
153                     </p>
154               
155                     <h3>Proposed Solution</h3>
156               
157                     <h2> Proposed schedule.</h2>
158               
159                     <h2>Risk Mitigation</h2>
160               
161                   <hr>
162                   <address><a href="mailto:mdday@us.ibm.com">Michael Day</a></address>
163               <!-- Created: Fri Feb 21 08:22:38 EST 2003 -->
164               <!-- hhmts start -->
165               Last modified: Fri Feb 21 13:16:47 EST 2003
166               <!-- hhmts end -->
167                 </body>
168               </html>

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2