1 |
|
---|
2 | This directory contains the backbone of the control system. See directory Doc for documentation.
|
---|
3 |
|
---|
4 |
|
---|
5 | Version history
|
---|
6 | ---------------
|
---|
7 |
|
---|
8 | 19/5/2010 Service histories now available via DimRpc from DColl, not via .hist service
|
---|
9 | When regular expression compiling results in error, State is set to ERROR, not
|
---|
10 | FATAL. The erroneous expression is ignored in the following.
|
---|
11 | 25/5/2010 Service history remains available if service itself become unavailable. If not
|
---|
12 | yet in memory, reading from file is tried. Improved error handling of
|
---|
13 | history files.
|
---|
14 | 28/5/2010 Changed name of 'State' service to 'Message' to better reflect its functionality.
|
---|
15 | Added client information to log file entries.
|
---|
16 | 30/5/2010 Created Bridge server that repeats services from one DNS to another.
|
---|
17 | Service quality now also written to slow data file.
|
---|
18 | 31/5/2010 Configuration file format follows semi-standard INI format.
|
---|
19 | 7/6/2010 Separated History service from DColl. History format changed, now includes
|
---|
20 | service format (allows history access also when service is unavailable).
|
---|
21 | 11/6/2010 Bridge does not forward history service
|
---|
22 | 17/6/2010 Added SendToLog() method. Changed severity encoding of Message service to
|
---|
23 | use standard DIM structure of format "I:1;C"
|
---|
24 | 18/6/2010 Alarm server configuration accepts now one email address per server. A new
|
---|
25 | service for each observed server SERVERNAME/AlarmLevel contains the highest
|
---|
26 | level that occurred in the past. Reset of alarm level only via a DIM command.
|
---|
27 | 19/6/2010 ToString() now returns std::string
|
---|
28 | 23/6/2010 GetConfig() returns std::string. Non-blocking configuration request in case
|
---|
29 | GetConfig() not called from main thread. Access to configuration information
|
---|
30 | internally mutex protected. With ActivateSignal() a signal can be set that is send
|
---|
31 | to main thread upon configuration file change, the build-in signal handler then
|
---|
32 | invokes the (virtual) method ConfigChanged().
|
---|
33 | 24/6/2010 Workaround for erroneous /SERVICE_LIST updates. Added static tokenize method to
|
---|
34 | Evidence class.
|
---|
35 | 30/6/2010 Made Lock()/Unlock() publicly available (mutex of type PTHREAD_MUTEX_ERRORCHECK),
|
---|
36 | in case signal is set with ActivateSignal() this signal will be blocked while locked.
|
---|
37 | Implemented experimental automatic full configuration tracking for Bridge.
|
---|
38 | 7/7/2010 All commandHandler() and rpcHandler() safely translates data into string
|
---|
39 | using ToString(). EvidenceServer class constructor now takes std::string as argument.
|
---|
40 | Removed default configuration file from Config.
|
---|
41 | 19/7/2010 Added documentation. Replaced std::vector by std::map at several locations. Access to
|
---|
42 | class-wide pointer in Message() protected by mutex (currently the memory of the
|
---|
43 | second-last message will not be freed correctly if severity is FATAL). Added
|
---|
44 | History server configuration parameters to adjust buffer size.
|
---|
45 | 20/7/2010 SendToLog() does not call Message() in case of error, but writes error message to log.
|
---|
46 | 21/7/2010 Lock()/Unlock() do not report errors via Message(), but print to console and use
|
---|
47 | SendToLog(). That avoids a recursion problem since Message() also uses locking.
|
---|
48 | The general exitHandler() will react in a special way to code 0: it will reset
|
---|
49 | the message severity. This feature is used by Alarm if it receives a command to
|
---|
50 | reset an alarm level.
|
---|