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.
|
---|
49 | 2/2/2011 Changed encoding of WARN, ERROR and FATAL to 10,20,30 to allow intermediate values.
|
---|
50 | Non-blocking configuration request with default value was not working.
|
---|
51 | Signal handler calls abort() if invoked three times or more.
|
---|
52 | 10/6/2011 Services can be excluded from History buffer (mainly for large event data services)
|
---|
53 | 20/6/2011 History buffers periodically saved to file (in case program crash or computer reboot)
|
---|
54 | 6/7/2011 Missing pthread_mutexattr_init() in Evidence constructor caused spurious errors when
|
---|
55 | locking mutex
|
---|
56 | 2/8/2011 Used inCallback() method of DIM version v19r23 to decide between blocking or
|
---|
57 | non-blocking config request. Updated EvidenceServer::ToString() for B and V formats.
|
---|
58 | 16/2/2012 EvidenceServer::ToString() handles more complex single-type formats (e.g. "F:1;F:4;F"
|
---|
59 | 18/2/2012 History server detection for minimum change takes an index range given in the configuration
|
---|
60 | into account (e.g. Service:a-b:0.4 requires an minimum absolute change of 0.4 for the average
|
---|
61 | value of indices a to b)
|
---|
62 | 20/2/2012 Disabled padding per default in Evidence class constructor, and also in History and DColl
|
---|
63 | servers. EvidenceServer::ToString() can because of this now handle all format strings.
|
---|
64 | 24/2/2012 Improved interactive behaviour of legend items (drag&drop, context menu). Handling of histories in
|
---|
65 | Edd much faster now. Made a new version Edd:LP for La Palma. History server publishes a list of
|
---|
66 | services subscribed to.
|
---|
67 | 13/6/2012 Removed calling Message() before abort() in signal handler, as Message() might get stuck
|
---|
68 | 19/6/2012 Giving no indices in OpenHistory() will try to open plot for all members of an array
|
---|
69 | If DIM_DNS_NODE not set, EvidenceServer will run in local mode, launching a dns in a separate process on localhost
|
---|