Next: spong-network-mod-template | Previous: spong-message-mod-template | [Table of Contents] | [Index] |
spong-network - report network service information to spong server.
spong-network [--debug n] [--kill|--restart|--nosleep|--refresh]
[config_file
]
This checks network connectivity and network service availability to various machines you want to monitor. It reports the status of the network services that it monitors to the spong server. Everything happens again after sleeping for a time period you have defined in your configuration file. This program typically runs on your spong server machine (although it can be run on any host - although I would suggest one with good network connectivity).
The program checks a series of network services that are configured separately for each host. spong-network also can be very aggressive in checking for network service that are down. You can configure multiple rechecks to guard against transitional failures.
You should start this program in your system startup file, and it should be running constantly. If no parameters are specified, spong-network forks and detaches itself to run as a daemon.
If you provide the --debug n flag, then debugging information will be printed to stdout, otherwise output will only be produced if there is a problem. Where n is a number from 1 - 9. A higher number means more verbosity in the debugging output.
If you provide the --restart flag, a signal will be sent to the spong-network process that is currently running that will cause it to reload it's configuration files. If you provide the --kill flag, a signal will be sent to the running spong-client process causing it to exit.
The --nosleep or --refresh flag causes the program to cycle through all of the checks once then exit. These flags can be used to run spong-client as a cron job (depreciated), but it recommended that you run the program continuously.
It sends a message for each check to the spong server and reports the following:
The one line summary provides information that might be useful at a glance when looking at the overall system status (such as a brief report on the load, number of users, and uptime).
The more detailed message contains information such as the output of the ping command from the check ping module or the data read after testing a network service.
The check are actually a setup of modules that are called in series by
spong-network. Upon initialization, spong-network will load the all of
the modules that will be used from the LIBDIR/Spong/Network/plugins
directory. As each module is initialized, it registers itself with the plugins
registry (see the the Developer Guide|developer-guide entry elsewhere in this document).
The list of network checks and the order the are performed that are performed for a host are defined in the services attribute of the host's entry in the %HOST variable. The ping service is appended by default to all of the lists of services to be check for a host. If the meta-service name of noping is defined for a host, the ping check will no be done for the host.
spong.conf.[hostname]
file where [hostname] is the
hostname of the machine that you are running on. Since these configuration
files are just standard perl code that gets imported, the variables that you
define in the host specific config file will take precedence over the standard
configuration settings.
spong.hosts
.
From spong.conf
:
/tmp
for operation and security reasons.
spong-network.log
.
From spong.hosts
:
Another important attribute for a host is the skip_network_checks flag. If this flag is set for a host. The spong-network proram will skip the check for the host.
spong.conf
, spong.conf.hostname
, spong.hosts
Perl v5.005_03 or greater is required.
The check_dns module uses the Net::DNS Perl module. On some systems the Net::DNS module will fail and start reporting false DNS lookup failures. The cause is unknown at present. This will cause dns check for all hosts to fail and be reported as a critical status. The fix is to restart spong-network (i.e. spong-network --restart ),
A work-around is to regularly do restart spong-network, such as from a cron job.
the spong-server entry elsewhere in this document, the spong.conf manpage, the spong.hosts manpage, the developer-guide entry elsewhere in this document
Ed Hill <ed-hill@uiowa.edu
>, Unix System Administrator, The University of
Iowa
Stephen L Johnson <sjohnson@monsters.org
>
Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong). Ed Hill original converted Big Brother (http://www.bb4.com) into Perl which diverged from Big Brother to become Spong. Ed Hill continued Spong development until version 2.1. Stephen L Johnson took over development in October, 1999 with his changes which became Spong 2.5.