2015-01-19 Wolfgang Lux * GNUmakefile.preamble: Fix wrong option letter in sed command. 2015-01-15 Richard Frith-Macdonald * EcAlarmDestination.m: When shutting down, only wait for the background thread first time ... otherwise we could get into a recursive loop calling the -shutdown method while waiting for shutdown to complete. 2015-01-07 Richard Frith-Macdonald * configure.ac: * GNUMakefile.preamble: Filter out fstack-protect-strong from snmp cflags because clang doesn't support it. 2014-11-28 Richard Frith-Macdonald * EcAlarmSinkSNMP.m: Fix incorrect OID setup for alarm table in SNMP agent. 2014-11-27 Richard Frith-Macdonald * EcUserDefaults.m: The -doubleForKey: method was commented out! Restore it. 2014-11-26 Richard Frith-Macdonald * EcProcess.m: Make -cmdLastIP, -cmdLastOP (and their setters) thread-safe. 2014-11-02 Richard Frith-Macdonald * EcProcess.h: * EcProcess.m: Add method to register a user default / configuration key to have updates for a default automatically trigger a method to handle it, and to provide 'help' documentation for command line arguments. * EcCommand.m: Implement 'restart' command for when we want to quit a server and have it start up again. 2014-11-01 Richard Frith-Macdonald * EcProcess.m: Check for descriptor leaks at 1 minute intervals, and shut down if EcDescriptorsMaximum is exceeded or if the process runs out of descriptors. 2014-10-23 Richard Frith-Macdonald * EcCommand.m: * Control.plist: Add LaunchOrder config to control the order in which services are handled by the Command server. By default we now do them in lexicographic order rather than leaving the order undefined. 2014-09-16 Richard Frith-Macdonald * EcCommand.m: Simplify handling of loss of process and configuration error alarms. Clear such alarms when we receive a ping from the process. EcLogger.[hm]: Add documentation in the header, plus a new method to make subclassing a bit easier. Fix bug in naming of config keys. 2014-09-04 Richard Frith-Macdonald * EcProcess.m: Fix missing clear after unable to register with name server. 2014-09-02 Richard Frith-Macdonald * EcControl.m: If a Command server on a host registers and we already have a Command server registered, have the new registration replace the old one rather than rejecting it. The aim is to handle a race condition where a Command server is re-registering after some network problem and the old registration is still in place. * EcAlerter.m: Add more debug logging to show what elarms/alerts are handled by what rules. 2014-07-30 Richard Frith-Macdonald * EcProcess.h: * EcProcess.m: Added +ecSetup method to create/initialise the singleton instance. 2014-07-01 Richard Frith-Macdonald * Command.m: * Control.m: Implement auto-restart ... Run a 'Watcher' process as a daemon with the actual server as a subtask. If the subtask dies with a status other than zero, restart it after a 30 second delay. 2014-06-20 Richard Frith-Macdonald * EcProcess.m: Make sure the NSHost cache is flushed at least once per minute (by -ecNewMinute:) so that any stale information is replaced reasonably promptly. 2014-05-16 Richard Frith-Macdonald * EcAlarmDestination.m: Perform all connection operations in main thread (forwarding etc) and ensure that we run the current run loop while waiting for startup and shutdown. * EcLogger.m: Use floating point flush interval for modern systems which run faster and might want to flush more than once per second. * EcProcess.m: Don't start handling timeouts until the process is actually running (so we don't get any during initialisation of the class). * GNUmakefile: bump subminor version number for release Version 1.1.3 release 2014-05-14 Richard Frith-Macdonald * EcAlerter.m: fix bug processing alert emails * GNUmakefile: bump subminor version number for release Version 1.1.2 release 2014-05-08 Richard Frith-Macdonald * EcProcess.m: add memory commands 'class' and 'list' to record allocated instances of a specific class and list them... another memory debugging option. * GNUmakefile: bump subminor version number for release Version 1.1.1 release 2014-05-08 Richard Frith-Macdonald * GNUmakefile: bump subminor version number for release Version 1.1.0: scripting and alarm improvements. 2014-04-27 Richard Frith-Macdonald * EcProcess.h: * EcProcess.m: Add +ecInitialDefaults to allow subclasses to easily set and modify default configuration values. 2014-03-28 Richard Frith-Macdonald * EcTest.h: * EcTest.m: * EcProcess.m: * GNUmakefile: Add a few simple functions to connect to a process, set/get the config of a running process, and issue commands (and get back the response) so that regression test software can relatively easily exercie an entire system. 2014-03-26 Richard Frith-Macdonald * EcControl.m: Add option to allow any user to log in. 2014-03-25 Richard Frith-Macdonald * EcConsole.m: Don't read from stdin whn in non-interactive mode * EcProcess.m: Allow up to ten seconds to Contact Command server on startup. 2014-03-18 Richard Frith-Macdonald * ECCL.h: * EcCommand.m: * EcConsole.m: * GNUmakefile: Extend Console tool to support non-interactive use for scripting etc. 2014-02-28 Richard Frith-Macdonald * EcControl.m: * ECCL.h: Extend system so the Terminate tool can contact the Control server and shut down the entire cluster rather than just a singlee host. 2014-02-22 Richard Frith-Macdonald * EcAlarmDestination.h: * EcAlarmDestination.m: When clearing an alarm, forward the clear to the next destination unless we have already done so. When unmanaging a managed object, remove internal records of cleared and active alarms for that managed object. 2014-01-16 Richard Frith-Macdonald * EcProcess.m: * EcAlarmDestination.h: * EcAlarmDestination.m: Remove experimental force clear method ... obey the KISS rule and stick to using domanange and unmanage methods for clearing on startup/shutdown. People wanting alars which persist after process shutdown should create a secondary managed object for them. 2013-11-04 Richard Frith-Macdonald * EcProcess.m: * EcCommand.m: * EcClientI.h: * EcClientI.m: * EcAlarmDestination.h: Change error/alert logs to use alarm mechanism instead. 2013-08-20 Richard Frith-Macdonald * EcConsole.m: Ignore exception printing message on shutdown. * EcProcess.m: Improve SIGHUP handling. Add new option for memory usage logging and increase default alert increments again. Make name of allowed usage config consistent with other names. Add option to quit process when usage gets too high. 2013-08-05 Richard Frith-Macdonald * AlarmTool.m: Tool to raise/clear alarms * LogTool.m: Tool to generate logs * Terminate.m: Cleanups * GNUmakefile: Build new tools * ECCL.h: Document new tools 2013-07-12 Richard Frith-Macdonald * EcProcess.h: New method to get EC user directory * EcProcess.m: implement new method * EcCommand.m: Add simple auto compress/delete of logs CompressLogsAfter and DeleteLogsAfter control this. 2013-07-06 Richard Frith-Macdonald * EcConsole.m: Strip spaces from command line to avoid a space at end of line causing the line terminator to be treated as an argument. 2013-04-07 Richard Frith-Macdonald * EcControl.m: * EcAlerter.h: * EcAlerter.m: * Alaertconfig.plist: More restrucuturing plus addition of rules options for improving formatting of output messages and handling alerts due to alarms. Add some example alert configuration. 2013-04-06 Richard Frith-Macdonald * EcControl.m: * EcAlerter.h: * EcAlerter.m: Restructure for better integration of alrm system with alert system. Send critical alarms as alerts and major alarms as errors. Repeat delivery of outstanding critical/major alarms periodically (still need to make this period configurable). Send clear message when a major/critical alarm is cleared, trying to get mail clients to replace original email with the clear so the recipient can tell a problem has gone away. 2013-04-05 Richard Frith-Macdonald * EcControl.m: Fix to get 'control on ...' to work while connected to a specific server. 2013-03-22: Niels Grewe * EcControl.m: Fix bug that could remove a alerter when it was still needed. 2013-03-18: Niels Grewe * EcAlerter.h * EcAlerter.m: Rearrange and expose a few methods so that subclasses can easily inject alert rules. * EcControl.m: Allow dynamically loading the alerter class based on the AlerterBundle key in AlertConfig.plist 2013-03-18 Richard Frith-Macdonald * EcProcess.h: * EcProcess.m: Add test logging methods ([-ecTestLog:...]) 2013-03-15 Richard Frith-Macdonald * EcProcess.h: Document EcCoreSize * EcProcess.m: Change so that if no value is set, we don't use any limit, and so that if a negative value is set we use 1GB 2013-03-13 Richard Frith-Macdonald * GNUmakefile: 1.0.2 release 2013-03-13 Richard Frith-Macdonald * EcProcess.h: * EcProcess.m: Improve documentation of sequence of calls of configuration update methods and add convenience functionality to support alarming for fatal configuration errors. Add EcMemoryIncrement config to adjust alerting about potential leaks. 2013-01-26 Richard Frith-Macdonald * EcAlarmDestination.m: * EcAlarmSinkSNMP.m: Fix problem flushing alarms on process shutdown. 2012-12-17 Niels Grewe * EcAlarmDestination.m: Fix designated initializer behaviour. * EcControl.m: Make SNMP master agent port and host configurable. 2012-12-07 Richard Frith-Macdonald * EcAlarmSinkSNMP.m: * GNUSTEP-MIB.txt: Fix minor naming consistency errors. 2012-12-06 Richard Frith-Macdonald * EcProcess.m: Improve handling of signals ... quit process after the next event when an unexpected signal is caught. 2012-10-28 Richard Frith-Macdonald * EcCommand.m: 2012-11-26 Wolfgang Lux * EcLogger.m (+loggerForType): Fix wrong receiver when registering for notifications. 2012-11-16 Richard Frith-Macdonald * EcControl.m: Record a change in the alerter configuration as an update of the overall configuration. * EcProcess.m: Implement 'alarms' and 'clear' commands for local process alarm state. 2012-10-28 Richard Frith-Macdonald * EcCommand.m: * EcConsole.m: * EcControl.m: * EcLogger.m: * EcProcess.h: * EcProcess.m: Use NSInteger argument for -cmdQuit: 2012-10-18 Richard Frith-Macdonald * EcProcess.m: Remove unused variable. * EcControl.m: Yse -hostWithWellKnownName: in preference to -hostWithName: when trying to find/match hosts. 2012-10-05 Richard Frith-Macdonald Initial (1.0) release.