ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/documentation/specification/logging.txt
Revision: 1.1
Committed: Wed Nov 29 01:28:31 2000 UTC (24 years ago) by tdb
Content type: text/plain
Branch: MAIN
CVS Tags: PROJECT_COMPLETION
Log Message:
Half of the document on the logging system.

File Contents

# User Rev Content
1 tdb 1.1 I-Scream Logging System - initial draft
2     =======================
3    
4     tdb1, 29/11/2000
5    
6     This document aims to cover the Logging System in the
7     i-Scream Central Monitoring System. Two areas will be
8     covered, looking at the system from two angles.
9    
10     - Monitoring the System (user)
11    
12     - Utilising the Logging System (developer)
13    
14    
15     Monitoring the System
16     =====================
17    
18     The Central Monitoring Systems provides a configurable
19     logging system. A variety of loggers can easily be chosen
20     betweeen by simply changing some settings in the system
21     configuration. The system also provides an extendable
22     interface so further logging mechanisms can easily be added.
23     This will be covered further later on.
24    
25     How it works
26     ------------
27    
28     The system has one central point of logging for the server
29     components (not the host or the clients). This functionality
30     is provided over a CORBA system, but this is transparent to
31     the end user. As each component is started up a request is
32     made to the central naming service for the logging system,
33     and then log messages can be sent straight to it.
34    
35     Types of Logging Implementations
36     --------------------------------
37    
38     The messages are passed over CORBA into the logging
39     component. Here they are formatted with the date and time
40     before being output to the final "destination". The system,
41     as standard, provides a range of loggers, each with a
42     different method of logging. At present this list stands at;
43    
44     - Screen Logger (ScreenLogger.class)
45     A basic logger that outputs all messages to the console
46     on which the CORE was started up. This is the simplest
47     way of seeing what's happening.
48    
49     - File Logger (FileLogger.class)
50     Similar to the screen logger, except all output is
51     written to a named file. This is better for ongoing
52     logging.
53    
54     - Multi Logger (MultiLogger.class)
55     This logger, at present implements both of the above
56     loggers. It is intended to allow more versatility from
57     the system. It is planned to allow this logger to
58     support as many, or as few, or these loggers as is
59     required.
60    
61     - Simple GUI Logger (SimpleGUILogger.class)
62     A basic GUI logger that just dumps the output to a
63     window on the console machine. Lacks many nice features,
64     such as the window scrolling.
65    
66     - Swing GUI Logger (SwingGUILogger.class)
67     A more advanced version of the above logger, more
68     polished and much nicer to use. Can be made full screen
69     for use on a permanent logging station.
70    
71     Choosing a Logger
72     -----------------
73    
74     Choosing which logger you which to use is simple. In the
75     CORE directory there should be a default.properties file.
76     This file governs the initial bootstrapping of the server.
77     The following two entries are required by the logging
78     system.
79    
80     uk.ac.ukc.iscream.LoggerClass=ScreenLogger
81     uk.ac.ukc.iscream.LoggerClassParam=
82    
83     The "LoggerClass" entry specifies the name of the logger to
84     use. For example, in the above case the ScreenLogger has
85     been selected. Note that the .class extension is *not*
86     added. This is all that is required to tell the system to
87     utilise the ScreenLogger.
88    
89     The second entry, "LoggerClassParam" is only required by the
90     File Logger (and therfore the Multi Logger) to specify which
91     file to write to. All the other loggers do not require this
92     to be set. However, future loggers may use this, and
93     additional parameters, to configure themselves.
94    
95     Setting a Verbosity Level
96     -------------------------
97    
98     The Logging system also provides a range of verbosity
99     levels, so the output can be further tailored to suit the
100     needs of the end user. The lower numbered levels give only
101     the most important messages, whilst high numbers give a lot
102     of information only really useful for debugging. These are
103     specified as follows;
104    
105     FATAL - (0) Fatal or Critical Errors
106     ERROR - (1) All Errors
107     WARNING - (2) Warnings
108     SYSMSG - (3) System Component messages
109     SYSINIT - (4) System Component initialisation
110     DEBUG - (5) All debugging messages
111    
112     The required verbosity setting can be chosen in the
113     default.properties configuration file - the same one in
114     which the logger was specified above.
115    
116     The following setting should be setting to one of the
117     numbers above. In this case it has been set to maximum
118     verbosity, the DEBUG level.
119    
120     uk.ac.ukc.iscream.Verbosity= 5
121    
122     What do the loggers not do ?
123     ----------------------------
124    
125     The loggers only monitor the state of the server. They do
126     not monitor activity on either the host or clients, although
127     they may well receive information from components intefacing
128     with them.
129    
130     They also do not log anything to do with the actual
131     monitoring of hosts, but rather they monitoring the
132     "monitoring system". The information provided by the loggers
133     is purely for analysing the activity of the Central
134     Monitoring System, and for identifying failures within the
135     system.
136    
137    
138     Utilising the Logging System
139     ============================
140    
141     To be added;
142    
143     - developing loggers
144     - utilising a logger in the server
145    
146    
147     About
148     =====
149    
150     This document was written by Tim Bishop [tdb1@ukc.ac.uk] for
151     use by the team working on a 3rd year Computer Science
152     project called "i-scream". More details can be found on the
153     project website;
154    
155     http://www.i-scream.org.uk