From: Stephen L Johnson Date: Thu, 25 Nov 1999 03:59:59 +0000 (+0000) Subject: Initial revision X-Git-Tag: spong-2_6-beta7~8 X-Git-Url: http://git.etc.gen.nz/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=17d96c962da6856f0c77aeebfee38aaf3a61f7c1;p=spong.git Initial revision --- diff --git a/CHANGES b/CHANGES new file mode 100755 index 0000000..2ced865 --- /dev/null +++ b/CHANGES @@ -0,0 +1,210 @@ +This is the changes for the the enhacements that I have been adding into +Spong. You can pick up this file at http://monsters.org/pub/spong/CHANGES. +You can pick up the latest spong version from: + http://monsters.org/pub/spong/spong.tar.gz + +Stephen L Johnson + + + +Version 2.6 Changes + +11/24/99 +FIXED - spong-network and spong-client had a wrong variable name in the +&status() function if the inet_aton() function failed. (Thanks to Tom Brown) + files - spong-client + spong-network + +FIXED - Changed file permissions setting of CGI programs installation in the +'build' program. The CGI programs were installed with write permission for the +$WEB users in the build program. (Thanks to Tom Brown) + +CHANGE - The uiowa.edu "Machine Info" link on the Web Displays has been +replaced with a $WWW_ACTIONBAR_CUSTOM variable in the spong.conf configuration +file. If the $WWW_ACTIONBAR_CUSTOM variable is defined, the contents of +the variable will be included in the Display frame's Action Bar. Only +HTML code should be used in this variable. + +11/22/99 +FIXED - Some machines were core dumping in the spong-message program in the +&load_msg_funcs() procedure on a glob() function. This function loads the +messaging plugins from the library. The &load_msg_funcs was rewritten to +use opendir() and readdir() instead of glob(). + +FIXED - spong-server had a bug in the --restart logic. It was not handling +the terminated of it's child processes correctly. The HUP handler function +(hup_handler) was rewritten to waitpid() explicit on the child process pids, +instead of using the standard &chld_handler() function. + +FIXED - spong-server had another latent bug in the &chld_handler function. +It was not reinitializing the $SIG{CHLD} signal handler. This has to be done +on systems using System V based libraries. + +FIXED - spong.conf.solaris had a bug if spong-client was not run as root. +The &gets_swap() function called "swap -s" without an explicit path. The +fix was to call "swap -s" with the full path name to the swap command. + +CHANGED - Changed the check_ntp network check to be a bit less draconian +with a critical error. It will not only be a critical is the service is +not running. A yellow conditions will be reported if the time is more then +one second off or it the ntp server is not synchonized yet. + files - lib/Spong/Network/plugins/check_ntp + +11/15/99 +ADDED - Added code to spong-server to have it automatically daemonize itself +and disconnect from the foreground. It is using a new Daemon.pm library +module. + files - spong-server + lib/Spong/Daemon.pm + +CHANGED - The child process handle logic has been changed to better handle +termination signals. The child processes now exit gracefull. + files - spong-server + +CHANGED - spong-client and spong-network daemonize code has been replace with +the Daemon.pm module. + +11/02/99 +CHANGED - Changed daemonize code to use the POSIX setsid() function to become +session leader. Programs where not disconnecting from tty in FreeBSD. + files - spong-network + spong-client + +ADDED - Added new OS configure. FreeBSD. The uptime program has weird +behaviour when called with full path name. + +ADDED - Added new client check 'check_mailq'. It checks sendmail mail queue +levels against $MAILQWARN and $MAILQCRIT. It uses $MAILQ as the command to +execute to display the mailq. Added $MAILQ to all spong.conf files. + +FIXED - spong-client program has a bug in the load_plugins subroutine. It was +trying to use $HOSTS from spong.hosts, but the program doesn't use spong.hosts. +Change the logic to look for $CHECKS in the spong.conf file instead. + +11/01/99 +FIXED - Fixed missing @@PERL@@ substitution variable for #! line of spong-clientand spong-network. + +10/30/99 +CHANGED - Added new client check plugin mechanism similar to spong-network. Client checks are now plugs that can be configured at runtime. Client plugs +resident in the lib/Spong/Client/plugins directory. The current plugsin are +the 'disk','cpu','processes','logs'. + +Spong-client now looks for a 'checks' field in the $HOSTS hash to see what +plugins to run. The syntax the the same as the 'services' field. If no +'checks' field is present, spong-client defaults to 'disk_space cpu_load +processes log_files' and &check_local if present. + + 10/29/99 +FIX - Fixed forking and signal login of spong-server to fork off properly +and terminate properly when signalled. + +10/28/99 +CHANGED - spong-network now, by default, forks, disconnects from the console +and runs in the background. spong-network will run in the foreground if the +--debug parameter is used. + +CHANGED - spong-message has been enchanced with a new messaging function +plugin mechanism (like spong-network's). New messaging functions can be +added by adding the msg_* file into the lib/Spong/Message/plugins directory. +The old messaging functions converted use the new plugin mechanism, and a +couple of others have been added to show the full functionality of the +new code. + +CHANGED - spong-message contact syntax has been enhanced to allow finer +control over the to whom messages are sent. Your can specify which message +function/carrier to notify rather than all of a $HUMANS defined notifications. +I.E.: 'sjohnson:email' or 'unix-oncall:teletouch' or 'thebosses:sprintphone'. + Files - bin/spong-message + etc/spong.message + +ADDED - You now specify an initial delay before notifications are send out +(e.g. Don't page until a service has RED for at least 15 minutes). And you may +also specify a repeat interval for notifications after the initial notification +(e.g. Keep paging every 10 minutes until problem is acknowledged). The new +synatx is detailed in the comments of spong.message configuration file. + Files - bin/spong-server + bin/spong-message + etc/spong.message + +10/12/99 +ADDED - NTP (Network Time Protocol) spong-network plugin. This plugin checks +the NTP offset of the server using the "ntpdate -q" command. If the ntpdate +checks returns "Server not suitable for sync...", the status is red. Otherwise +if the offset is not than one second the status is yellow. A $NTPDATE variable +with the path to the ntpdate command must be added to the spong.conf +configuration file. + +10/11/99 +ADDED - Secure Shell (ssh) spong-network plugin. It checks whether the Secure +Shell service is running or not. + +10/07/99 +ADDED - A timestamp has been added to the services status file to track +event duration. The start time of an event is defined as a when a change of +status for a service. A new field 'stime' (Start Time) has been added to +the Service.pm object. The display of the event duration has been added to +the Service::display_* routines for a full format displays. + Files - bin/spong-server + lib/Spong/Service.pm + +10/06/99 +ADDED - Added code to spong-client to allow it to fork and daemionize. +spong-client will not daemonize is run with --debug. + + +version 2.5 Changes + +CHANGED - Updated basic help html files. + +spong-server + +ADDED - Code to handle purple colored service status files in the database. +The start of code to allow spong-server to handle old status as a real +status state.ADDED - Big Brother server emulation. The server can now +handle Big Brother Clients. The emulation is not 100% percent yet. The +client must be configured to use FQDN names. And the server can't handle +PAGE commands. +ADDED - Added new a type of SEND_MESSAGE rule: RED-CHANGE. The spong-server +will attempt to send out messages on any status transition to or from RED. +FIXED - Fixed problem with in save_acks with 2 acks bein created with-in +the same second. The second ack would overlay the first ack with the same +file name. + +spong-client +CHANGED - The old log scanning code is gone. There is a new Object Oriented +log scanning routine logmon. logmon monitors the log file by monitoring +the end of a file like "tail -f". Events are not reported over and over +again until he file is rotated or edited. They will be reported for a +specified period of time and then are discard. This does not work if +spong-client is run with --nosleep from a crontab. +ADDED - Added new OS specified get_swap routines to check swap space levels +in the disk checks. + +spong-network +CHANGED - Change the check routines to a new plug-in mechanism. New checks +can be added by writing a plug-in module and placing it in the plugin +directory. The new service can be used by referencing in the spong.host +file. spong-network will load the routine and it will be registered with +the plugin registry. +ADDED - Added a new escalation mechanism to guard against transiant network +problems. A RED status is not reported until a service for host has failed +a certain number of times. Otherwise it is reported as a YELLOW status. +CHANGED - Added a loop to &check_tcp to check a service 3 time before +reporting that it is down. This is guard against temporary network gliches. + +spong-message +ADDED - Added new rules based messaging. The new code is configured in the +new spong.message configuration file. The rules allow for host and service +based include and/or exclusion, along with version flexible time and day +selection. Multiple contacts can also be specified. + +spong-ack +FIXED - Replace unreliable getlog() call with getuserbyname($<) to get user +login name. +FIXED - Made sure to exit with a non-zero exit code on any errors. This is +to make it more script friendly. +CHANGED - Change options processing to use GetOpts modules for to simplifiy +checks. +ADDED - Added --batch parameter which forces program to print the ack. id +instead of the more verbose output. This is to make it more script friendly. +