mirror of
https://github.com/gnustep/libs-ec.git
synced 2025-02-16 00:21:01 +00:00
1359 lines
46 KiB
Text
1359 lines
46 KiB
Text
2023-10-07 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h: clarify comment a little
|
|
* EcProcess.m: fix typo
|
|
* EcCommand.m: Check that the Home configured in the launch
|
|
information is (if defined) a relative path inside the ECCL
|
|
user directory, that the Home directory exists, and that it
|
|
is writable.
|
|
Create a debug log of any problems.
|
|
Terminate.m: Calrify comment
|
|
|
|
2023-07-25 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
* EcTest.m:
|
|
Add -ecDidAwakenCompletely
|
|
|
|
2023-04-07 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* ECCL.h:
|
|
* EcCommand.m:
|
|
* EcConsole.m:
|
|
* EcControl.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Add display options 'mark' and 'prompt' to control output format to
|
|
make it easier to perform pattern matching when using Console in a
|
|
script.
|
|
|
|
2023-03-10 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcControl.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
* Operators.plist:
|
|
Change Blocked array to Commands array so we list commands that the
|
|
operator is allowed to use and default (where a Commands array is
|
|
defined) to blocking all commands.
|
|
|
|
2023-03-08 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcControl.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
* Operators.plist:
|
|
Implement a Blocked array to list the commands that an operator should
|
|
not be allowed to perform.
|
|
|
|
2023-02-14 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: When using the 'defaults' command from the Console,
|
|
writing or deleting a key without the prefix should implicitly
|
|
alter the default for both the prefixed and unprefixed versions
|
|
of the key. This ensures that any low level code that does not use
|
|
prefixes to access the defaults will still read the updated value.
|
|
|
|
2023-01-21 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Allow SetE and AddE configuration for the Command
|
|
server to set up the default environment variables to be used for
|
|
launched child processes.
|
|
EcProcess.m: If MemoryMaximum is set to a value less than the initial
|
|
memory usage of the process plus 20%, it is ignored but an alarm is
|
|
raised. Once the configuration is fixed the alarm is cleared.
|
|
|
|
2023-01-13 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* GNUmakefile: bump version to 1.2.0 for release
|
|
|
|
2023-01-03 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
EcCommand.m: Fix clearing of alarms about a process when it becomes
|
|
stable. Implement 'alarms' and 'clear' commands like those in client
|
|
processes.
|
|
|
|
2022-11-14 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcCommand.m:
|
|
Add new method of Command server (-restart:reason:) to requst that
|
|
it restart an individual process.
|
|
|
|
2022-11-11 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
Fix a few incorrect checks for TLS certificate presence.
|
|
|
|
2022-11-09 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* Control.plist:
|
|
* EcCommand.m:
|
|
* EcProcess.m:
|
|
More TLS cleanup and support for setting TLS options in the Launch
|
|
configuration in Control.plist
|
|
|
|
2022-11-07 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.m: Make Control specific config clearer and avoid
|
|
polluting server specific config space with it.
|
|
* EcCommand.m: Pass along more TLS control vlaues to clients
|
|
* EcProcess.m: Clean up setting TLS configuration, fix to be present
|
|
in all necessary code paths, add support for GSTLSVerify and
|
|
GSTLSServerName in process config, so we can
|
|
control inter process verification.
|
|
|
|
2022-11-04 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* configure.ac: check for crypt
|
|
* config.h.in: regenerate
|
|
* config.make.in: regenerate
|
|
* configure: regenerate
|
|
* EcProcess.h: remove -cmdOperator: method.
|
|
* EcProcess.m: remove -cmdOperator: method.
|
|
* EcControl.m: Implement hashed passwords but allow
|
|
password=username in plaintext for backward compatibility.
|
|
|
|
2022-11-04 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: When a process shuts down due to a configuration error
|
|
autolaunch is deferred for 5 minutes because human intervention is
|
|
unlikely to be rapid (thereiis no point repeatedly trying to autolaunch
|
|
a misconfigured process).
|
|
|
|
2022-11-01 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmDestination.h:
|
|
* EcAlarmDestination.m:
|
|
Keep track of the alarm thread and signal it to flush alarms on
|
|
shutdown.
|
|
|
|
2022-10-10 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Do not override signals which are intended for
|
|
applications to use (SIGUSR1 and SIGUSR2).
|
|
|
|
2022-10-05 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcConsole.m: Use SUDO_USER preferentially as username of person
|
|
executing command. This is supplied when the command is run via sudo.
|
|
|
|
2022-07-12 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
configure.ac:
|
|
configure:
|
|
config.h.in:
|
|
EcProcess.m:
|
|
Check for valgrind and, if availeable, log when a 'memory' command
|
|
is executed so that valgrind logs can be matched to events between
|
|
successive memory check commands.
|
|
|
|
2022-07-11 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcConsole.m: Exit immediately after registration with Control server
|
|
is rejected (don't re-prompt for password before exit).
|
|
|
|
2022-06-17 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Intercept lock error handling and, in the case of a
|
|
deadlock, raise an alarm before calling the normal handler to log
|
|
and stop the thread.
|
|
|
|
2022-06-07 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* GNUMakefile: Fix to supply local flags to build libraries
|
|
* EcConsole.m: Add EC_LOGIN_NAME define set to 1 to permit the
|
|
entry of a login name with a 'Login' prompt.
|
|
Use the EffectiveUser default or the name of the user running the
|
|
process as the default name to login with.
|
|
If EC_LOGIN_NAME is not set then the name of the user running the
|
|
process is used unconditionally.
|
|
|
|
2022-02-28 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
When building config for a process, only count the part of a process
|
|
name after the last hyphen as an instance ID if it is entirely
|
|
composed of digits.
|
|
|
|
2022-02-08 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcProcess.m:
|
|
Add EncryptedDO boolean user default value to turn on TLS for
|
|
distributed objects (if the gnustep-base library supports it).
|
|
This is used only if TLS_DISTRIBUTED_OBJECTS is NOT defined at
|
|
compile time.
|
|
|
|
2022-02-07 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Use alarms rather than alerts to report lack
|
|
of disk space or inodes.
|
|
|
|
2021-12-22 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.m: Add AlamrFilter as a config option to provide a
|
|
regular expression to filter out alarms to be ignored.
|
|
|
|
2021-12-19 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmDestination.h:
|
|
* EcAlarmDestination.m:
|
|
* EcControl.m:
|
|
Add (-latest:) method to find the most recent match for an alarm
|
|
in the queue/active/cleared data structures.
|
|
Use it to filter out duplicate clears.
|
|
|
|
2021-12-16 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcControl.m:
|
|
Make -alarm: method run in main thread so that bundles loaded and
|
|
running on other threads can raise?clear alarms safely.
|
|
|
|
2021-12-10 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcCommand.m:
|
|
* EcControl.m:
|
|
New -clear: method in Command server to clear an alarm in one of its
|
|
clients. Changed the Control server so that the 'suppress' command
|
|
clears an alarm locally (suppressing its effects by leaving it
|
|
raised in the originating client), while the 'clear' command clears
|
|
the alarm in the originating client.
|
|
|
|
2021-09-13 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcProcess.m:
|
|
* EcTest.m:
|
|
Use TLS for DO only if TLS_DISTRIBUTED_OBJECTS is defined.
|
|
|
|
2021-09-03 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: When deleting old logs, consider directories from all
|
|
time rather than just those for the last year. This prevents logs
|
|
from being left undeleted when the DeleteLogsAfter config is changed
|
|
from a value longer than a year to a shorter value.
|
|
|
|
2021-06-30 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* Command.m:
|
|
* Console.m:
|
|
* ECCL.h:
|
|
* EcConsole.m:
|
|
* EcProcess.m:
|
|
Fixups for Console to return error status if it can't connect to the
|
|
Control server or if the Control server rejects its login attempt.
|
|
|
|
2021-06-24 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m:
|
|
* EcTest.h:
|
|
* EcTest.m:
|
|
Update for Distributed Objects over TLS API changes and to add
|
|
EcTestShutdownByName() function to shut down a client process.
|
|
|
|
2021-06-23 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcProcess.m:
|
|
* EcProcess.h:
|
|
When we restart because MemoryMaximum is reached/near, use termination
|
|
status -5. Raise an alarm to log this in the Command server.
|
|
Change unregistering so that it reports the status the process intends
|
|
to exit with. The Command server can then use this information in
|
|
cases where the client process is not one of its children.
|
|
|
|
2021-06-20 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcProcess.m:
|
|
* EcTest.m:
|
|
* Control.plist:
|
|
Improve building when TLS stuff is not available.
|
|
Add code to allow a process launch configuration to contain a
|
|
HungTime setting for automatic restart of apparently hung processes.
|
|
Add HungTool configuration to specify a tool to be executed to
|
|
gather information about a hung process before it is restarted (if
|
|
not defined, the gcore tool is used).
|
|
Add Ping configuration to control how long a process needs to be
|
|
umresponsive to pings before it is considered hung.
|
|
|
|
2021-06-18 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcProcess.m:
|
|
Pass TLS information from Command server to clients via pipe, so the
|
|
clients can use a key/certificate shared with the Command server to
|
|
encrypt communications. This avoids each client process having to
|
|
do expensive generation of a key.
|
|
|
|
2021-06-17 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcProcess.m:
|
|
Change the way the Command server launches subprocesses, so that
|
|
the key/value pairs normally passed as process arguments to populate
|
|
the NSUserDefaults NSArgumentDomain are mostly passed via a pipe to
|
|
STDIN of the subprocess. This keeps the argument list visible to
|
|
commands like 'ps' small and readable, and allows us to pass hidden
|
|
values (eg encryption keys) to the subprocess.
|
|
|
|
2021-01-15 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcProcess.m(cmdMesgmemory:):
|
|
Fix output of 'memory all' command to really report all
|
|
allocations.
|
|
|
|
2020-04-06 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.m:
|
|
Fix bug with AlertConfig.plist; when the file is not provided the
|
|
value of the Alerter key in the Control (keyed on any empty string)
|
|
area in Control.plist should be used, but instead it was failing.
|
|
|
|
2020-04-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcLogger.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Remove obsolete methods for registration/unregistration. Change code
|
|
to refrain from registering with Command server if in the process of
|
|
shutting down, and to refrain from attempting an unregistration if
|
|
not already registered. The hope is that this will prevent a race
|
|
condition where loss of connection to the Command server can cause a
|
|
shutdown and re-register during the shutdown fooling the Command
|
|
server into thinking the process is still running.
|
|
|
|
2020-03-23 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Add protocols to allow one process to register with another as a
|
|
client to whom config should be forwarded. This allows closely
|
|
cooperating processes to be aware of each-other's config changes.
|
|
|
|
2020-01-27 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmSinkSNMP.m:
|
|
* EcCommand.m:
|
|
* EcLogger.h:
|
|
* EcLogger.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Changes to formally deprecate cmdAlert:... and cmdError:...
|
|
|
|
2019-11-01 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Restructure so that all ways we can be informed that
|
|
a task has shut down/ended funnel into the same few methods to avoid
|
|
code duplication and errors where different code paths treat things
|
|
differently. All unregistration into one method (with options for
|
|
a clean unregistration and a simple loss of connection ... dirty).
|
|
Final task cleanup/restart code in one method called on notifiction
|
|
of task termination or (if we don't have an NSTask object because
|
|
the process was not launched by the Command server) simulated when
|
|
the process unregisters or the connection is lost. Add comments.
|
|
|
|
2019-10-29 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcClientI.h:
|
|
* EcClientI.m: Remove a couple of methods only used by EcCommand.
|
|
* EcCommand.m: Add more information to launch info and use it to
|
|
ensure that suspended tasks remain suspended if they crash. Also
|
|
check for task completion in case a task crashes before it can
|
|
establish a DO connection back to the Command server.
|
|
|
|
2019-10-05 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcLogger.m:
|
|
* EcProcess.m:
|
|
The debug command at the Console should report when debug (STDERR)
|
|
is suppressed.
|
|
|
|
2019-10-04 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcClientI.m:
|
|
When we ask a client to terminate, turn off restarting flag.
|
|
When a client has restarted, turn off restarting flag.
|
|
|
|
2019-10-03 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
When processes shut themselves down gracefully, don't relaunch them
|
|
unless they are either configured to autolaunch or are being
|
|
restarted.
|
|
|
|
2019-09-25 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
Rename launch timeout methods to avoid conflict with EcProcess
|
|
timeouts and make code clearer.
|
|
|
|
2019-09-25 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcCommand.m:
|
|
Fix bugs that prevent the status command from working for
|
|
abbreviated process names.
|
|
|
|
2019-08-23 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
When checking to see if a process is alive/responding, set a short
|
|
timeout for the DO request to get a proxy to the process so that
|
|
we don't hang waiting for a response that never comes.
|
|
|
|
2019-08-11 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Add MemoryAlarm config to control at whaich level of 'severity'
|
|
a process actually starts raising alarms about memory usage.
|
|
|
|
2019-08-10 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcMemoryLogger.h: Change protocol to pass more information.
|
|
* EcProcess.h: Update comments/documentation.
|
|
* EcProcess.m: Revise memory usage code to
|
|
Provide resident and data memory stats to the memory logger
|
|
Refrain from generating alerts (remove MemoryIncrement and
|
|
MemoryPercent settings) having a base memory calculated
|
|
simply as the average usage after ten minutes, plus 20 percent.
|
|
Generate alarms for memory usage between the base/allowed value
|
|
and the maximum allowed value.
|
|
Add MemoryIdle setting to specify an 'idle' hour during the day
|
|
in which the process will restart if it's near maximum allowed
|
|
memory (in the critical alarm range).
|
|
Change the status reporting to improve readability.
|
|
|
|
2019-08-06 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Prevent repeated clears of alarms for newly connected
|
|
clients. Use a flag to record that a client is considered 'stable'
|
|
and has already had alarms cleared.
|
|
|
|
2019-07-15 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Change -ecWillQuit: behavior so that repeated calls are ignored rather
|
|
than causing the process to abort; the risk of accidentally aborting
|
|
during a clean shutdown (effectively turning the shutdown into a
|
|
crash) is greater than any utility in having quit force an abort (the
|
|
OS 'kill' command is adequate for that) of any process still capable
|
|
of responding to the request over Distributed Objects.
|
|
Added method to see how long we have been quitting, and method to
|
|
set how long we are allowed to quit.
|
|
|
|
2019-07-12 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Have ecHandleQuit call ecDidQuit in the main thread. That way an
|
|
application can make the handling run in one thread, and still
|
|
have the final shutdown done in the main thread.
|
|
|
|
2019-05-31 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Add EcMemoryTypeto control what type of memory usage we track:
|
|
Total, Resident, or Data (stack and heap).
|
|
|
|
2019-05-31 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.h:
|
|
* EcControl.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Tweaks to allow a new Command process to ask running clients to
|
|
reconnect to it immediately, so that it doesn;t try to launch
|
|
client processes unnecessarily.
|
|
|
|
2019-05-28 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.m: Stream alarm information to Console for Wolfgang.
|
|
|
|
2019-05-27 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcUserDefaults.h:
|
|
* EcUserDefaults.m:
|
|
Extend API to allow temporary defaults overrides to have a specific
|
|
limited life span (an interval after which they can be purged from
|
|
the defaults database).
|
|
* EcProcess.h:
|
|
* EcProcess.m: Change error about long lived defaults to be warning.
|
|
Change 'defaults' command to support specific lifetime settings from
|
|
1 to 168 hours. Add APIs for logging exceptions and other unexpected
|
|
software/data errors using NSLog() and alarms.
|
|
Add convenience macros for logging exeptions or code/data errors.
|
|
|
|
2019-05-23 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlerter.m: Allow dot to match line separators so we can readily
|
|
work with multi-line text.
|
|
|
|
2019-05-22 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlerter.m: Add capture group support for Extra1 and Extra2
|
|
|
|
2019-05-21 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: For 'quit all' fix code to wait 35 seconds before
|
|
sending a second quit to recalcitrant processes.
|
|
For 'restart all', do not send a second restart to processes as
|
|
that would force a quit in the middle of shutting down cleanly,
|
|
instead wait up to 35 seconds for all processes to shut down.
|
|
|
|
2019-05-14 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcCommand.m: Replace -terminate with -terminate: method.
|
|
* Terminate.m: Extend termination to control the time allowed for the
|
|
graceful shutdown (default to 30 seconds).
|
|
|
|
2019-05-14 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcCommand.m: New method to return count of active clients.
|
|
* Terminate.m: New help output and option to wait until Command
|
|
server shuts down (printing out number of active clients).
|
|
|
|
2019-05-09 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Add status command for daiagnostics.
|
|
|
|
2019-05-05 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
Rewrite code for launching/relaunching processes so that a crashing
|
|
process will not get relaunched too frequently (eg filling a disk
|
|
with core dumps). We employ a fibonacci sequence to produce
|
|
increasing delays between successive launch failures (starting with
|
|
a tenth of a second). This sequence is not reset simply because a
|
|
process launches successfully, the process must also stay alive and
|
|
respond to a few 'pings' before it is considered a successful launch
|
|
causing the inter-launch delay to be reset.
|
|
Also, from the second relaunch onwards in any sequence of failures,
|
|
the -CoreSize 0 arguments are passed to the lanched process to tell
|
|
it ti suppress core dumps.
|
|
|
|
2019-03-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Add KillDebugOutput option to configure a process to avoid logging
|
|
on systems where logged information should not be available for
|
|
security reasons. This option is not overidable from the Console.
|
|
|
|
2019-02-15 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.m: If we get an alarm clear before we have reported the
|
|
original alarm, we should report the alarm before reporting the
|
|
clear.
|
|
* EcCommand.m: Be slower to clear alarms on client startup; in case
|
|
it's just going to crash fairly immediately.
|
|
|
|
2019-02-11 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Relaunch process more rapidly, turn off alarm coalesce.
|
|
* EcControl.m: Turn off alarm coalesce
|
|
* EcProcess.[hm]: Expose the alarm destination object.
|
|
|
|
2019-02-11 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcAlerter.m: Define Regex class as a simple wrapper around
|
|
NSRegularExpression.
|
|
|
|
2019-02-08 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcAlerter.m: Only ignore invalid rules in setRules: and update
|
|
the cached rules with the remaining rules.
|
|
|
|
2019-02-08 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Allow the Command server to launch multiple tasks at
|
|
the same time. Provide LaunchLimit config to specify the maximum
|
|
number of concurrent launches (in case launching a large number of
|
|
processes all at once would overload the hardware). Once the limit
|
|
of launching tasks is reached, new tasks should be launched as and
|
|
when launching tasks complete their startup and register with the
|
|
Command server.
|
|
Add suspend and resume command to control whether the Command server
|
|
will actually launch/relaunch tasks, along with a LaunchStartSuspended
|
|
user default to control whether launching starts as soon as the Command
|
|
server starts up (by default launching is not suspended on startup).
|
|
|
|
2018-12-11 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Improve alarm generation to cover the case of hung
|
|
processes better.
|
|
|
|
2018-11-23 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Remove excess comma which was messing up the printf
|
|
formatting of the output of the --help option.
|
|
|
|
2018-11-22 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Report host name when we report that there are no
|
|
clients.
|
|
* EcControl.m: When a 'tell' command is not sent to a specific host,
|
|
it should go to all the hosts, not to a random one.
|
|
|
|
2018-11-09 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
EcProcess.m: Call ecAwaken only after registration at the name
|
|
server was successful.
|
|
|
|
2018-10-24 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlerter.m: Fix off by one error in getting string after colon.
|
|
* EcProcess.m: Correct the number of hex digits we say we want when
|
|
reading in an encryption key.
|
|
* EcControl.m: Improve logging of Console commands and add casts and
|
|
comments to avoid compiler warnings about using an NSHost as a
|
|
dictionary key.
|
|
* Control.m: Change the name of the encryption key we prompt for,
|
|
from 'EcControlKey' to 'master encryption key'.
|
|
|
|
2018-07-30 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h: Add LT_CONSOLE for messages to be reported in the console
|
|
and also be logged to file as an audit log.
|
|
* EcProcess.m: Add LT_CONSOLE implementation/
|
|
* EcCommand.m: Use LT_CONSOLE for messages about process start/stop.
|
|
* EcControl.m: Add option to turn on/off audit log reporting in Console
|
|
and make it off by default, so we only see audit style logs
|
|
specifically intended for the Console
|
|
|
|
2018-06-26 armando.pesentigritti@theengagehub.com
|
|
|
|
* EcControl.m: Make some events audit logs where they might be security
|
|
or system stability related.
|
|
|
|
2018-06-25 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlerter.h:
|
|
* EcAlerter.m:
|
|
Extend to permit (simple) handling of audit logs as well as
|
|
error/alert/alarm.
|
|
New -handleAudit:withHost:andServer:timestamp: method.
|
|
|
|
2018-06-24 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Change quit API to handle the quit in the main thread consistently and
|
|
also provide a mechanism to ensure that handling a quit does not block
|
|
other methods on which graceful shutdown depends.
|
|
|
|
2018-06-12 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcClientI.h:
|
|
* EcClientI.m:
|
|
* EcCommand.m:
|
|
* EcControl.m:
|
|
* EcProcess.m:
|
|
When we restart clients, store that information so that, when the
|
|
client unregisters, we can immediately add them to the set of
|
|
processes to be launched again (and ensure the next launch attempt
|
|
is in 0.5 of a second or less). Improve audit messages for restart.
|
|
Remove restart command from individual processes so that it is
|
|
reliably done from Command server.
|
|
|
|
2018-05-10 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* Control.m:
|
|
* EcControl.m:
|
|
* Command.m:
|
|
* EcCommand.m:
|
|
On restart of the Command server, lanch the new copy after half a
|
|
second rather than the normal 30 seconds.
|
|
|
|
2018-04-05 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m: Do not try to compress old debug files if there is
|
|
not enough space on the filesystem for both the uncompressed and
|
|
compressed versions to co-exist while compressing. Instead delete
|
|
the file and generate an error message.
|
|
|
|
2018-03-08 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.m: Allow EcControlKeyTest to be defined to supply a key
|
|
without requring it to be entered from the terminal. This is solely
|
|
to enable automated testing of systems.
|
|
|
|
2018-03-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* Control.m:
|
|
* EcControl.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Allow EcControlKey to be an MD5 digest of the expected key, so we can
|
|
easily tell if the expected key was entered correctly.
|
|
Expose method to request entry of a hexadecimal key, with checking
|
|
against an MD5 digest of the expected value.
|
|
|
|
2018-02-23 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* AlarmTool.m: Add default values for arguments, suitable for sending
|
|
a test/dummy alarm as an example.
|
|
* Control.m:
|
|
* EcControl.m:
|
|
* ECCL.h:
|
|
Add support for EcControlKey to force a value to be entered from the
|
|
terminal and have that value made available to all processes in the
|
|
cluster (eg so they can use a common encryption key not from disk).
|
|
|
|
2018-02-20 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
EcAlerter.h:
|
|
EcAlerter.m:
|
|
New type 'Raise' to match only an alarm being raised. Behavior of
|
|
'Alarm' changed to match both 'Raise' and 'Clear' (and reminders as
|
|
long as ReminderInterval matches).
|
|
|
|
2018-01-05 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
EcProcess.h:
|
|
EcProcess.m: New -ecRestart: method called when we pass the maximum
|
|
memory usage limit or when a restart command is issued. The default
|
|
implementation calls the -ecQuitFor:status: method using a status of
|
|
minus one so that the Command server will restart the program after
|
|
it shuts down.
|
|
EcCommand.m: New Launch option 'Time' to specify how long after a
|
|
crash we attempt to re-start an autolaunched program.
|
|
Control.plist: Document launch options better
|
|
|
|
2018-01-04 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
EcProcess.h: Improve comments.
|
|
EcProcess.m: Avoid warning about unknown connection on shutdown.
|
|
Rewrite config update code to catch exceptions, ensure that methods
|
|
are called in the correct order so that -cmdUpdated is always last,
|
|
and ensure that -cmdUpdated is called when a local defaults update
|
|
occurs. Also, ignore config updates while process is quitting.
|
|
|
|
2017-12-04 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
EcCommand.m: Change default period to start compressing logs to 7 days
|
|
and default for starting del;eting logs to 180 days.
|
|
|
|
2017-11-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m: New methods for handling clean quitting with abort
|
|
if it takes too long. Fix the directory in which nightly archived
|
|
logs are placed.
|
|
|
|
2017-09-18 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Fix for repeated log archiving on startup.
|
|
|
|
2017-08-09 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcProcess.m(ecNewDay:):
|
|
Fix bug where archiving was no longer run every day unless some
|
|
defaults had been changed locally.
|
|
|
|
2017-06-23 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcControl.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Replace cmdArchive: with ecArchive: changing the log file archiving
|
|
model to archive files primarily based on their last modification
|
|
date. Fixes the bug where files were archived to a folder with the
|
|
wrong date on startup, and simplifies archiving code generally.
|
|
Move startup of timeouts to -ecRun so that they won't occur until
|
|
after all initialisation. Add -ecAwaken, -ecDidAwaken, and
|
|
-ecConfigurationError: to make it easy to initialise stuff at the
|
|
start of -ecRun and to ignore config updates before that happens.
|
|
Improve diagnostic logging for registration failure.
|
|
|
|
2017-03-06 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmDestination.h:
|
|
* EcAlarmDestination.m:
|
|
Change signature of -setDebug: method to be consistent with other
|
|
classes using a method of the same name.
|
|
|
|
2017-01-30 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcAlarmSinkSNMP.m (pollHeartBeat_handler): Don't use memdup,
|
|
which is replaced by netsnmp_memdup with a different interface in
|
|
net-snmp 5.7.3.
|
|
|
|
2016-07-20 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcConsole.m (-ecRun): Pass distantFuture to -runMode:beforeDate:
|
|
to prevent returning immediately from the run loop after recent
|
|
gnustep-base changes.
|
|
|
|
2016-06-09 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcControl.m: Fix bug where alerter config was not always updated
|
|
when changed, and where Control server defaults were lost during
|
|
alerter updates.
|
|
|
|
2016-05-18 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: When changing log files on a nightly basis, don't
|
|
close descriptor 2 (stderr). Instead open the new log and use
|
|
dup2() to switch the new log to be stderr. Wolfgang spotted that
|
|
the existing code allowed another thread to ned up using the
|
|
descriptor if it opened a device in the gap between the old log
|
|
file being closed and the new one opened.
|
|
|
|
2016-01-21 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarm.h:
|
|
* EcAlarm.m:
|
|
* EcAlarmDestination.m: When coalescing alarms, allow a clear and
|
|
alarm to cancel each other out, but only if the alarm is not yet
|
|
active (only queued). Allow alarms to be set to persist in the queue
|
|
for up to 255 seconds to allow more coalescing.
|
|
This lets us raise an alarm which, if cleared within the delay
|
|
period, will never be forwarded anywhere.
|
|
|
|
2015-11-18 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Improve output when changing/reading defaults, and
|
|
restore tolerant behavior of doing a read by default.
|
|
* ECAlerter.h:
|
|
* ECAlerter.m: Remove obsolete methods, and a 'Quiet' configuration
|
|
option, and log alarms (and their disposition) by default.
|
|
|
|
2015-11-18 Niels Grewe <niels.grewe@halbordnung.de>
|
|
|
|
* EcProcess.m: Fix argument validation when reading/writing defaults.
|
|
|
|
2015-10-28 Niels Grewe <niels.grewe@halbordnung.de>
|
|
|
|
* EcConsole.m: Use readpassphrase() instead of getpass() if available.
|
|
* configure.ac
|
|
* config.make.in:
|
|
Test for readpassphrase in the C library and libbsd, link if needed.
|
|
* configure:
|
|
* config.h.in:
|
|
Regenerate
|
|
|
|
2015-10-15 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcTest.h:
|
|
* EcTest.m:
|
|
Add new function to shut down a process via DO connection.
|
|
|
|
2015-10-14 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcUserDefaults.h:
|
|
* EcUserDefaults.m:
|
|
New -revertSettings method to revert all local config settings.
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Change cmdDefaultDbg to cmdBasicDbg to avoid confusion of the debug
|
|
mode with default settings.
|
|
Add 'defaults revert' command for Console to use.
|
|
|
|
2015-10-09 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h: declare new -launch: method
|
|
* EcCommand.m: implement -launch: method
|
|
* EcTest.m: use -launch: when asked to get a connection to a process.
|
|
|
|
2015-08-25 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* AlarmTool.m:
|
|
* LogTool.m:
|
|
* Terminate.m:
|
|
Set up well known hosts at start.
|
|
|
|
2015-07-21 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Be more rigorous about checking instance id values. Ignore anything
|
|
other than a non-negative integer instance ID.
|
|
|
|
2015-07-15 Niels Grewe <niels.grewe@halbordnung.de>
|
|
|
|
* EcMemoryLogger.h
|
|
* EcProcess.m:
|
|
Add the ability to load a bundle to export memory logs to. Configured
|
|
using the 'MemoryLoggerBundle' default key.
|
|
|
|
2015-07-13 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Restore lost effect of -ecNotLeaked to moderate changes in our idea
|
|
of when we should generate a warening about potential leaks
|
|
|
|
2015-07-08 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Allow 'memory current' to list current object allocation values.
|
|
Report time at which memory stats are generated.
|
|
For allocation changes, also show time of previous report.
|
|
|
|
2015-07-08 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Allow the memory monitoring configuration to be set from the Console
|
|
via the 'memory' command. Improve the help text. Improve the info
|
|
provided in the debug/error reports.
|
|
|
|
2015-07-06 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Various tweaks to leak alert generation. Change default initial
|
|
thresholds and change increments after an alert to be based upon
|
|
the *peak* usage at the point when the alert was generated, rather
|
|
than on the previous threshodld. This reduces the number of alerts
|
|
in a process whose memory usage grows rapidly on startup.
|
|
|
|
2015-07-03 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Revamp memory handling code to work with total process memory rather
|
|
than heap size. Report usage in same units as the 'ps' command.
|
|
|
|
2015-06-17 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmSinkSNMP.m: Fix stupid mistake setting notificationID.
|
|
|
|
2015-06-16 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmSinkSNMP.m: Fix error in alarms table oid length.
|
|
* EcCommand.m: Fix error in compression of debug logs.
|
|
|
|
2015-05-31 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcLogger.m: When logging to stderr, use lock to synchronise with
|
|
logs produced by gnustep-base NSLog().
|
|
|
|
2015-05-29 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmSinkSNMP.m: log SNMP errors via the main logging mechanism
|
|
or NSLog.
|
|
* EcControl.m: fix failure to perform includes in some cases.
|
|
* EcAlerter.m: tidyups
|
|
|
|
2015-03-26 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* Control.plist:
|
|
* EcCommand.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
New options for dealing with I/O. In EcProcess we can set
|
|
EcKeepStandardError to keep the stderr stream separate from the
|
|
debug logging file.
|
|
When a process is launched from the Command server, we can define
|
|
KeepStandardInput, KeepStandardOutput, and KeepStandardError flags
|
|
in the task info to stop the standard streams from being closed.
|
|
|
|
2015-03-19 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m:
|
|
* EcAlerter.m:
|
|
Use milliseconds in logging timestamps.
|
|
|
|
2015-02-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlerter.h: Add options for time-limiting rule activity
|
|
* EcAlerter.m: Implement those options
|
|
* EcProcess.m: Put debug logs in 'DebugLogs' by default.
|
|
* EcCommand.m: Put our logs in 'Logs' by default.
|
|
* EcControl.m: Put our logs in 'Logs' by default.
|
|
Change default logging locations.
|
|
*GNUmakefile: bump version for release
|
|
|
|
2015-02-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmDestination.m: When coalescing alarms, do not coalesce a
|
|
clear with anything other than an earlier clear for the same event.
|
|
We do not want to risk forwarding a clear without a preceding
|
|
event raising the alarm.
|
|
|
|
2015-01-26 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* GNUmakefile.preamble: fixup gcc flag filtering
|
|
* EcClientI.h:
|
|
EcClientI.m:
|
|
* EcCommand.m:
|
|
* EcControl.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Implement forced kill by -terminate method if a client fails to
|
|
close down gracefully within 30 seconds.
|
|
|
|
2015-01-19 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* GNUmakefile.preamble: Fix wrong option letter in sed command.
|
|
|
|
2015-01-15 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* configure.ac:
|
|
* GNUMakefile.preamble:
|
|
Filter out fstack-protect-strong from snmp cflags because clang
|
|
doesn't support it.
|
|
|
|
2014-11-28 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmSinkSNMP.m: Fix incorrect OID setup for alarm table in
|
|
SNMP agent.
|
|
|
|
2014-11-27 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcUserDefaults.m: The -doubleForKey: method was commented out!
|
|
Restore it.
|
|
|
|
2014-11-26 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Make -cmdLastIP, -cmdLastOP (and their setters)
|
|
thread-safe.
|
|
|
|
2014-11-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Fix missing clear after unable to register with name
|
|
server.
|
|
|
|
2014-09-02 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Added +ecSetup method to create/initialise the singleton instance.
|
|
|
|
2014-07-01 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* GNUmakefile: bump subminor version number for release
|
|
Version 1.1.0: scripting and alarm improvements.
|
|
|
|
2014-04-27 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Add +ecInitialDefaults to allow subclasses to easily set and
|
|
modify default configuration values.
|
|
|
|
2014-03-28 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* EcControl.m: Add option to allow any user to log in.
|
|
|
|
2014-03-25 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* ECCL.h:
|
|
* EcCommand.m:
|
|
* EcConsole.m:
|
|
* GNUmakefile:
|
|
Extend Console tool to support non-interactive use for scripting etc.
|
|
|
|
2014-02-28 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* EcControl.m: Fix to get 'control on <host> ...' to work while
|
|
connected to a specific server.
|
|
|
|
2013-03-22: Niels Grewe <niels.grewe@halbordnung.de>
|
|
|
|
* EcControl.m: Fix bug that could remove a alerter when it was still
|
|
needed.
|
|
|
|
2013-03-18: Niels Grewe <niels.grewe@halbordnung.de>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Add test logging methods ([-ecTestLog:...])
|
|
|
|
2013-03-15 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* GNUmakefile: 1.0.2 release
|
|
|
|
2013-03-13 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* EcAlarmDestination.m:
|
|
* EcAlarmSinkSNMP.m: Fix problem flushing alarms on process shutdown.
|
|
|
|
2012-12-17 Niels Grewe <niels.grewe@halbordnung.de>
|
|
|
|
* EcAlarmDestination.m: Fix designated initializer behaviour.
|
|
* EcControl.m: Make SNMP master agent port and host configurable.
|
|
|
|
2012-12-07 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcAlarmSinkSNMP.m:
|
|
* GNUSTEP-MIB.txt:
|
|
Fix minor naming consistency errors.
|
|
|
|
2012-12-06 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcProcess.m: Improve handling of signals ... quit process after the
|
|
next event when an unexpected signal is caught.
|
|
|
|
2012-10-28 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
2012-11-26 Wolfgang Lux <wolfgang.lux@gmail.com>
|
|
|
|
* EcLogger.m (+loggerForType): Fix wrong receiver when registering
|
|
for notifications.
|
|
|
|
2012-11-16 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
* EcCommand.m:
|
|
* EcConsole.m:
|
|
* EcControl.m:
|
|
* EcLogger.m:
|
|
* EcProcess.h:
|
|
* EcProcess.m:
|
|
Use NSInteger argument for -cmdQuit:
|
|
|
|
2012-10-18 Richard Frith-Macdonald <rfm@gnu.org>
|
|
|
|
* 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 <rfm@gnu.org>
|
|
|
|
Initial (1.0) release.
|
|
|