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