]> git.etc.gen.nz Git - spong.git/commitdiff
removed old html doc files
authorStephen L Johnson <sjohnson@monsters.org>
Wed, 6 Sep 2000 04:22:43 +0000 (04:22 +0000)
committerStephen L Johnson <sjohnson@monsters.org>
Wed, 6 Sep 2000 04:22:43 +0000 (04:22 +0000)
24 files changed:
www/docs/FAQ.html [deleted file]
www/docs/admin-guide.html [deleted file]
www/docs/changes.html [deleted file]
www/docs/check_cpu.html [deleted file]
www/docs/check_disk.html [deleted file]
www/docs/check_logs.html [deleted file]
www/docs/check_processes.html [deleted file]
www/docs/developer-guide.html [deleted file]
www/docs/spong-2_0.html [deleted file]
www/docs/spong-client-mod-template.html [deleted file]
www/docs/spong-client.html [deleted file]
www/docs/spong-message-mod-template.html [deleted file]
www/docs/spong-message.html [deleted file]
www/docs/spong-network-mod-template.html [deleted file]
www/docs/spong-network.html [deleted file]
www/docs/spong-server-mod-template.html [deleted file]
www/docs/spong-server.html [deleted file]
www/docs/spong.html [deleted file]
www/docs/spong_conf.html [deleted file]
www/docs/spong_hosts.html [deleted file]
www/docs/spong_message.html [deleted file]
www/docs/todo.html [deleted file]
www/docs/user-guide.html [deleted file]
www/docs/www-spong.html [deleted file]

diff --git a/www/docs/FAQ.html b/www/docs/FAQ.html
deleted file mode 100755 (executable)
index 8d7438d..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>Spong FAQ</title>
-</head>
-<body>
-
-<h1>
-Spong Frequently Asked Questions</h1>
-
-<hr WIDTH="100%">
-<br><i>This document contains a list of the most Frequenly Asked Questions
-(FAQ) about Spong. It is really not a HOWTO, but is in a classical Question
-/ Answer form.</i>
-<br>
-<hr WIDTH="100%">
-<br><a href="#what-is-spong">1. What is Spong?</a>
-<br><a href="#why-no-updates">2. Why doesn't my spong-client status updates
-show up on the spong-server?</a>
-<br><a href="#how-to-get-notifications-working">3. How do I get e-mail/paging/alpha
-paging/notifications to work?</a>
-<br>&nbsp;
-<br>&nbsp;
-<h2>
-<a NAME="what-is-spong"></a>1. What is Spong?</h2>
-his is a <b>simple</b> system monitoring package called spong. It has the
-following features:
-<ul>
-<li>
-client based monitoring (CPU, disk, processes, logs, etc...)</li>
-
-<li>
-monitoring of network services (smtp, http, ping, pop, dns, etc...)</li>
-
-<li>
-grouping of hosts (routers, servers, workstations, PCs)</li>
-
-<li>
-rules based messaging when problems occur</li>
-
-<li>
-configurable on a host by host basis</li>
-
-<li>
-results displayed via text or web based interface</li>
-
-<li>
-history of problems</li>
-
-<li>
-verbose information to help diagnosis problems</li>
-</ul>
-This is hopefully a *simple* tool. It does not compete with Tivoli, OpenView,
-UniCenter, or any other commercial packages, and I have no intention of
-trying to turn it into one. It is not SNMP based, it communicates via simple
-TCP based messages. It is written in Perl, so hopefully it can be run on
-multiple systems (including NT - although it has not been ported yet -
-but is on the todo list).
-<br>&nbsp;
-<h2>
-<a NAME="why-no-updates"></a>2. Why doesn't my spong-client status update
-show up on the spong-server</h2>
-If your spong-client is setup and runs properly (i.e. spong-client --debug
-shows that the ehcks are being run and the results are being sent to the
-spong-server). Depending on how your server is setu, the full domain name
-of your host may not returned with the code that spong-client uses.
-<p>The spong-server has a bit of security for status update messages. The
-host name in the status message must match a host name defined in the spong.hosts
-files. spong-client uses the gethostbyname() function to try to resolve
-the host's full name. If it just gets the host name without the domain,
-spong-server will quietly reject and drop the message.
-<p>You can run the perl snippet below to determine what host name that
-spong-client is resolving for the machine it is running on.
-<p>perl -MSys::Hostname -e '$h = (gethostbyname(Sys::Hostname::hostname()))[0]; print "$h\n"'
-<p>It should print out you the fully qualified domain name of your system.
-This should match the hostname configured in the song.hosts file on the
-spong-server macine. If they don't match then you can do 1 of 2 things.&nbsp;
-In your hosts file make use that the full domain name is the first name
-of your host's line. i.e.
-<p>192.168.2.34&nbsp; my-host.inkcom.com my-host
-<p>Or put if your system is in your DNS server properly, make sure that
-'dns' is in front of 'file' on the hosts: line of the /etc/nsswitch.conf
-file.
-<p>There a utility <b>gethost-test</b> in the <i>/utils</i> directory of
-the Spong distribution. You can run it on a machine to make sure that it
-is setup correctly to resolve it's full quality domain name. The utility
-is run by enter the following command&nbsp; '<i>perl gethost-test'.</i>
-<h2>
-<a NAME="how-to-get-notifications-working"></a>3. How do I get e-mail/paging/alpha
-paging/notifications to work?</h2>
-The most important thing is to go through the spong.conf, spong.hosts,
-and spong.messge configuration files. And be sure to read the documention
-for <b><a href="spong_conf.html">spong.conf</a></b>, <b><a href="spong_hosts.html">spong.hosts</a></b>,
-<b><a href="spong_message.html">spong.message</a></b>,
-configuration files and the&nbsp; <b><a href="spong-message.html">spong-message</a></b>
-and
-<b><a href="spong-server.html">spong-server</a></b> programs.
-<p>If your are still having problems, follow the check list below to help
-resolve your problem.
-<br>&nbsp;
-<ol>
-<li>
-In spong.conf make sure the $SEND_MESSAGE is set to 'RED', 'CHANGE' or
-'RED-CHANGE'.</li>
-
-<br>&nbsp;
-<li>
-.In spong.mesage make sure that $RULES_MATCH is set to 'ALL' or 'FIRST-MATCH'.</li>
-
-<br>If you set it to 'OLD', spong-message will revert to an old notification
-method.
-<br>&nbsp;
-<li>
-&nbsp;If your are having problems with defining your rules, put in a very
-minimal rules set.</li>
-<pre>
-   $MESSAGING_RULES = [
-                         {
-                            contacts => [ 'sjohnson' ]
-                         },
-                      ];
-</pre>
-<p>This will send everything to the 'sjohnson' contact.
-<br>&nbsp;
-<li>
-In spong.hosts, you must define at least one contact (the %HUMANS in spong.hosts)
-in order to have any notifications sent. for the example rule setup above,
-to get e-mail sent to that user you can have an entry like:</li>
-<br>
-<p><pre>
-   %HUMANS = (
-      'sjohnson' => {
-                      name => 'Stephen Johnson',
-                      email => 'stephen.johnson@mailhost.at.my.com',
-                    },
-   );
-</pre><br>
-<li>
-And you can test your $MESSAGING_RULES defined in spong.message, your can
-run spong-message in debugging mode to see what is happening step by step:</li>
-<p><pre>spong-message --debug red hostname.my.com disk 98765432 'This is a test'</pre><br>
-<p>This will generate a lot of verbose output. you might want to redirect
-it to to a file. spong-message counts rules starting with 0 just to be forewarned.
-
-</ol>
-<br>&nbsp;
-<p>
-<hr WIDTH="100%">
-<h1>
-<a NAME="spong-server_author_0"></a>AUTHOR</h1>
-Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/admin-guide.html b/www/docs/admin-guide.html
deleted file mode 100755 (executable)
index 83ee980..0000000
+++ /dev/null
@@ -1,291 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>admin-guide</title>
-</head>
-<body>
-
-<h1>
-Spong Administrator's Guide</h1>
-
-<hr WIDTH="100%">
-<h1>
-Installation</h1>
-
-<h2>
-Installation - Server</h2>
-To build and install the spong server do the following on the machine running
-your web server.
-<ol>
-<li>
-Edit the "build" script, and set the variables at the top of that script
-according to where you want spong installed, and where certain programs
-that spong relies on are located.</li>
-
-<br>&nbsp;
-<li>
-Check to make sure there is a config/spong.conf.&lt;os> file corresponding
-to your operating system, if not - create one. This file contains paths
-and command line arguments to helper programs that are used to determine
-things like disk usage, etc... If you have to create your own spong.conf.&lt;os>
-file, then please email it to me so that I can add it to the distribution.</li>
-
-<br>&nbsp;
-<li>
-Make sure you are in the directory that you unpacked spong in and type:
-<tt>./build
-&lt;os></tt> where&nbsp; &lt;os> is the name corresponding to your operating
-system. You can type <tt>./build help</tt> to generate a list of valid
-operating system strings.</li>
-
-<p><br>&nbsp;When the build completes, you will be left with some new directories
-in the folder that you unpacked spong in. The build process takes the spong
-source (and documentation), and replaces some "tokens" with values that
-you have supplied at the top of the build script. The build process also
-creates a spong.conf file, and generates various types of documentation
-based on the POD files that come with spong.
-<br>&nbsp;
-<li>
-Now, type <tt>./build install</tt>. Note that the install process makes
-no assumptions about what user you want to run spong as (you <b>don't</b>
-have to run it as root). This means that you have to be a little more careful
-when you install spong (making sure it has the correct permissions, and
-that you have permission to copy the www pages into your web server's document
-tree).</li>
-
-<br>&nbsp;
-<li>
-Now edit the spong.conf, spong.hosts, spong.group and spong.messages files
-that you just installed and season to taste. You should now be able to
-read the manual pages for each.</li>
-</ol>
-
-<p><br>Now you will have the executables and configuration files in place
-on the server. You need to start the spong-server and spong-network programs.
-The spong-server program will listen for reports from various agents, and
-the spong-network program will start testing the hosts you have defined
-for any problems. After starting those programs, you should start seeing
-files show up in the SPONGSTATUS directory that you defined in the spong.conf
-file.
-<p><b>NOTE - HOSTNAMES:</b> Part of spong-server's status message authentification
-has to do with host names. spong-server checks the host name in a status
-message against the hosts defined in the spong.hosts file. The the status
-message host name is not found, spong-server will silently drop the messages.
-<p>So it is important that your serves are able to resolve their fully
-qualified domain name.&nbsp; To add in this check is a little perl test
-program <b>gethost-test</b> from in the "utils" directory of the Spong
-distribution. Just run it from a command line by entering <i>perl gethost-test.</i>
-It tests to see is the host can resolve it's fully qualified domain name.
-If it can't then it will advise you on ways to fix the problem.
-<br>&nbsp;
-<h2>
-Installation - Client</h2>
-For each client machine you will need to install the the package just like a 
-te server installation described above. After the './build install' step
-is done, you can remove a number of directories that are not needed by 
-spong-client. (Assuming a standard installation directory). <br>
-<UL>
-<li> www/
-<li> cgi-bin/
-</ul>
-
-<P>The only configuration file that you have to edit is the spong.conf file.
-<P> If your have a number of like clients with the same OS your can copy
-the entire installation directory tree from an installed client to other
-clients. You can use tar+ftp, rcp, rdist or whatever mechamism your would
-normally use. Just be sure the Spong installation directory into the same
-location as the original client.
-<p>
-<hr WIDTH="100%">
-<h2>
-Debugging Problems</h2>
-The general way to debug Spong programs is to use the --debug parameter.
-This force the program to run in the fore-ground, if it backgrounds itself,
-and the program will print out a lot of debugging statements.
-<br>&nbsp;
-<dt>
-<b>spong-server</b></dt>
-
-<dd>
-When spong-server is run with --debug the primary process will run in the
-fore-ground and all of the child processes with write their debugging statements
-to the screen. The <i>query</i> processing will print out all of the database
-queries with the type of data requested and in what format. The <i>spong
-update</i> and <i>Big Brother update</i> process will print out host/service/color
-of every status message that is received.</dd>
-
-<br>&nbsp;
-<dt>
-<b>spong-client</b></dt>
-
-<dd>
-spong-client will print out the check that is being performed along with
-the status and the summary message.</dd>
-
-<dt>
-</dt>
-
-<dt>
-<b>spong-network</b></dt>
-
-<dd>
-spong-network will print out the current host that is is checking and the
-name of the check as it performs them, along with the status and the summary
-message.</dd>
-
-<dt>
-</dt>
-
-<dt>
-<b>spong-message</b></dt>
-
-<dd>
-spong-message can be tested outside of spong-server to test your notification
-configurations. Your run spong-message with the following parameters:</dd>
-
-<dd>
-</dd>
-
-<dd>
-spong-message --debug color host service time "Summary message" [duration]</dd>
-
-<dd>
-</dd>
-
-<dd>
-where</dd>
-
-<dd>
-&nbsp;&nbsp; time - a number which is the date/time in epoch format (i.e.
-the number of seconds since 00:00 01/01/1970). Just pick a big number.</dd>
-
-<dd>
-&nbsp;&nbsp; duration - This is the current of the current status in seconds.
-It is an optional parameter. It defaults to 0.</dd>
-
-<dd>
-</dd>
-
-<dd>
-spong-mesage will print out the current rule number(starting with 0), and
-then the success or failure of all of the checks of the matching attributes.After
-the rules matching phase, spong-message will then print out all of the
-people being notified and how they are being notified. spong-message can
-potentially print out a large quantity of debugging. You may want to redirect
-the output to a file while you testing it.</dd>
-
-<p><br>
-<hr WIDTH="100%">
-<h2>
-<a NAME="header-footer"></a>Customizing Web Pages</h2>
-Spong have a feature that allows users to customize some aspects of the
-Spong web pages.&nbsp; If a header and/or footer template file exists,
-then the contents of the field will be display as a header or footer of
-every web page generated. The header or footer files should be placed in
-the /html directory where the spong www/ directory was installed (the <b>$IWWW</b>
-variable from the <i>build</i> program) and named header.html or footer.html,
-respectively.
-<p>Place the HTML code that you want display into the template files.&nbsp;
-You can also specifiy other HTML files to be included when the file is
-display.&nbsp; Insert&nbsp; the string "<b>!!WWWSHOW!!</b>/filename" into
-the place that your desire the file named "filename" to be display. The
-file to be include should placed into the same directory are the header.html
-or footer.html file resides.
-<p><b>Note:</b> This customization feature is limited in the current release.&nbsp;
-More subsitiution variables (i.e.&nbsp; hostname, service, status, etc)
-will be added into future. As will the ability to select which type of
-pages the headers or footer will be placed (i.e. service status screen,
-server display screen, history screen, problem screen, etc.)
-<br>&nbsp;
-<h2>
-<a NAME="info-notes"></a>Expanded Host Status Web Pages</h2>
-This feature is one of Spong's best kept secrets. You can create additional
-information files that will be displayed on all host status displays. To
-use this feature ,you first have to create an info directory in a host's
-database directory (i.e. <b><a href="spong_conf.html#spongdb">$SPONGDB</a></b>/hostname/info/
-). Then you place the documentation files that will displayed into that
-directory. <i><a href="spong-server.html">spong-server</a></i> looks for
-the the following files:
-<p><b>$SPONGDB</b>/hostname/info/info.txt
-<br><b>$SPONGDB</b>/hostname/info/info.html
-<p><b>$SPONGDB</b>/hostname/info/info.brief.txt
-<br><b>$SPONGDB</b>/hostname/info/info.standard.txt
-<br><b>$SPONGDB</b>/hostname/info/info.full.txt
-<p><b>$SPONGDB</b>/hostname/info/info.brief.html
-<br><b>$SPONGDB</b>/hostname/info/info.standard.html
-<br><b>$SPONGDB</b>/hostname/info/info.full.html
-<p><i><a href="spong-server.html">spong-server</a></i> first looks for
-a info.brief, info.standard or info.full file depending on the&nbsp; type
-of display (brief, stanard or brief; and html or txt). If the program finds
-one it will display that file.&nbsp; Otherwise, <i><a href="spong-server.html">spong-server
-</a></i>will
-look for a info.txt or info.html file and then display that file as a default.
-<p>The .txt files are used with text mode displays like those generated
-by the <i><a href="spong.html">spong</a></i> command. The .html files are
-used by the html mode displays. The .html files can contain html code,&nbsp;
-URLs, embeded graphics, Javascript, or anything that you display on a web
-page.
-<br>&nbsp;
-<h2>
-<a NAME="custom-contacts"></a>Smart "Contact Staff" Links</h2>
-The web pages generated by Spong have "smart" "Contact Staff" links. That
-is, the web page knows which host your are looking at when on your are
-looking at a detailed status page. The spong-server generated a customize
-"Contact Staff" link on a page's action bar that has the hosts and a message
-which contains all of the current problems that system currently has.
-<p>The "Contact Staff" link's URL consists of two parts. The first part
-is the $<b><a href="spong_conf.html#wwwcontact">WWWCONTACT</a></b> from
-the <a href="spong_conf.html">spong.conf</a> configuration file. It contains
-the URL to your contact staff CGI program that your must supply (see below).
-The second part of the are the host name and the problem message passed
-as two form variables: <b>host</b> and <b>message</b> respectively.
-<p>The <b><a href="spong_conf.html#wwwcontact">$WWWCONTACT</a></b> CGI
-program needs to handle two form variables (<b>host</b> and <b>message</b>)
-and place them into a form for the user to fill out. A TEXT field should
-be used to the <b>host</b> variable with a size of 50 characters of so
-to handle big host names. The message field should be placed in a TEXT
-AREA field. The size of the TEXT AREA field should be limited if the destinations
-are pager. Most alpha-pages have a message limit of 150-250 characters.&nbsp;
-The rest of the form should be populated with whatever field that you need
-into order to send your messages.
-<br>&nbsp;
-
-<h2><a NAME="custom-actionbar"></a>Customized Action Bar</h2>
-The Action Bar of the Host and Service Status Displays (see the
-<a href="user-guide.html">User Guide</a> for more details) can be customized
-with the <a href="spong_conf.html#custom-actionbar"><b>$WWW_ACTIONBAR_CUSTOM
-</b></a> configuration parameter. Any HTML code defined in this parameter
-will be included on the end of the Action Bars.
-
-<p>This parameter is preprocessed
-with <i>eval</i> before the contents are printed. This allows you to
-include complex perl variables or perl code. Because of the <i>eval</i> you
-should use single quotes to enclose the contents of this parameter. This 
-will prevent premature evaluation of perl variables before the preprocessing.
-
-<p>If your do not need this customization, just leave
-<b>$WWW_ACTIONBAR_CUSTOM</b> undefined. Nothing will be added to the Action Bars.
-
-
-<h2>
-<a NAME="autorefresh"></a>WWW_REFRESH LOGIC</h2>
-The default of the spong-server is to not allow auto-refreshes if <b><a href="spong_conf.html#www-refresh-allow">@WWW_REFRESH_ALLOW</a></b>
-and <b><a href="spong_conf.html#www-refresh-deny">@WWW_REFRESH_DENY</a></b>
-variables are empty.&nbsp; The spong-server the matched the REMOTE_ADDR,
-REMOTE_HOST, and REMOTE_USER field sagainst the list REFRESH_ALLOW expressions.
-If there is a match the session if ok'ed for auto-refreshes. The server
-then checks the REMOTE_xxx fields against the list of REFRESH_DENY expressions.
-A match here disallows auto-refresh even if there was a previous match
-of a REFRESH_ALLOW expression.
-<p>For example, if REFRESH_ALLOW contains[ 'joe', '.*-support', '^192.168.12.*',
-'noc-display' ] and REFRESH_DENY contains ['bill','mary']. If a web browers
-on a machine at ip address 192.168.12.143 was displaying the spong-server
-web pages, the auto-refresh would be enables because it matches the '^192.168.12.*'
-expression of REFRESH_ALLOW. But if the user was fred at the same machine
-(192.168.12.143), access the web pages auto-refresh would not be enables
-because 'fred' is in the RERESH_DENY list.
-<br>&nbsp;
-</body>
-</html>
diff --git a/www/docs/changes.html b/www/docs/changes.html
deleted file mode 100755 (executable)
index 5cebdc2..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-<html>\r\r
-<head>\r\r
-<title>Spong v1.1 - ChangeLog</title>\r\r
-</head>\r\r
-<body>\r\r
-\r\r
-<h1>Spong v1.1 - ChangeLog</h1>\r\r
-<hr>\r\r
-\r\r
-This file documents the changes that have been made to spong from release to\r\r
-release, currently I have only updated spong once, but I will be adding new\r\r
-features and change things around from time to time, and this document will log\r\r
-those changes.  Here is a quick overview of significant changes, scroll below\r\r
-for a more detailed summary:<p>\r\r
-\r\r
-<ul>\r\r
-<li><a href="#1_1">v1.1</a> - Fixed various bugs, including the problem with defunct processes\r\r
-left behind by spong-server.  Added DNS checks.  Added configuration options\r\r
-(http, and spong-message mostly).\r\r
-<li>v1.0 - Initial release, based on BB 1.04.\r\r
-</ul>\r\r
-\r\r
-Thanks to those (even my co-workers) who have contributed either code or just\r\r
-suggestions.  I have tried to put names next to changes where people\r\r
-contributed patches.  I'm not promising that I used the contributed code as is,\r\r
-but I tried to stay true in most cases to what was asked for.  If I left off\r\r
-someone's name I apologize.<p>\r\r
-<hr>\r\r
-\r\r
-<h2><a name="1_1">Changes between spong 1.0 and spong 1.1</a></h2>\r\r
-\r\r
-Released 04/15/1997<p>\r\r
-\r\r
-This is primarily a bug fix release with a few minor features added.\r\r
-Everything done in this release is based on feedback that I got from my\r\r
-co-workers and people who decided to take a look at spong after my message to\r\r
-the BB list.  The most significant changes are:<p>\r\r
-\r\r
-<ul>\r\r
-<li>BUG: fixed problem with defunct processes under Solaris.\r\r
-<li>FEATURE: Made the http check more configurable.\r\r
-<li>FEATURE: Added a DNS check (if you have the Net::DNS library installed)\r\r
-<li>FEATURE: Added the ability to check multiple interfaces on a host.\r\r
-<li>CHANGE: Got rid of the Makefile, now build/installation is done via a \r\r
-simple perl build script.\r\r
-</ul>\r\r
-\r\r
-Here is a more detailed summary of changes, organized by file(s).<p>\r\r
-\r\r
-<dl>\r\r
-<dt><b>all:</b>\r\r
-<dd><li>changed the way that the hostname was determined so that it got set to\r\r
-the FQDN regardless of how you define the hostname on the host.  (Russell\r\r
-Street)\r\r
-<dd><li>Converted the hostname to lowercase to ward off problems with names not\r\r
-matching up correctly. (Carlos Canau).\r\r
-<p>\r\r
-\r\r
-<dt><b>spong-server:</b>\r\r
-\r\r
-<dd><li>stoped ignoring child processes, this fixes a problem with defunct\r\r
-processes under Solaris\r\r
-\r\r
-<dd><li>changed the accept() loop to make it identical to the one in the latest\r\r
-camel book - was having odd problems with the way that I had it.\r\r
-\r\r
-<dd><li>dumps it's pid to a file in the spong directory, and if you kill -HUP\r\r
-the process it will now re-exec itself, effectively re-reading the\r\r
-spong.conf/spong.hosts files.  Also added two new command line options:\r\r
---restart will cause the running spong-server to reread it's config files (it\r\r
-really just restarts itself), and --kill will kill the current running\r\r
-spong-server program. (Russell Street)\r\r
-\r\r
-<dd><li>added a configuration option ($SEND_MESSAGE) so that you can decided if\r\r
-you want to send a message every time there is a red report, or only if there\r\r
-is a change in state of some service (send a message when it goes red, and send\r\r
-it again when it goes green).\r\r
-\r\r
-<dd><li>stopped filtering out blank lines in messages sent from the clients.\r\r
-<p>\r\r
-\r\r
-<dt><b>spong-network:</b>\r\r
-\r\r
-<dd><li>added a DNS check.  If a system is running a DNS server, the dns server\r\r
-will be asked to resolve it's own name, and if it can then all is assumed to be\r\r
-ok, otherwise an error is generated.  This check will only take place if you\r\r
-have the Net::DNS perl module installed (available from CPAN -\r\r
-http://www.perl.com/CPAN/) (Russell Street - although probably less then he\r\r
-wanted 8-)\r\r
-\r\r
-<dd><li>sleep the standard amount plus some random 10% time period just so\r\r
-things don't get in some goofy pattern...\r\r
-\r\r
-<dd><li>made the http check more configurable, it now allows you to specify what\r\r
-port to check, and what file(s) to check for - you can now use the http check\r\r
-to check on proxy servers.\r\r
-\r\r
-<dd><li>dumps it's pid to a file in the spong directory, and if you kill -HUP\r\r
-the process it will now re-exec itself, effectively re-reading the\r\r
-spong.conf/spong.hosts files.  Also added two new command line options:\r\r
---restart will cause the running spong-network to reread it's config files (it\r\r
-really just restarts itself), and --kill will kill the current running\r\r
-spong-network program. (Russell Street)\r\r
-\r\r
-<dd><li>added a new host attribute (ip_addr) in the spong.hosts file that allow\r\r
-you to specify if a machine has multiple network interfaces (you need to list\r\r
-each interface's IP address) the app, and then spong-network will attempt to\r\r
-ping each interface\r\r
-\r\r
-<dd><li>stopped doing traceroutes to machines that are down.  It took too long,\r\r
-and can overload your network.  I now just show the ping output as the message\r\r
-when the host is down.\r\r
-<p>\r\r
-\r\r
-<dt><b>spong-client:</b>\r\r
-\r\r
-<dd><li>sleep the standard amount plus some random 10% time period just so\r\r
-things don't get in some goofy pattern...\r\r
-\r\r
-<dd><li>spong-client: Added single quotes around process check so that you can\r\r
-check for strings with spaces and other odd characters.\r\r
-\r\r
-<dd><li>adjusted the regular expression so that it doesn't leave off the first\r\r
-part of the mount point (Russell Street)\r\r
-\r\r
-<dd><li>Checked against both the filesystem and mounted on directory for\r\r
-strings to ignore.\r\r
-\r\r
-<dd><li>spong-client: dumps it's pid to a file in the spong directory, and if\r\r
-you kill -HUP the process it will now re-exec itself, effectively re-reading\r\r
-the spong.conf/spong.hosts files.  Also added two new command line options:\r\r
---restart will cause the running spong-client to reread it's config files (it\r\r
-really just restarts itself), and --kill will kill the current running\r\r
-spong-client program. (Russell Street) <p>\r\r
-\r\r
-<dt><b>spong-display: </b>\r\r
-\r\r
-<dd><li>changed the "stale" time to 3 times the sleep time, with the new\r\r
-randomness of the sleep, and given that it can take a while for spong-network\r\r
-to do its thing, a value of 3 seems better then 2 for now.\r\r
-<p>\r\r
-\r\r
-<dt><b>spong-message:</b>\r\r
-\r\r
-<dd><li>added "color" as another argument, this was needed when I added the\r\r
-ability to send a message just based on a change of state.\r\r
-\r\r
-<dd><li>added a couple of configuration variables so that you can alter how\r\r
-often you want messages sent.\r\r
-<p>\r\r
-\r\r
-<dt><b>other files:</b>\r\r
-\r\r
-<dd><li>README: updated to include licensing information, also moved away from\r\r
-the readme.pod file to just creating it based on the readme.html file (since\r\r
-pod2html doesn't make the readme page look good enough in HTML).\r\r
-\r\r
-<dd><li>Got rid of Makefile, decided that since you have to have Perl to use\r\r
-this program, I just wrote a simple build script in Perl - this gets around\r\r
-problems I had with the Makefile, and different versions of make (thanks though\r\r
-to those who gave me patches for the Makefile).  The new "build" script also\r\r
-fixes the following couple of problems:\r\r
-\r\r
-<ul>\r\r
-<li>No chown/chgrp to root - let people install it how they like...\r\r
-<li>if you make more then once, the OS specific stuff gets added each time\r\r
-<li>adds more instructions to the installation process\r\r
-</ul>\r\r
-\r\r
-<dd><li>new spong.conf.linux: from (Baba Z Buehler)\r\r
-<dd><li>added spong.conf.solaris: from (Baba Z Buehler)\r\r
-\r\r
-</dl>\r\r
-<hr>\r\r
-Most recently updated on Apr 3, 1997 by\r\r
-<a href="http://strobe.weeg.uiowa.edu/~edhill/">Ed Hill</a>\r\r
-(<a href="mailto:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>)\r\r
-\r\r
-\r\r
-</BODY>\r\r
-</HTML>\r\r
diff --git a/www/docs/check_cpu.html b/www/docs/check_cpu.html
deleted file mode 100755 (executable)
index a710f91..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
-   <meta name="GENERATOR" content="Mozilla/4.6 [en] (WinNT; I) [Netscape]">\r
-   <title>check_cpu</title>\r
-</head>\r
-<body>\r
-\r
-<hr WIDTH="100%">\r
-<h1>\r
-<a NAME="check_cpu.name"></a>NAME</h1>\r
-check_cpu - check cpu load levels and uptimes\r
-<p>\r
-<hr WIDTH="100%">\r
-<h1>\r
-<a NAME="check_cpu.description"></a>DESCRIPTION</h1>\r
-This is a client check that is run by <i>spong-client</i> that checks the\r
-client host's cpu load levels and uptime. <i>check_cpu </i>used the output\r
-of the <i>uptime</i> command by checking the the second load average number\r
-(a.k.a 5 minute load average). The load average is checked against the\r
-<b>$CPUWARN</b>\r
-and <b>$CPUCRIT</b> levels. If the load level exceeds <b>$CPUWARN</b>,\r
-it triggers a warning - yellow, and if the load level exceeds <b>$CPUCRIT</b>,\r
-it triggers an alert - red.\r
-<p>The uptime is client host is also checked. If the uptime of the system\r
-is less then one hour,&nbsp; a warning is triggered to show that the system\r
-has been restarted recently.\r
-<br>&nbsp;\r
-<h1>\r
-<a NAME="check_cpu.output"></a>OUTPUT RETURNED</h1>\r
-In the status summary field, the system uptime, 5 minute load average,\r
-current number of users logged in and the total number job running on the\r
-system are returned.\r
-<p>If the system ps command is capable of it, the top 10 processes, sorted\r
-by cpu percentage, are returned in the status detailed message field.\r
-<h1>\r
-<a NAME="check_cpu.configuration"></a>CONFIGURATION</h1>\r
-Here is a list of all of the configuration variables used by <i>check_cpu</i>.\r
-<blockquote><b>$CPUWARN</b>, <b>$CPUCRIT</b>\r
-<br>A number inidicating the CPU load that triggers a problem (<b>$CPUWARN</b>\r
-triggers warning - yellow, and <b>$CPUCRIT</b> triffers alerts - red).\r
-<p><b>$UPTIME</b>\r
-<br>An OS specific variable that contains the full path to the <i>uptime</i>\r
-command and any other commands needed to get the uptime output needed for\r
-parsing.\r
-<p><b>$PS</b>\r
-<br>An OS specific variable that contains the full path to the <i>ps</i>\r
-command with the paramters needed to the ps command output to display in\r
-the status detailed messages field.</blockquote>\r
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>FILES</font></font></b>\r
-<dl>\r
-<dt>\r
-<b>/usr/local/etc/spong/spong.conf</b></dt>\r
-\r
-<dd>\r
-Configuration file. This contains variables that detail spong and OS specific\r
-definitions used by spong-client. This file also contain variables describing\r
-threshold levels. See <i>spong.conf</i> for additional documentation.</dd>\r
-</dl>\r
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>AUTHOR</font></font></b>\r
-<p>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)\r
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),\r
-Unix System Administator, DIS - State of Arkansas\r
-<br>&nbsp;\r
-<br>&nbsp;\r
-</body>\r
-</html>\r
diff --git a/www/docs/check_disk.html b/www/docs/check_disk.html
deleted file mode 100755 (executable)
index b34fab4..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r\r
-<html>\r\r
-<head>\r\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r\r
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">\r\r
-</head>\r\r
-<body>\r\r
-\r\r
-<hr WIDTH="100%">\r\r
-<h1>\r\r
-<a NAME="check_disk.name"></a>NAME</h1>\r\r
-<b>check_disk</b> - disk space client check modules\r\r
-<p>\r\r
-<hr WIDTH="100%">\r\r
-<h1>\r\r
-<a NAME="check_disk.description"></a>DESCRIPTION</h1>\r\r
-This is a client check that is run by <i>spong-client </i>that checks disk\r\r
-space and swap space on the client host. <i>check_disk</i>&nbsp; uses the\r\r
-output of the <i>df</i> command by checking the percentage of space used\r\r
-by each mounted file system. The percentage of space used is checked against\r\r
-<b>%DFWARN</b>\r\r
-and <b>%DFCRIT </b>levels to generate an appropirate&nbsp; yellow or red\r\r
-status.\r\r
-<p>Swap space is also checked by using the <i><tt>&amp;get_swap() </tt></i>function\r\r
-which returns a message and a percentage of total space space used. This\r\r
-percentage is checked against the <b>$DFWARN{'page'}</b> and <b>$DFCRIT{'page'}</b>\r\r
-entry levels to generate an appropriate yellow or red status.\r\r
-<br>&nbsp;\r\r
-<h1>\r\r
-OUTPUT RETURNED</h1>\r\r
-<b>SUMMARY MESSAGE FIELD</b>\r\r
-<br>If all statuses are green, check_disk returns the largest file system\r\r
-in use. Otherwise If any file systems are in red status, a list all of\r\r
-the mount points with the percent of space used is returned.\r\r
-<p><b>DETALED MESSAGE FIELD</b>\r\r
-<br>The output of the <i>df</i> command and the message returned by the\r\r
-<i><tt>&amp;get_swap</tt></i>\r\r
-function are returned.\r\r
-<br>&nbsp;\r\r
-<h1>\r\r
-CONFIGURATION</h1>\r\r
-Here is a list of all of the configuration variables used by <i>check_disk.</i>\r\r
-<blockquote><b>@DFIGNORE</b>\r\r
-<br>A list of regular expression strings that are matched against the raw\r\r
-file system names. If matched, then that file system is ignored. For example,\r\r
-having ``:'' in this list will cause NFS file system mounts to be ignored.\r\r
-<p><b>%DFWARN</b>, <b>%DFCRIT</b>\r\r
-<br>A hash of file systems (or the word ``ALL''), and the percentage that\r\r
-should trigger a problem (<b>%DFWARN</b> triggers warnings - yellow, and\r\r
-<b>%DFCRIT</b>\r\r
-triggers alerts - red). If a file system is not explicitly listed in this\r\r
-hash then it will fall back to the value of the ``ALL'' entry.\r\r
-<p><b>$DF</b>\r\r
-<br>An OS specific variable that contains the path to the df command&nbsp;\r\r
-and paramters to be run to get file systems used information.\r\r
-<p><b><i><tt>&amp;get_swap()</tt></i></b>\r\r
-<br>An OS&nbsp;specific function that get the total space space usage information.\r\r
-It returns two paramaters: <b>message -</b> a strings containing the swap\r\r
-usage information to be returned in the detail message field of the status\r\r
-message, and <b>total_swap</b> - a percentage of the total amount of space\r\r
-space in use.\r\r
-<br>&nbsp;</blockquote>\r\r
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>FILES</font></font></b>\r\r
-<dl>\r\r
-<dt>\r\r
-<b>/usr/local/etc/spong/spong.conf</b></dt>\r\r
-\r\r
-<dd>\r\r
-Configuration file. This contains variables that detail spong and OS specific\r\r
-definitions used by spong-client. This file also contain variables describing\r\r
-threshold levels. See <i>spong.conf</i> for additional documentation.</dd>\r\r
-</dl>\r\r
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>AUTHOR</font></font></b>\r\r
-<p>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)\r\r
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),\r\r
-Unix System Administator, DIS - State of Arkansas\r\r
-<br>&nbsp;\r\r
-</body>\r\r
-</html>\r\r
diff --git a/www/docs/check_logs.html b/www/docs/check_logs.html
deleted file mode 100755 (executable)
index ee7d20a..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="Author" content="noman">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>check_logs</title>
-</head>
-<body>
-
-<hr WIDTH="100%">
-<h1>
-<a NAME="check_logs.name"></a>NAME</h1>
-check_logs - system log files client checks module
-<h1>
-
-<hr WIDTH="100%"><a NAME="check_logs.description"></a>DESCRIPTION</h1>
-The client check module checks system log files for one or more user specified
-patterns. <i>check_logs</i> continually scans to the end of the log file.
-Log file changes caused by log file rotations or initialization are handled
-automatically.
-<p>For each line in a log file that matches a pattern an event is generated.
-Each event has a duration,a color and a text field describing the match.
-When check_logs finishes checks all of the log files, it then reports all
-of the events that were generated back to the spong-server. The events
-will reported back to the server every cycle until their duration has expired.
-At which point they are removed from the list of event.
-<br>&nbsp;
-<h1>
-<a NAME="check_logs.output"></a>OUTPUT RETURNED</h1>
-<b>SUMMARY MESSAGE FIELD</b>
-<br>If there are no events, it return "All logs ok". Otherwise is will
-return a list of the logs that have generated events.
-<p><b>DETAILED MESSAGE FIELD</b>
-<br>If there are pending event, the text field from of all the events are
-returned.
-<br>&nbsp;
-<h1>
-<a NAME="check_logs.configuration"></a>CONFIGURATION</h1>
-
-<dl><b>$LOGCHECKS</b>
-<br>A list of hashes which defined checks to apply to log files. Each hash
-contains the fields <b>logfile</b> which is the full path to the log file
-to check and <b>checks</b> whch&nbsp; is a list of check to apply to the
-log file. Each check is a hash that contains the fields: <b>pattern</b>
-- a Perl regular expression to be scanned for, <b>status</b> - the status
-color to reported lines matching pattern, duration - the duration that
-each event is to be reported to the server, <b>text </b>- the text to reported
-back in the detailed message field of the status report (which can include
-match position variables from <b>pattern</b>) and <b>id</b> - an optional
-key field to associated with each event generated
-<p><tt>$LOGCHECKS = [ {</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-logfile => 'full/path/to/logfile',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-checks&nbsp; => [ {check-stanza}, {check-stanza} ],</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-},</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-{</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-logfile => 'full/path/to/logfile2',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-checks&nbsp; => [ {check-stanza}, {check-stanza} ],</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-},</tt>
-<br><tt>];</tt>
-<p>a check-stanza is:
-<p><tt>{</tt>
-<br><tt>&nbsp;&nbsp; pattern&nbsp; => 'perl reg exp',</tt>
-<br><tt>&nbsp;&nbsp; status&nbsp;&nbsp; => 'status-color',</tt>
-<br><tt>&nbsp;&nbsp; duration => xx,</tt>
-<br><tt>&nbsp;&nbsp; text&nbsp;&nbsp;&nbsp;&nbsp; => 'Error desc',</tt>
-<br><tt>&nbsp;&nbsp; id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; => 'optional-event-key',</tt>
-<br><tt>}</tt>
-<p>where:</dl>
-<i>pattern </i>- A perl regular expression top be scanned for. You can
-include '( )' enclosed sections in your expression that will can access
-by $1, $2, etc variables in the <i>text</i> field.
-<br><i>status</i> - A status color 'green', 'yellow', or 'red'.
-<br><i>duration</i> - The duration of a generated event in minutes.
-<br><i>text</i> - the text that will appear in the status message. Perl
-positional variables (i.e. $1, $2, etc.) can be used in the text field
-which will be the matched text of the sections from the regular expression
-defined in <i>pattern</i>.
-<br><i>id</i> - An option event key that will be assigned to an event rather
-than the default, the <i>text</i> field. you can use this field to collapse
-multiple events into one event.
-<br>&nbsp;
-<h1>
-Example</h1>
-
-<dl><tt>$LOGCHECKS = [ { 'logfile' => '/var/log/messages',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-'checks'&nbsp; => [ { pattern=>'(.*WARNING:.*)',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-status=> 'yellow',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-duration=>10,</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-text=>'$1',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-},</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-{ pattern=>'(.*NOTICE:.*)',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-status=> 'red',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-duration=>'10',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-text=>'$1',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-},</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-{ pattern=>'(SCSI)|(scsi)',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-status =>'red',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-duration=>30,</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-text&nbsp;&nbsp;&nbsp; => 'scsi error',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-},</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-{ pattern=>'su: FAILED SU .to ([^\s]+). ([^\s]+)',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-status =>'yellow',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-duration=>30,</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-text => 'su $ failed for $2',</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-},</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-],</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-}</tt>
-<br><tt>];</tt>
-<br>&nbsp;
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>FILES</font></font></b>
-<dl>
-<dt>
-<b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<br>Configuration file. This contains variables that detail spong and OS
-specific definitions used by spong-client. This file also contain variables
-describing threshold levels. See <i>spong.conf</i> for additional documentation.</dl>
-</dl>
-
-<dl><b><font face="Arial, Helvetica, sans-serif"><font size=+2>AUTHOR</font></font></b>
-<p>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<br>&nbsp;
-<br>&nbsp;</dl>
-
-</body>
-</html>
diff --git a/www/docs/check_processes.html b/www/docs/check_processes.html
deleted file mode 100755 (executable)
index 3d62007..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
-   <meta name="Author" content="noman">\r
-   <meta name="GENERATOR" content="Mozilla/4.6 [en] (WinNT; I) [Netscape]">\r
-   <title>check_processes</title>\r
-</head>\r
-<body>\r
-\r
-<hr WIDTH="100%">\r
-<h1>\r
-<a NAME="check_processes.name"></a>NAME</h1>\r
-<b>check_processes</b> - running processes client check module\r
-<br>\r
-<hr WIDTH="100%">\r
-<h1>\r
-<a NAME="check_processes.description"></a>DESCRIPTION</h1>\r
-This is a client check that is run from the spong-client that checks to\r
-ensure that critical processes are running on the client host system. check_processes\r
-uses the output of the <b>$PS</b> command to check against <b>@PROCSWARN</b>\r
-and <b>@PROCSCRIT</b>.&nbsp; Any jobs not found in the <b>@PROCSWARN</b>\r
-list of processes generates a warning - yellow. Any jobs not found in the\r
-<b>@PROCSCRIT</b>\r
-list of processes generates an alert - red.\r
-<br>&nbsp;\r
-<h1>\r
-<a NAME="check_processes.output"></a>OUTPUT RETURNED</h1>\r
-<b>SUMMARY MESSAGE FIELD</b>\r
-<br>If no warning or alerts, check_processes returns "processes OK". Otherwise,\r
-if are any warning or alerts, a list of the processes that are not running\r
-is returned.\r
-<p><b>DETAILED MESSAGE FIELD</b>\r
-<br>A <b>$PS </b>output line of every instance is returned for every running\r
-process.\r
-<h1>\r
-<a NAME="check_processes.configuration"></a>CONFIGURATION</h1>\r
-This is a list of configuration variable that are used by <i>check_processes</i>.\r
-<blockquote><b>@PROCSWARN</b>, <b>@PROCSCRIT</b>\r
-<br>A list of processes that should be running, if they are not running,\r
-then trigger a problem (processes in <b>@PROCSWARN</b> trigger a warning\r
-- yellow, and processes in <b>@PROCSCRIT</b> trigger an alert - red).\r
-<p><b>$PS</b>\r
-<br>An OS specific contains the full path to the ps along with any parameters\r
-need to get the desired formated output.</blockquote>\r
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>FILES</font></font></b>\r
-<dl>\r
-<dt>\r
-<b>/usr/local/etc/spong/spong.conf</b></dt>\r
-\r
-<dd>\r
-Configuration file. This contains variables that detail spong and OS specific\r
-definitions used by spong-client. This file also contain variables describing\r
-threshold levels. See <i>spong.conf</i> for additional documentation.</dd>\r
-</dl>\r
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>AUTHOR</font></font></b>\r
-<p>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)\r
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),\r
-Unix System Administator, DIS - State of Arkansas\r
-<br>&nbsp;\r
-<br>&nbsp;\r
-</body>\r
-</html>\r
diff --git a/www/docs/developer-guide.html b/www/docs/developer-guide.html
deleted file mode 100755 (executable)
index 49bf754..0000000
+++ /dev/null
@@ -1,308 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
-   <meta name="Author" content="noman">\r
-   <meta name="GENERATOR" content="Mozilla/4.6 [en] (WinNT; I) [Netscape]">\r
-   <title>developer-guide</title>\r
-</head>\r
-<body>\r
-\r
-<h1>\r
-<a NAME="name"></a>NAME</h1>\r
-<b>developer-guide</b> - developer's guild to Spong\r
-<br>\r
-<hr WIDTH="100%">\r
-<h1>\r
-<a NAME="description"></a>DESCRIPTION</h1>\r
-This is the developer guild to Spong. The man page documents the inner\r
-works of the client and server programs. It also describes the plugins\r
-mechanism of the <i><a href="spong-client.html">spong-client</a></i> and\r
-<i><a href="spong-network.html">spong-network</a>, </i>so that new check\r
-modules can be developed for this programs.\r
-<br>&nbsp;\r
-<h1>\r
-<a NAME="protocols"></a>PROTOCOLS</h1>\r
-This section deals with the low level communucation protocols that the\r
-clients use to talk with the <i><a href="spong-server.html">spong-server</a></i>.\r
-The spong and Big Brothers protocols almost identical. they vary only in\r
-the data format.\r
-<p><a NAME="spong-protocol"></a><b>SPONG PROTOCOL</b>\r
-<br>The <i>spong-server</i> listens in on port 1998 for status updates\r
-from clients. After a socket has been opens the client sends a message\r
-with the following format:\r
-<blockquote><tt>command&nbsp; host&nbsp; service&nbsp; color&nbsp; time&nbsp;\r
-summary (\n)</tt>\r
-<br><tt>detailed status message line 1 (\n)</tt>\r
-<br><tt>detailed status message line 2 (\n)</tt>\r
-<br><tt>&nbsp;&nbsp; ...</tt>\r
-<br><tt>detailed status message line n (\n)</tt></blockquote>\r
-Where:\r
-<br><i>command</i> - The command being sent to the spong server indicating\r
-a type of update message or a change in operating status of the client.\r
-At present the only command defined is <i>status</i> which inidicates a\r
-service status update message.\r
-<br><i>host</i> - The fully qualified domain name of the host the message\r
-is for.\r
-<br><i>service</i> - The name of the service that the update message is\r
-for.\r
-<br><i>color</i> - The status color of the service (green - ok, yellow\r
-- warning, red - alert).\r
-<br><i>time</i> - The date/time of the update message in epoch time format\r
-(i.e. the number of seconds since 01/01/70, 00:00 AM)\r
-<br><i>summary</i> - The status summary message field.\r
-<br><i>detailed status message</i> - The remained lines of the message\r
-which will be the detailed information of the status. Typically it can\r
-be the output of the df command or the top processes by CPU utilization\r
-or the detailed reponses of network checks.\r
-<br>&nbsp;\r
-<p><a NAME="bb-protocol"></a><b>BIG BROTHER PROTOCOL</b>\r
-<br>The <i>spong-server</i> listens in on port 1984 for status Big Brother\r
-client updates. After a socket has been opens the client sends a message\r
-with the following format:\r
-<blockquote><tt>command&nbsp; host&nbsp; service&nbsp; color&nbsp; time&nbsp;\r
-summary (\n)</tt>\r
-<br><tt>detailed status message line 1 (\n)</tt>\r
-<br><tt>detailed status message line 2 (\n)</tt>\r
-<br><tt>&nbsp;&nbsp; ...</tt>\r
-<br><tt>detailed status message line n (\n)</tt></blockquote>\r
-Where:\r
-<br><i>command</i> - The command being sent to the spong server indicating\r
-a type of update message or a change in operating status of the client.\r
-At present the only command defined is <i>status</i> which inidicates a\r
-service status update message.\r
-<br><i>host</i> - The fully qualified domain name of the host the message\r
-is for.\r
-<br><i>service</i> - The name of the service that the update message is\r
-for.\r
-<br><i>color</i> - The status color of the service (green - ok, yellow\r
-- warning, red - alert).\r
-<br><i>time</i> - The date/time of the update message in standard date\r
-format (i.e. Thu Jan&nbsp; 1 00:00:00 UTC 1970)\r
-<br><i>summary</i> - The status summary message field.\r
-<br><i>detailed status message</i> - The remained lines of the message\r
-which will be the detailed information of the status. Typically it can\r
-be the output of the df command or the top processes by CPU utilization\r
-or the detailed reponses of network checks.\r
-<br>&nbsp;\r
-<h1>\r
-MODULES</h1>\r
-spong-client, spong-network, spong-message and spong-server use routines which are\r
-modules. When the programs are initializating, they determine which modules\r
-are going to be required. The programs then go out and load each of the\r
-modules from the library directory. When the modules are loaded they register\r
-themself with the plugins registery. The plugin registry is the mechanism\r
-that the client programs keep track of the modules into order to run them.\r
-\r
-<p><a NAME="server-modules"></a><b>SERVER MODULES</b<\r
-<p>Spong-server has a hook that allows external programs access to the incoming\r
-status updates coming from Spong client programs. The hook takes the form of\r
-Server Data modules which are called after spong-server stores the status \r
-update in it's database.\r
-\r
-spong-server passes all of the information of the update message in addition\r
-to the current event status duration to the Data Module. The modules should\r
-do any processing that they need to do in as short a time as possible. The \r
-spong-server update process is single threaded. Any excessive delays in\r
-in return can cause pending updates to time out.\r
-\r
-Debugging messages and error messages can be printed by using the \r
-&main::debug() and &main::error() functions respectively. If the module\r
-develops a fatal error, it should terminate using the die() or croak() \r
-functions depending on ones preference. Modules should just return upon a \r
-successful invocation.  \r
-\r
-<p><a NAME="client-modules"></a><b>CLIENT MODULES</b>\r
-<p>Client modules define checks which are to be done on the host that the\r
-spong-client program is running on. The module's check function is called\r
-without any parameters. The client modules is expects to issue any systems\r
-command and parse the output in order to determine the service status.\r
-<p>Any threshold variables needed for warning and alert level trigger need\r
-to be defined and placed into the <a href="spong.conf.html">/usr/local/etc/spong.conf</a>\r
-file. The threshold variable need to be uniquely named and should be named\r
-according to the type of check being done (i.e. $DISKWARN or $DFWARN for\r
-disk checks and $CPUWARN for CPU checks).\r
-<p>Once the service status and messages have been determined the module\r
-can call the <tt>&amp;main::status()</tt> function in order to send the\r
-information back to the spong-server.\r
-<pre><a NAME="status"></a>&amp;status( SERVERADDR, HOST, SERVICE, COLOR, SUMMARY, MESSAGE )</pre>\r
-The arguments to the <tt>&amp;<i>status()</i></tt> function are:\r
-<ul>\r
-<li>\r
-SERVERADDR - Should be $SPONGSERVER</li>\r
-\r
-<li>\r
-HOST&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - The full hostname of the machine\r
-you are on</li>\r
-\r
-<li>\r
-SERVICE&nbsp;&nbsp;&nbsp; - The a short name that describes the service\r
-that you are reporting on.</li>\r
-\r
-<li>\r
-COLOR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Either "red", "yellow", or "green"</li>\r
-\r
-<li>\r
-SUMMARY&nbsp;&nbsp;&nbsp; - A short one line summary of the status</li>\r
-\r
-<li>\r
-MESSAGE&nbsp;&nbsp;&nbsp; - More detailed information (can be multi-line)</li>\r
-</ul>\r
-<a NAME="network-modules"></a><b>NETWORK MODULES</b>\r
-<p>Network modules defined checks that to be done on hosts over the network\r
-to ensure that a network service is running. The modules are called with\r
-the name of the host the check is to be done to. The modules is also expected\r
-to put an alarm wrapper around the code that performs the check. This is\r
-to prevent excessive delays dues to lost communications. It is suggested\r
-that 10 seconds be used for the alarm setting.\r
-<p>If an alert (red) status is generated, the module should retry the check\r
-multiple times (3 is suggested). If the status is a warning (yellow), the\r
-multiple retries of the check is optional. After the status condition has\r
-been determined the check function should return three parameterers:\r
-<ul>\r
-<li>\r
-STATUS - The status color either "red", "yellow", or "green".</li>\r
-\r
-<li>\r
-SUMMARY - A shoit line line summary of the status</li>\r
-\r
-<li>\r
-MESSAGE - more detailed information (can be multi-lined)</li>\r
-</ul>\r
-The network modules have two support functions,<i>&amp;main::check_tcp()</i>\r
-and <i>&amp;main::check_simple(),&nbsp;</i> which can simplify simple TCP\r
-port checks.\r
-<p><a NAME="check_tcp"></a><tt>&amp;main::check_tcp( host, port, data )</tt>\r
-<p>The arguments to <tt>&amp;main::check_tcp()</tt> are:\r
-<ul>\r
-<li>\r
-HOST - The name or ip address of the host to be checked.</li>\r
-\r
-<li>\r
-PORT - The name of service to connect with.</li>\r
-\r
-<li>\r
-DATA - The data to be send to the host after the port is opened.</li>\r
-</ul>\r
-The function <tt>&amp;main::check_tcp()</tt> will make a connection to\r
-the given PORT on the HOST and send a message (DATA). It then returns what\r
-it gets back to the caller.\r
-<p><a NAME="check_simple"></a><tt>&amp;main::check_simple( host, port,\r
-send, check, service)</tt>\r
-<p>The arguments to &amp;main::check_simple() are:\r
-<ul>\r
-<li>\r
-HOST - The name of ip address of the host to be checked.</li>\r
-\r
-<li>\r
-PORT - The name of the port to connect with.</li>\r
-\r
-<li>\r
-SEND - The messge to sent to the host after the port is opened.</li>\r
-\r
-<li>\r
-CHECK - A perl regular express to be used to validate the response return\r
-by the host.</li>\r
-\r
-<li>\r
-SERVICE - The name of the sevive being check. It is used in the summary\r
-and detailed status messages.</li>\r
-</ul>\r
-The function <tt>&amp;main::check_simple()</tt> is a generic TCP port checking\r
-routine. This will go out connect to a given port&nbsp; (using <tt>&amp;main::check_tcp()</tt>)and\r
-check to make sure you get back expected results. The function returned\r
-three parameters:\r
-<ul>\r
-<li>\r
-STATUS - The status color either "red", "yellow", or "green".</li>\r
-\r
-<li>\r
-SUMMARY - A shoit line line summary of the status</li>\r
-\r
-<li>\r
-MESSAGE - more detailed information (can be multi-lined)</li>\r
-</ul>\r
-<a NAME="message-modules"></a><b>MESSAGE MODULES</b>\r
-<p>Message modules are function called to send a notification message to\r
-a contact on a specific service or service. The messaging functions are\r
-called with the contact's identification for the service that the function\r
-sends messages to. The messaging function is expected to take care of all\r
-of the data formatitng and communications logic to send a notification\r
-message to the contact.\r
-<p>The messaging functions has access to the global variable in order format\r
-a notification message:\r
-<ul>\r
-<li>\r
-<b>$color</b> - The status color of the message</li>\r
-\r
-<li>\r
-<b>$host</b> - The fully qualified domain name of the host</li>\r
-\r
-<li>\r
-<b>$time</b> - The date and time of the message being sent. (format is\r
-epoch time or time())</li>\r
-\r
-<li>\r
-<b>$message</b> - A one line summary status line</li>\r
-\r
-<li>\r
-<b>$duration</b> - The current duration of the current status in seconds.\r
-(a zero duration indicates a change in status)</li>\r
-</ul>\r
-There are to support functions that be used to format a message and send\r
-the message via e-mail: <tt>&amp;main::email_status()</tt> and <tt>&amp;main::email_mini_status()</tt>.&nbsp;\r
-Both functions format e-mail message to be send to RECIPIENTS, but <tt>&amp;email_mini_status()</tt>\r
-sends out a shorter mail message which is more suitable for SMS and smaller\r
-alpha pagers.\r
-<p>Both functions are called thusly:\r
-<p><tt>&amp;main::email_status( recipient, flags )</tt>\r
-<br><tt>&amp;main::email_mini_status( recipient, flags )</tt>\r
-<p>Where the arguments to the functions are:\r
-<ul>\r
-<li>\r
-RECIPIENT - one or more e-mail recipients which placed in the to: line\r
-of the mail message.</li>\r
-\r
-<li>\r
-FLAGS - flags to alter the formating of the message.</li>\r
-</ul>\r
-The only flag current defined is 'shortsubject'. This prevents $color,\r
-$hostname, and $summary from being placed on the subject: line.\r
-<br>&nbsp;\r
-<h1>\r
-<a NAME="developer-guide.creating_modules"></a>CREATING MODULES</h1>\r
-Creating the actual modules is very trivia to do. Create your module by\r
-following the appropriate template from below.\r
-<blockquote>\r
-<li>\r
-<a href="spong-client-mod-template.html">spong-client module template</a></li>\r
-\r
-<li>\r
-<a href="spong-network-mod-template.html">spong-network module template</a></li>\r
-\r
-<li>\r
-<a href="spong-message-mod-template.html">spong-message module tempage</a></li>\r
-\r
-<li>\r
-<a href="spong-server-mod-template.html">spong-server data module template</a>\r
-</li>\r
-\r
-</blockquote>\r
-Then place your template module file into the appropirate directory below.\r
-<ul>\r
-<li>\r
-spong-client - LIBDIR/Spong/Client/plugins</li>\r
-\r
-<li>\r
-spong-nework - LIBDIR/Spong/Network/plugins</li>\r
-\r
-<li>\r
-spong-message - LIBDIR/Spong/Message/plugins</li>\r
-\r
-<li>\r
-spong-server - LIBDIR/Spong/plugins</li>\r
-</ul>\r
-Then test your modules by running the program with the --debug option to\r
-if it is operating properly.\r
-</body>\r
-</html>\r
diff --git a/www/docs/spong-2_0.html b/www/docs/spong-2_0.html
deleted file mode 100755 (executable)
index 672dd73..0000000
+++ /dev/null
@@ -1,374 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>Simple System/Network Monitoring - spong v2.0</title>
-</head>
-<body>
-
-<h1>
-Simple System/Network Monitoring - spong v2.0</h1>
-
-<hr>
-<h2>
-Description</h2>
-This is a <b>simple</b> system monitoring package called spong. It has
-the following features:
-<ul>
-<li>
-client based monitoring (CPU, disk, processes, logs, etc...)</li>
-
-<li>
-monitoring of network services (smtp, http, ping, pop, dns, etc...)</li>
-
-<li>
-grouping of hosts (routers, servers, workstations, PCs)</li>
-
-<li>
-rules based messaging when problems occur</li>
-
-<li>
-configurable on a host by host basis</li>
-
-<li>
-results displayed via text or web based interface</li>
-
-<li>
-history of problems</li>
-
-<li>
-verbose information to help diagnosis problems</li>
-</ul>
-This is hopefully a *simple* tool. It does not compete with Tivoli, OpenView,
-UniCenter, or any other commercial packages, and I have no intention of
-trying to turn it into one. It is not SNMP based, it communicates via simple
-TCP based messages. It is written in Perl, so hopefully it can be run on
-multiple systems (including NT - although it has not been ported yet -
-but is on the todo list).
-<p>&nbsp;I'm a strong believer in KISS (keep it simple stupid), and hopefully
-this package is as simple as possible (but no simpler). Spong is broken
-up into components that each do a specific thing. Listed are some of the
-(key) components:
-<br>&nbsp;
-<br>&nbsp;
-<ul>&nbsp;
-<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="90%" >
-<tr>
-<td><b>spong</b></td>
-
-<td>Text based query program, reports information about hosts that are
-monitored.</td>
-</tr>
-
-<tr>
-<td><b>spong-client</b></td>
-
-<td>Reports host based information (disk, cpu, logs, etc.)</td>
-</tr>
-
-<tr>
-<td><b>spong-network</b></td>
-
-<td>Reports on network based services (smtp, ping, http, etc.)</td>
-</tr>
-
-<tr>
-<td><b>spong-server</b></td>
-
-<td>Collects information reported and responds to queries about that information.</td>
-</tr>
-</table>
-</ul>
-Spong is currently at version 2.6. If you are using an older version and
-want to see <a href="#whats_new">what's new</a> in version 2.6, please
-look at the bottom on this page.
-<br>&nbsp;
-<br>&nbsp;
-<h2>
-Availability</h2>
-Perl is require to run spong. If you don't have Perl installed you can
-retrieve it from the CPAN (<a href="http://www.perl.com/CPAN/">http://www.perl.com/CPAN/</a>)
-archive, along with other optional modules such at the Net::DNS module.
-I would suggest having at least version 5.004 installed (otherwise you
-will need to download the CGI.pm module as well). You can get the latest
-version of Perl at:
-<br>&nbsp;
-<br>&nbsp;
-<ul><a href="http://www.perl.com/CPAN/src/latest.tar.gz">http://www.perl.com/CPAN/src/latest.tar.gz</a></ul>
-You can retrieve the latest version of spong from my machine at:
-<br>&nbsp;
-<br>&nbsp;
-<ul><a href="http://monsters.org/pub/spong/spong.tar.gz">http://monsters.org/pub/spong/spong.tar.gz</a></ul>
-This distribution contain the spong source, documentation, and gif images.
-<h2>
-Notification</h2>
-I have sent up a mailing list that is for spong discussion, help and annoucements.
-The mailing list open to anyone. I am on the list and I endevour to answer
-all questions submitted to the list.
-<p>&nbsp;To join the spong mailing list, send a message to <a href="mailto:spong-request@monsters.org">spong-request@monsters.org</a>
-with the sentence:
-<br>&nbsp;
-<ul><tt>subscribe</tt></ul>
-in the <i>body</i> of the message. To have yourself removed from the spong-announce
-mailing list, send a message to <a href="mailto:spong-request@monsters.org">spong-request@monsters.org</a>
-with the sentence <tt>unsubscribe i</tt>n the <i>body</i> of the message.
-<p>&nbsp;You can also visit the <a href="http://monsters.org/mailman/listinfo/spong">Spong
-mailing list web page</a> to subscribe or view the mailing list archives.
-<br>&nbsp;
-<h2>
-Dependencies</h2>
-Perl v5.004 or greater is all that is required to set up spong. A web server
-where you can install a CGI program, and a web browser that can display
-tables and frames are required for use of the web interface to spong. If
-you want to monitor DNS servers remotely, then you will need to install
-the Net::DNS Perl module (available at CPAN). Spong will run fine without
-this module, you just will not be able to monitor the DNS service.
-<p>&nbsp;These scripts should run on any Unix system (and to ``some'' degree
-any environment where Perl is available).
-<h2>
-Documentation</h2>
-Don't let the amount of documentation scare you, I still think spong is
-simple to setup and use.
-<p>&nbsp;The documentation is provided in HTML format (the old Perl pod
-format just didn't do all that I wanted). It is located in the docs directory
-and is self contained (the links will still work if you move it), so you
-should be able to copy it to whatever location that you want.
-<p>&nbsp;There are four main documents that describe spong from different
-perspectives.
-<dl>
-<dd>
-<b><a href="FAQ.html">FAQ</a></b></dd>
-
-<dd>
-Frequently Asked Questions by users and their answers.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<dd>
-<b><a href="user-guide.html">User's Guide</a></b></dd>
-
-<dd>
-Geared towards the person who will be using the spong text or web based
-clients. This is the documentation that will be seen when the user clicks
-on the Help button provided in www-spong.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<dd>
-<b><a href="admin-guide.html">Administrator's Guide</a></b></dd>
-
-<dd>
-Written for the person who will be installing spong, and setting up the
-various configuration files. This provides a step by step installation
-process and gives some suggestions on things spong can do that you might
-not have thought of.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<dd>
-<b><a href="developer-guide.html">Developer's Guide</a></b></dd>
-
-<dd>
-Written for the person who wants to have spong look differently, or what
-to add some new feature in their version of spong, or whats to incorporate
-spong output in other programs. This details the spong internals, and describes
-the various protocols that are used.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<br>&nbsp;</dl>
-There are also specific "man" pages for each program and configuration
-file which provide detailed explanations of each option, command line argument,
-etc... Finally, if you are in a pinch, the code is readable enough (and
-well commented) to provide some help as well.
-<p>&nbsp;I hopefully have provided enough documentation that the only email
-I get are suggestions for new features and bug reports - but if you are
-stuck, feel free to send me email and I will respond if I can.
-<br>&nbsp;
-<br>&nbsp;
-<h2>
-Files</h2>
-Here is a description of the directories and files that come in this package
-prior to installation. More specific descriptions of each file are available
-in the various documentation that comes with spong.
-<br>&nbsp;
-<br>&nbsp;
-<pre>&nbsp;&nbsp;&nbsp; config:
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong_conf.html">spong.conf</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; distributed config file
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; spong.conf.&amp;ltos>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; os specific config changes
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong_hosts.html">spong.hosts</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; host/service config file
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong_groups.html">spong.groups</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; group config file
-
-&nbsp;
-
-&nbsp;&nbsp;&nbsp; src:
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong.html">spong.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; text based spong display client
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong-client.html">spong-client.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; collects/reports cpu,disk,etc info
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong-network.html">spong-network.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; collects/reports network service info
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong-server.html">spong-server.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; listens for/saves spong status updates
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong-message.html">spong-message.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alerts humans there's a problem
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="spong-ack.html">spong-ack.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; text based acknowledgement program
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="www-spong.html">www-spong.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; web based spong display client
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="www-spong-ack.html">www-spong-ack.pl</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; web based acknowledgement program</pre>
-
-<pre>
-
-&nbsp;&nbsp;&nbsp; www:</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; docs:
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;*>.html&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; documentation for the above files&nbsp;
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gifs:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; various icons used by spong-display
-
-
-
-</pre>
-
-<h2>
-Licensing</h2>
-Copyright 1999, Stephen Johnson
-<p>&nbsp;Like Perl, spong may be copied only under the terms of either
-the Artistic License or the GNU General Public License, which may be found
-in the Perl 5.0 source kit. If either file is not available to you, send
-email to <a href="mailto:sjohnson@monsters.org">sjohnson@monsters.org</a>,
-and I will mail you a copy.
-<p><a NAME="whats_new"></a>
-<h2>
-Changes</h2>
-The list of changes can be found at:
-<blockquote><a href="http://monsters.org/pub/spong/CHANGES">http://monsters.org/pub/spong/CHANGES</a></blockquote>
-You can see a list of features that I hope to add to spong at:
-<ul><a href="http://monsters.org/pub/spong/TODO.html">http://monsters.org/pub/spong/TODO.html</a></ul>
-
-<h2>
-History</h2>
-
-<table BORDER=0 WIDTH="100%" NOSAVE >
-<tr NOSAVE>
-<td ALIGN=LEFT VALIGN=TOP NOSAVE>Version 2.6</td>
-
-<td>Notification rules enhanced with matching and excluding by host groups.
-Added delayed and repeat notifications. Module Plugin mechanisms added
-to spong-client, spong-network, spong-server, and spong-message programs.
-Programs now automatic background themselves. Event duration added to spong-server
-database. NTP and SSH checks added to spong-network.</td>
-</tr>
-
-<tr NOSAVE>
-<td ALIGN=LEFT VALIGN=TOP NOSAVE>Version 2.5&nbsp;</td>
-
-<td>First releae by Stephen L johnson. Rules based notifications added,
-a limited Big Brother Server emulation was to allow Big Bother Clients
-to be used. A new log monitoring routnie which tracks last position read.
-Enhanced network checks to eliminate momentary network problems.</td>
-</tr>
-
-<tr NOSAVE>
-<td ALIGN=LEFT VALIGN=TOP NOSAVE>Version 2.0&nbsp;</td>
-
-<td>A OO redesign of the spong-server and display programs, added acknowledgments
-and group support, added a text based interface, made www interface more
-extensible.&nbsp;</td>
-</tr>
-
-<tr>
-<td ALIGN=LEFT VALIGN=TOP>Version 1.1&nbsp;</td>
-
-<td ALIGN=LEFT VALIGN=TOP>Primarily a bug fix release with a few minor
-features (dns,http config,multiple interfaces) added.&nbsp;</td>
-</tr>
-
-<tr>
-<td ALIGN=LEFT VALIGN=TOP>Version 1.0&nbsp;</td>
-
-<td ALIGN=LEFT VALIGN=TOP>Initial public release, mostly based on Big Brother
-package from Sean MacGuire.&nbsp;</td>
-</tr>
-</table>
-
-<h2>
-Acknowledgments</h2>
-Many ideas (and some code) came from two similar packages. We have used
-a program call "Pong" here at The University of Iowa for about a year.
-Pong was written by Helen Harrison at SAS Institute and a paper on it was
-presented at the Usenix LISA conference. Pong would allow us to do simple
-monitoring of systems (via ping) and would report machine status via a
-web page. The name of this package (Son of PONG, but pronounced as its
-spelled "spong") is an obvious rip off...
-<p>Originally, the main concepts and design came from Big Brother written
-by Sean MacGuire. That package was written in C and sh scripts which I
-``ported'' to Perl, making many changes along the way (like adding more
-information to the messages going from the client to the server, adding
-history, changing the way that information is displayed, added some configuration
-options, etc.).
-<p>There didn't seem to be any interest in my perl code from the author
-of BB, so I've changed the name so there would be any confusion between
-this package and its inspiration.
-<p>I'd also like to thank the many people who have contributed patches
-and comments, and where willing to try out spong and help me work out a
-few of the early problems.
-<p>The about acknowledgements are from Ed Hill. I would like to thank Ed
-hill&nbsp; for creating Spong and allowing me to take up the development
-touch. The current Spong user and development community is small but growing.&nbsp;
-i would like to thank them for their patient in allowing me to whip the
-Spong distribution into shape and helping me work out the numerous installation
-problems.
-<br>&nbsp;
-<br>&nbsp;
-<h2>
-Known Problems in v2.6</h2>
-Here are a list of problems, and possible fixes that have been reported
-for version 2.8. I will update this section as bugs come in (if there are
-any 8-). These fixes will all be included in the next release of spong,
-but if you can't wait - here are some suggestions.
-<br>&nbsp;
-<br>&nbsp;
-<ul>
-<li>
-<b>Memory leak in spong-network on RedHat 6.0</b> - spong-network has a
-memory leak when running on a RedHat 6.0 Linux system. The program memory
-core size grows after each check cycle. The fix is to upgrade the glibc
-from version 2.1.2 to version 2.1.2.</li>
-</ul>
-
-<h2>
-Author</h2>
-Ported&nbsp; by:
-<p><a href="http://strobe.weeg.uiowa.edu/~edhill/">Ed Hill</a> (<a href="mailto:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>)
-<br>Internet Software Developer at <a href="http://www.uiowa.edu/">The
-University of Iowa</a>
-<p>Currently maintained by:
-<br><a href="mailto:sjohnson@monsters.org">Stephen L Johnson</a> (<a href="mailto:sjohnson@monsters.org">sjohnson@monsters.org</a>)
-<p>Please feel free to send me bug reports, patches, suggestions, or comments.
-<p>
-<hr>Most recently updated on Dec 15, 1997 by <a href="mailto:sjohnson@monsters.org">Stephen
-L Johnson</a> (<a href="mailto:sjohnson@monsters.org">sjohnson@monsters.org</a>)
-</body>
-</html>
diff --git a/www/docs/spong-client-mod-template.html b/www/docs/spong-client-mod-template.html
deleted file mode 100755 (executable)
index 83aeb2e..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
-   <meta name="Author" content="noman">\r
-   <meta name="GENERATOR" content="Mozilla/4.6 [en] (WinNT; I) [Netscape]">\r
-   <title>Spong Client Module Template</title>\r
-</head>\r
-<body>\r
-\r
-<h1>\r
-spong-client Module Template</h1>\r
-\r
-<hr WIDTH="100%">\r
-<br>This template assumes that you are creating&nbsp; a new client check\r
-called 'mailq'. The name of the file created should be 'check_mailq'. The\r
-file name should always be 'check_' and the registry name (e.g. for the\r
-foo check, the registry name is 'foo' and the file name is 'check_foo'.\r
-<p>The line that has the assignment to $CHECKFUNC{'registry-name'} is the\r
-key to the registry mechanism. It's what track the registry name to the\r
-your check function.\r
-<p>The registry name does not always have to match up to the service name\r
-as in this case of 'mailq'. If you where creating a new and improved function\r
-to check mail queues, you could create a module called 'my_mailq'. You\r
-would use the regiestry name 'my_mailq', but you would use the service\r
-name 'mailq' in the <tt>&amp;status()</tt> function when reporting you\r
-info back to the server.\r
-<p>check_mailq:\r
-<p><tt># Register my routine with plugin registry</tt>\r
-<br><tt>$CHECKFUNCS{'mailq'} = \&amp;check_mailq;</tt><tt></tt>\r
-<p><tt># Sendmail mail queue check for mail servers. It checks the number\r
-of mail</tt>\r
-<br><tt># message queued against the $MAILQWARN AND $MAILQCRIT variables.</tt>\r
-<br><tt># It runs the command in the config variable $MAILQ to do it's\r
-check.</tt><tt></tt>\r
-<p><tt>sub check_mailq {</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; my($mqcnt, $message, $color, $summary );</tt><tt></tt>\r
-<p><tt>&nbsp;&nbsp;&nbsp; open (FOO,"$MAILQ |");</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; $mqcnt = 0;</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; while (&lt;FOO>) {</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (/Mail Queue\s+\((\d+)/)\r
-{ $mqcnt = $1; }</tt><tt></tt>\r
-<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Grab enough to get\r
-the first 10 entries.</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (++$lines &lt;= 35)\r
-{ $message .= $_ };</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; }</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; close FOO;</tt><tt></tt>\r
-<p><tt>&nbsp;&nbsp;&nbsp; $color = "green";</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; if ($mqcnt > $MAILQWARN) { $color = "yellow";\r
-}</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; if ($mqcnt > $MAILQCRIT) { $color = "red"; }</tt><tt></tt>\r
-<p><tt>&nbsp;&nbsp;&nbsp; $summary = "Mail Queue count = $mqcnt";</tt><tt></tt>\r
-<p><tt>&nbsp;&nbsp;&nbsp; &amp;debug("mailq - $color, $summary");</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp; &amp;status( $SPONGSERVER, $HOST, "mailq", $color,\r
-$summary, $message );</tt>\r
-<br><tt>}</tt><tt></tt>\r
-<p><tt># I'm include perl code, I need this line.</tt>\r
-<br><tt>1;</tt>\r
-<p>Please note the final line. It is always required for a module file.\r
-<br>&nbsp;\r
-<br>&nbsp;\r
-</body>\r
-</html>\r
diff --git a/www/docs/spong-client.html b/www/docs/spong-client.html
deleted file mode 100755 (executable)
index 3cb6e0f..0000000
+++ /dev/null
@@ -1,193 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong-client</title>
-</head>
-<body>
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>Name</font></font></b>
-<p><b>spong-client</b> - report system information to spong server.
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>SYNOPSIS</font></font></b>
-<p><b>spong-client</b> [--debug] [--kill|--restart|--nosleep|--refresh]
-[config_file]
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>DESCRIPTION</font></font></b>
-<p>This program is run on each Unix (and NT) machine in which you want
-to monitor local system attributes, and report that information to the
-spong server. It runs one or more configured checks. It then sleeps for
-a time period you have defined in your configuration file and does it all
-again (it actually adds or subtracts a random amount of time - no more
-then 10<b>% </b>of the total you have specified, to keep clients from syncing
-up and overloading the spong-server).
-<p>The checks are modular in nature. You can configure the number of checks
-to run and the order in which to run to them. The list of checks that are
-included are disk space, cpu load, running processes and log files.
-<p>It sends a message for each check to the spong server and reports the
-following:
-<ul>
-<li>
-hostname (where is this report coming from)</li>
-
-<li>
-service name ("disk", "cpu", "procs", "logs", "local")</li>
-
-<li>
-color ("red", "yellow", "green")</li>
-
-<li>
-a one line summary</li>
-
-<li>
-a more detailed message providing additional detail.</li>
-</ul>
-The color is determined by comparing the current status of that service
-against thresholds defined in the configuration file. If they are greater
-then the level you have defined for a warning, then the color is yellow.
-If they are greater then the critical level you have defined then the color
-is red.
-<p>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).
-<p>The more detailed message contains information such as the complete
-df output, or a listing of the top 10 processes sorted by CPU.
-<p>You should start this program in your system startup file, and it should
-be running constantly. If you provide the --debug flag, then debugging
-information will be printed to stdout, otherwise output will only be produced
-if there is a problem.
-<p>If you provide the --restart flag, a signal will be sent to the spong-client
-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 flags
-causs the program to cycle through all of the checks one and hen exit.
-These flags can be used to run spong-client as a cron job (<b>depreciated</b>,
-this reduced the effectivemess of the check_logs module, see: <a href="check_logs.html">Client
-Modules</a>).
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>CONFIGURATION</font></font></b>
-<p>By default this reads the <a href="spong-client.html#spong-client_usr_local_etc_spong_spong_conf_0">/usr/local/etc/spong/spong.conf</a>
-file on startup. You can specify an alternate config file via a command
-line option and it will read that file instead. If you change values in
-the configuration file you will need to restart this program for those
-changes to be re-read.
-<p>After reading the configuration file that you specify (or the default),
-it then reads the <i>/usr/local/etc/spong/spong.conf.[host]</i> file where
-[host] 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.
-<p>Here is a listing of the configuration variables applicable to the spong-client
-program.
-<blockquote><b>$SPONGSLEEP</b>, <b>$SPONGSERVER</b>, <b>$SPONGPORT</b>
-<br>Some basic spong configuration options that define how long to sleep
-(in seconds) before checking the status of a service again, the hostname
-of the spong server, and the port number that the spong server listens
-on.
-<p><b>$CHECKS</b>
-<br>A string that has the list of client check modules to run. If $CHECK
-is missed or blank, spong-client defaults to "disk cpu processes logs".
-If the <i><tt>&amp;check_local()</tt> </i>function is present then 'local'
-is appened.
-<br>&nbsp;
-<p><b>$CPUWARN</b>, <b>$CPUCRIT</b>
-<br>A number indicating the CPU load that triggers a problem (<b>$CPUWARN</b>
-triggers warnings - yellow, and <b>$CPUCRIT</b> triggers alerts - red).
-<p><b>@PROCSWARN</b>, <b>@PROCSCRIT</b>
-<br>A list of processes that should be running, if they are not running,
-then trigger a problem (processes in <b>@PROCSWARN</b> trigger a warning
-- yellow, and processes in <b>@PROCSCRIT</b> trigger an alert - red).
-<p><b>$LOGCHECKS</b>
-<br>A list of hashes which defined checks to apply to log files. Each hash
-contains the fields <b>logfile</b> which is the full path to the log file
-to check and <b>checks</b> whch&nbsp; is a list of check to apply to the
-log file. Each check is a hash that contains the fields: <b>pattern</b>
-- a Perl regular expression to be scanned for, <b>status</b> - the status
-color to reported lines matching pattern, duration - the duration that
-each event is to be reported to the server, <b>text </b>- the text to reported
-back in the detailed message field of the status report (which can include
-match position variables from <b>pattern</b>) and <b>id</b> - an optional
-key field to associated with each event generated.
-<p><b>$DF</b>, <b>$UPTIME</b>, <b>$PS</b>, <b>$GREP</b>
-<br>These variables are OS specific variables, which are hopefully set
-correctly for your machine, if they are not - please send me email letting
-me know what OS you are running on, and what the correct value should be.
-<br>&nbsp;</blockquote>
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>CLIENT CHECKS</font></font></b>
-<p><font face="Arial, Helvetica, sans-serif">&nbsp;</font>The checks are
-actually a set of modules that are called in series by spong-client. The
-list of modules to run are defined in the <b>$CHECKS</b> configuration
-variable. Upon initialization, <i>spong-client </i>will load the modules
-defined in <b>$CHECKS </b>from the <i>"LIBDIR/Spong/Client/plugins/"</i>
-directory. As each modules is initialized, it registers itself with the
-the plugins registery (see the <a href="developer-guild.html">Developer
-Guide</a>). Spong comes with a standard set of clients <i>check_disk</i>,
-<i>check_cpu</i>,
-<i>check_processes</i>
-and <i>check_logs </i>(see <a href="client-modules.html">Client Modules</a>
-for details.)
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>EXTENDING
-FUNCTIONALITY</font></font></b>
-<p><b>Depreciated,</b> please refer to the <a href="developer-guide.html#developer.guide.client_modules">Client
-Modules</a> section of the <a href="developer-guild.html">developer guide</a>.
-<p>If you want to check some service which is not being checked by spong-client,
-then you can define a <tt>&amp;<i>check_local()</i></tt> function in your
-config file (either in your standard config file or your host specific
-file - but not both!). That function can do anything you want, but at the
-end needs to call the <tt>&amp;<i>status()</i></tt> function to report
-what you have found to the spong server.
-<pre>&nbsp;&nbsp;&nbsp; &amp;status( SERVERADDR, HOST, SERVICE, COLOR, SUMMARY, MESSAGE )</pre>
-The arguments to the <tt>&amp;<i>status()</i></tt> function are:
-<pre>&nbsp;&nbsp; * SERVERADDR - Should be $SPONGSERVER
-&nbsp;&nbsp; * HOST&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - The full hostname of the machine you are on
-&nbsp;&nbsp; * SERVICE&nbsp;&nbsp;&nbsp; - Should be the string local.
-&nbsp;&nbsp; * COLOR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Either "red", "yellow", or "green"
-&nbsp;&nbsp; * SUMMARY&nbsp;&nbsp;&nbsp; - A short one line summary of the status
-&nbsp;&nbsp; * MESSAGE&nbsp;&nbsp;&nbsp; - More detailed information (can be multi-lined)</pre>
-Here is an example <tt>&amp;<i>check_local()</i></tt> function that we
-run on some of our machines to check to make sure that our sendmail mail
-queue is not getting too large.
-<pre>sub check_local {
-&nbsp;&nbsp; my $color&nbsp;&nbsp; = "green";
-&nbsp;&nbsp; my $summary = "";
-&nbsp;&nbsp; my $rt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = `mailq | head -1`;
-
-&nbsp;&nbsp; chomp $rt;
-&nbsp;&nbsp; if( $rt =~ /\((\d+) request/ ) {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $items = $1
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if( $items > 1000 ) {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "red";
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } elsif( $items > 500 ) {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "yellow";
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $summary = "$items messages in the mail queue";
-&nbsp;&nbsp; } else {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "yellow";
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $summary = "Can't parse mailq output: $rt";
-&nbsp;&nbsp; }
-
-&nbsp;&nbsp; &amp;status( $SPONGDISPLAY, $HOST, "local", $color, $summary, "" );
-}</pre>
-<b><font size=+2>FILES</font></b>
-<dl>
-<dt>
-<b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<dd>
-Configuration file. This contains variables that detail spong and OS specific
-definitions used by spong-client. This file also contain variables describing
-threshold levels. See <i>spong.conf</i> for additional documentation.</dd>
-</dl>
-<b><font face="Arial, Helvetica, sans-serif"><font size=+2>DEPENDENCIES</font></font></b>
-<p>Perl v5.003 or greater is required.
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>BUGS</font></font></b>
-<p>None know bugs.
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>SEE ALSO</font></font></b>
-<p>the <i>spong-server</i> manpage , <i>spong.conf, client-modules, develper-guild</i>
-<p><b><font face="Arial, Helvetica, sans-serif"><font size=+2>AUTHOR</font></font></b>
-<p>Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>),
-Unix System Administrator, The University of Iowa
-<br>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/spong-message-mod-template.html b/www/docs/spong-message-mod-template.html
deleted file mode 100755 (executable)
index d5d6674..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
-   <meta name="Author" content="noman">\r
-   <meta name="GENERATOR" content="Mozilla/4.6 [en] (WinNT; I) [Netscape]">\r
-   <title>spong-message Module Template</title>\r
-</head>\r
-<body>\r
-\r
-<h1>\r
-spong-message Module Template</h1>\r
-\r
-<hr WIDTH="100%">\r
-<br>This template assumes that you are creating a messaging function called\r
-'teletouch_short'. The name of the file created should be 'msg_teletouch_short'.\r
-The file name should always be 'msg_' and the registry name (e.g. for the\r
-foo messaging function, the registry name is 'foo' and the file name is\r
-'msg_foo'.\r
-<p>The line that has the assignment to $MSGFUNCS{'registry-name'} is the\r
-key to the registry mechanism. It's what track the registry name to the\r
-your check function.\r
-<br>&nbsp;\r
-<p><tt># Message function for Teletouch pagers using e-mail delivery</tt>\r
-<br><tt># but using the e-mail mini status function instead. This is a</tt>\r
-<p><tt>$MSGFUNCS{'teletouch_short'} = \&amp;msg_teletouch_short;</tt>\r
-<p><tt>sub msg_teletouch_short {</tt>\r
-<br><tt>&nbsp;&nbsp; my ($pager) = @_;</tt>\r
-<p><tt>&nbsp;&nbsp; &amp;email_mini_status("$pager\@pageme.teletouch.com",'shortsubject');</tt>\r
-<br><tt>&nbsp;&nbsp; &amp;debug( "teletouch short page sent to $pager"\r
-);</tt>\r
-<br><tt>}</tt>\r
-<p><tt># Required because I'm included perl code</tt>\r
-<br><tt>1;</tt>\r
-<p>Please note the final line. It is always required for a module file.\r
-<br>&nbsp;\r
-<br>&nbsp;\r
-<br>&nbsp;\r
-</body>\r
-</html>\r
diff --git a/www/docs/spong-message.html b/www/docs/spong-message.html
deleted file mode 100755 (executable)
index 84c9425..0000000
+++ /dev/null
@@ -1,290 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong-message</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="spong-message_name_0"></a>NAME</h1>
-<b>spong-message</b> - alert the humans when there is a problem
-<p>
-<hr>
-<h1>
-<a NAME="spong-message_synopsis_0"></a>SYNOPSIS</h1>
-<b>spong-message</b> [--debug] color host service time message [duration]
-<p>
-<hr>
-<h1>
-<a NAME="spong-message_description_0"></a>DESCRIPTION</h1>
-spong-message is run when there is a problem reported to spong. The following
-arguments must be given to spong-message.
-<pre>&nbsp;&nbsp;&nbsp; * color&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; color of the message (red, yellow, green)
-
-&nbsp;&nbsp;&nbsp; * host&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; host having a problem
-
-&nbsp;&nbsp;&nbsp; * service&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; service having a problem
-
-&nbsp;&nbsp;&nbsp; * time&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; time (in time() format) of the problem
-
-&nbsp;&nbsp;&nbsp; * message&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; summary of the problem</pre>
-The following parameters are optional.
-<pre>&nbsp;&nbsp;&nbsp; * duration&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; duration of the event in seconds. Default to zero.</pre>
-When spong-message is called, the information passed in is run through
-a list of rules which determine who is contacted, when they are contactd
-and how often.&nbsp; the information is also run through a number of checks
-to determine if the message should be sent. It maintains a little database
-in the spong tmp directory so that it can keep track of how many pages
-have been sent, when was the last page sent, etc. These checks help to
-direct problems to the correct people, and also help to throttle messages
-when there are wide-spread problems (such as a networking outage).
-<p>If you are going to be performing maintainence on a machine, or have
-standard down time for a machine, you can specify that down time in the
-spong.hosts file. If a problem is reported during the time indicated, spong-message
-will not send messages.&nbsp; spong-message also checks for acknowledgements
-created for a machine. If an active acknowledgement for a machine and service,
-no messages will be sent.
-<p>spong-message using the humans defined in the contact attributes of
-the messaging rules of spong.mesaage and spong.hosts to determed who is
-to be contacted. A of contacts is generated from all of the message rules
-that are matched. The format of thse files is described briefly below,
-and in more detail in <i>spong.message</i> and <i>spong.hosts</i>.
-<p>Currently, spong-message knows how to alert people via the messaging
-function modules that are installed. More messaging functions can be created.
-See <b><a href="developer-guide.html#message-modules">Message Modules</a></b>
-in the <a href="developer-guide.html">Developer Guide</a>.
-<p>
-<hr>
-<h1>
-<a NAME="spong-message_configuration_0"></a>CONFIGURATION</h1>
-The most important information (to spong-message anyway) comes from the
-<a href="spong-message.html#spong-message_usr_local_etc_spong_spong_hosts_0">/usr/local/etc/spong/spong.hosts</a>
-file. This file defines attributes for two things, 1) the hosts that spong
-is monitoring, and 2) the humans that are responsible for the various hosts.
-and how to contact them.
-<p>Each host has one ``human'' contact (actually the contact can be a group
-of people, or really anything you want). Each human has the following attributes:
-<p>Each human that is defined should have the following attributes associated
-with it:
-<pre>&nbsp;&nbsp;&nbsp; * name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name of the person to contact</pre>
-And one or more of the following attributes assigned to each human for
-messaging when there are problems
-<br>&nbsp;
-<pre>&nbsp;&nbsp;&nbsp; * email&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; email address
-
-&nbsp;&nbsp;&nbsp; * skytel&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; skytel pager number
-
-&nbsp;&nbsp;&nbsp; * alltelsms&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; phone number of a phone subscribered to Alltel Communications SMS service.
-
-&nbsp;&nbsp;&nbsp; * teletouch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; teletouch pager number
-
-&nbsp;&nbsp;&nbsp; * teletouch_short&nbsp;&nbsp; teletouch pages numer for small alpha pagers</pre>
-The messaging attributes are optional, but at least one must be provided
-in order to the spong-message program to contact the person. The format
-of the spong.hosts file is described in more detail in <i><a href="spong_hosts.html">spong.hosts</a></i>.
-<p>Each host also has attributes which are of interest to spong-message.
-Each host can have the following attribute:
-<pre>&nbsp;&nbsp;&nbsp; * down&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of times the machine is down for repairs.</pre>
-If the spong-message gets told to send a message during this downtime the
-message will be ignored. This prevents you from being flooded with messages
-during routine system maintenence.
-<p>The <i>spong.message</i> hold the rules that determine who is to be
-contacted, when and how often.
-<p>Each rule should have more of more of the following matching criteria
-attributes:
-<pre>&nbsp;&nbsp;&nbsp; * hosts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of hosts to match
-
-<pre>&nbsp;&nbsp;&nbsp; * host_groups&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of host groups to match
-
-&nbsp;&nbsp;&nbsp; * services&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of services to match
-
-&nbsp;&nbsp;&nbsp; * exclude_hosts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of hosts to exclude
-
-&nbsp;&nbsp;&nbsp; * exclude_host_groups&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of hosts groups to exclude
-
-&nbsp;&nbsp;&nbsp; * exclude_services&nbsp;&nbsp; a list of services to exclude
-
-&nbsp;&nbsp;&nbsp; * times&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of days/times to match</pre>
-And each rule must have the following attributes:
-<pre>&nbsp;&nbsp;&nbsp; * contacts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of contacts to notify</pre>
-The rule alow you to be quite flexible is how your notifications are created.
-The format if the spong.message if described in more detail in <i><a href="spong-message.html">spong.message</a></i>.
-<br>&nbsp;
-<p>The <a href="spong-message.html#spong-message_usr_local_etc_spong_spong_conf_0">/usr/local/etc/spong/spong.conf</a>
-file is also read on startup. This file contains some variables specific
-to spong-message, and some OS specific variables that are required by spong-message.
-Here are the variables applicable to the spong-message program.
-<dl>
-<dt>
-<a NAME="spong-message_send_message_0"></a><b>$SEND_MESSAGE</b></dt>
-
-<dd>
-<a href="spong-message.html#spong-message_send_message_0">$SEND_MESSAGE</a>
-defines when spong-message is called by spong-server. It is not really
-specific to spong-message, but I think it is useful to describe its behavior
-here. This variable can contain one of four valid values. If it is ``RED'',
-then <b>spong-message</b> is called for every time a system or service
-reports a problem. If its value is ``CHANGE'', then <b>spong-message</b>
-is only called when there is a change of state . If this values is "RED-CHANGE",
-then <b>spong-message</b> is called&nbsp; everytime a system of service
-reported a problem and when the condition is cleared. (going from green/yellow
-to red, and then again going from red to green/yellow). If its value is
-``NONE'', then <b>spong-message</b> is never called.</dd>
-
-<dt>
-<a NAME="spong-message_message_per_hour_0"></a><b>$MESSAGE_PER_HOUR</b></dt>
-
-<dd>
-This is the maximum number of messages that are sent to the same person
-in an hour. All message past this number are just logged to the history
-file, but are not sent. This helps to prevent against message overload
-such as when you have a networking problem, and everything appears to go
-red at once. The default value is 5.</dd>
-
-<dt>
-<a NAME="spong-message_ident_messages_per_hour_0"></a><b>$IDENT_MESSAGES_PER_HOUR</b></dt>
-
-<dd>
-This is the maximum number of identical messages that are sent to the same
-person in an hour. The default value is 3.</dd>
-
-<dt>
-<a NAME="spong-message_sendmail_0"></a><b>$SENDMAIL</b></dt>
-
-<dd>
-These variables are OS specific variables, which are hopefully set correctly
-for your machine, if they are not - please send me email letting me know
-what OS you are running on, and what the correct value should be.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong-message_examples_0"></a>EXAMPLES</h1>
-Here are some lexamples to show you possible configurations.
-<pre>&nbsp;%HUMANS = (
-
-&nbsp; 'unix-staff' =>&nbsp;&nbsp;&nbsp; { name&nbsp; => 'Midrange On-call Staff',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; email => 'its-unix@school.edu' },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-
-&nbsp; 'edhill' =>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { name&nbsp; => 'Ed Hill',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; email => 'ed-hill@school.edu',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; skytel => '1234567' },
-
-&nbsp;);
-
-&nbsp;%HOSTS = (
-
-&nbsp; 'strobe.weeg.school.edu' =>&nbsp;&nbsp;&nbsp; { services => 'ftp smtp http',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; down&nbsp;&nbsp;&nbsp;&nbsp; => [ "*:05:30-06:30",
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "0:00:00-04:00 ] },
-
-&nbsp; 'www.school.edu' =>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { services => 'ftp smtp http',&nbsp; },
-
-&nbsp;);
-
-
-From spong.message:</pre>
-
-<pre>&nbsp; $RULES_MATCH = 'FIRST-MATCH';</pre>
-
-<pre>&nbsp; $MESSAGING_RULES = [</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { hosts => [ 'strobe.weeg.school.edu' ],</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contacts => [ 'unix-staff'],</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { hosts => ['www.school.edu'],</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contacts => [ 'edhill:email', { rcpt=>'edhill:pager', repeat=>900, }, ],</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },</pre>
-
-<pre>&nbsp; ];</pre>
-
-<hr>
-<h1>
-<a NAME="spong-message_files_0"></a>FILES</h1>
-
-<dl>
-<dt>
-<a NAME="spong-message_usr_local_etc_spong_spong_conf_0"></a><b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<dd>
-Configuration file. This contains variables that detail spong and OS specific
-definitions used by spong-display. See <i><a href="spong.conf.html">spong.conf</a></i>
-for additional documentation.</dd>
-
-<dt>
-<a NAME="spong-message_usr_local_etc_spong_spong_hosts_0"></a><b>/usr/local/etc/spong/spong.hosts</b></dt>
-
-<dd>
-Host and human configuration file. This defines what hosts you are monitoring,
-and what human you should contact if there is a problem. See <i><a href="spong_host.html">spong.hosts</a></i>
-for additional documentation.</dd>
-
-<dd>
-</dd>
-
-<dt>
-<b><i>$SPOMGTMP/message-db</i></b></dt>
-
-<dd>
-Database where information about who has been paged, when, how, and what
-the problem was is kept.</dd>
-
-<br>&nbsp;
-<dt>
-<b>/usr/local/etc/spong/spong.message</b></dt>
-
-<dd>
-Configuration file. This defined the rules on who is to be notified about
-where, hen and how often. See <i><a href="spong_message.html">spong.message</a></i>
-for additional documentation.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong-message_dependencies_0"></a>DEPENDENCIES</h1>
-Perl v5.003 or greater is required.
-<p>To receive pages, you currently must have a pager that can be contacted
-electronically (via email or web interface).
-<p>
-<hr>
-<h1>
-<a NAME="spong-message_bugs_0"></a>BUGS</h1>
-This program currently will only notify via email, so if your pager does
-not have an email (or TCP accessible) interface - this currently won't
-work (well won't page) for you.
-<p>The <b>$MESSAGES_PER_HOUR</b> check does not always work correctly.
-The syntax of the contact attribute in <i>spong.message<b>&nbsp;</b></i>
-has changed. The check logic will have to be enhance to be able to check
-for mulitple forms of the contact.
-<br>
-<hr>
-<h1>
-<a NAME="spong-message_see_0"></a>SEE ALSO</h1>
-the <i>spong-server</i> manpage , <i>spong.hosts</i>, <i>spong.conf, spong.message</i>
-<p>
-<hr>
-<h1>
-<a NAME="spong-message_author_0"></a>AUTHOR</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<br>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<br>&nbsp;
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/spong-network-mod-template.html b/www/docs/spong-network-mod-template.html
deleted file mode 100755 (executable)
index 649dd12..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
-   <meta name="Author" content="noman">\r
-   <meta name="GENERATOR" content="Mozilla/4.6 [en] (WinNT; I) [Netscape]">\r
-   <title>spong-network Module Template</title>\r
-</head>\r
-<body>\r
-\r
-<h1>\r
-spong-network Module Template</h1>\r
-\r
-<hr WIDTH="100%">\r
-<br>This template assumes that you are creating&nbsp; a network check called\r
-'dns'. The name of the file created should be 'check_dns'. The file name\r
-should always be 'check_' and the registry name (e.g. for the foo check,\r
-the registry name is 'foo' and the file name is 'check_foo'.\r
-<p>The line that has the assignment to $PLUGINS{'registry-name'} is the\r
-key to the registry mechanism. It's what track the registry name to the\r
-your check function.\r
-<p>The registry name does not always have to match up to the service name\r
-as in this case of 'dns'. If you where creating a new and improved function\r
-to ping and traceroute, you could create a module called 'ping_trace'.\r
-You would use the registry name 'ping_trace', but you would use the service\r
-name 'ping' in the <tt>&amp;status()</tt> function when reporting you info\r
-back to the server.\r
-<p><tt># Register the routine with the plugin registry</tt>\r
-<br><tt>$PLUGINS{'dns'} = \&amp;check_dns;</tt><tt></tt>\r
-<p><tt># Check to see if they have the Net::DNS module installed, and if\r
-they do we</tt>\r
-<br><tt># can then do DNS queries, and see if DNS servers are alive.</tt><tt></tt>\r
-<p><tt>eval "require Net::DNS;";</tt>\r
-<br><tt>if( ! $@ ) { $dns = 1; } else { $dns = 0; }</tt><tt></tt>\r
-<p><tt># This check will (if the Net::DNS module is available) connect\r
-to a DNS server</tt>\r
-<br><tt># and ask that server to resolve it's own name.&nbsp; If it can\r
-do that, then we</tt>\r
-<br><tt># assume it is ok - If it can't then something is wrong.</tt><tt></tt>\r
-<p><tt>sub check_dns {</tt>\r
-<br><tt>&nbsp;&nbsp; my( $host ) = @_;</tt>\r
-<br><tt>&nbsp;&nbsp; my( $color, $summary, $message ) = ( "green", "",\r
-"" );</tt>\r
-<br><tt>&nbsp;</tt>\r
-<br><tt>&nbsp;&nbsp; if( ! $dns ) {</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $summary = "can't do DNS lookups,\r
-Net::DNS not installed";</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &amp;debug( "dns - $host - $color,\r
-$summary" );</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return ( "yellow", $summary,</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r
-"In order to do DNS queries you must install the Net::DNS " .</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r
-"Perl module.\nYou can find the module at your nearest CPAN " .</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r
-"archive or http://www.perl.com/CPAN/\n" );</tt>\r
-<br><tt>&nbsp;&nbsp; }</tt>\r
-<br><tt>&nbsp;</tt>\r
-<br><tt>&nbsp;&nbsp; my $resolver = new Net::DNS::Resolver;</tt>\r
-<br><tt>&nbsp;&nbsp; $resolver->nameservers( $host );</tt>\r
-<br><tt>&nbsp;&nbsp; $resolver->retrans(2);</tt>\r
-<br><tt>&nbsp;&nbsp; $resolver->retry(1);</tt>\r
-<br><tt>&nbsp;&nbsp; $resolver->recurse(0);</tt>\r
-<br><tt>&nbsp;&nbsp; my $q = $resolver->search( $host, "A" );</tt>\r
-<br><tt>&nbsp;</tt>\r
-<br><tt>&nbsp;&nbsp; if( defined $q &amp;&amp; defined $q->answer &amp;&amp;\r
-defined (($q->answer)[0]) ) {</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "green";</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $summary = "dns ok";</tt>\r
-<br><tt>&nbsp;&nbsp; } else {</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "red";</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $summary = "can't resolve $host";</tt>\r
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $message = "can't resolve $host\n";</tt>\r
-<br><tt>&nbsp;&nbsp; }</tt>\r
-<br><tt>&nbsp;</tt>\r
-<br><tt>&nbsp;&nbsp; &amp;debug( "dns - $host - $color, $summary" );</tt>\r
-<br><tt>&nbsp;&nbsp; return( $color, $summary, $message );</tt>\r
-<br><tt>}</tt><tt></tt>\r
-<p><tt># I;m included perl code, I need this line.</tt>\r
-<br><tt>1;</tt>\r
-<p>Please note the final line. It is always required for a module file.\r
-<br>&nbsp;\r
-<br>&nbsp;\r
-</body>\r
-</html>\r
diff --git a/www/docs/spong-network.html b/www/docs/spong-network.html
deleted file mode 100755 (executable)
index ce13b76..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong-network</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="spong-network_name_0"></a>NAME</h1>
-<b>spong-network</b> - report network service information to spong server.
-<p>
-<hr>
-<h1>
-<a NAME="spong-network_synopsis_0"></a>SYNOPSIS</h1>
-<b>spong-network</b> [--debug] [--kill|--restart|--nosleep|--refresh] [config_file]
-<p>
-<hr>
-<h1>
-<a NAME="spong-network_description_0"></a>DESCRIPTION</h1>
-This does two things, first it checks network connectivity to various machines
-that you want to monitor (via ping). It then tries to connect to the services
-that are running on each host to make sure they are available. 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).
-<p>Besides checking connectivity (first using tcp echo, and then ICMP ping
-if that fails), the following TCP/UDP based services can be checked.
-<pre>
-&nbsp;&nbsp;&nbsp; * dns&nbsp;&nbsp;&nbsp; (asks the bind server to resolve its own name)
-
-
-&nbsp;&nbsp;&nbsp; * ftp&nbsp;&nbsp;&nbsp; (checks for a 220 return code)
-
-
-&nbsp;&nbsp;&nbsp; * pop3&nbsp;&nbsp; (checks for a "OK" return string)
-
-
-&nbsp;&nbsp;&nbsp; * smtp&nbsp;&nbsp; (checks for a 220 return code)
-
-
-&nbsp;&nbsp;&nbsp; * nntp&nbsp;&nbsp; (checks for a 200 return code)
-
-
-&nbsp;&nbsp;&nbsp; * imap&nbsp;&nbsp; (checks for a "OK" return string)
-
-
-&nbsp;&nbsp;&nbsp; * http&nbsp;&nbsp; (checks for a 200-300 return code)
-
-&nbsp;&nbsp;&nbsp; * ssh&nbsp;&nbsp;&nbsp; (checks for "SSH" in return string)
-
-
-</pre>
-The DNS check will only be performed if you have the Perl Net::DNS module
-installed on your system. This module does not come with spong, but can
-be downloaded at <a href="http://www.perl.com/CPAN/">http://www.perl.com/CPAN/</a>.
-<p>For each of these network services, the following information is reported
-to the spong server.
-<pre>
-&nbsp;&nbsp; * hostname (the host the service is running on)
-
-
-&nbsp;&nbsp; * service name ("ftp", "pop3", "smtp", ...)
-
-
-&nbsp;&nbsp; * color ("red", "yellow", "green")
-
-
-&nbsp;&nbsp; * a one line summary
-
-
-&nbsp;&nbsp; * a more detailed message providing additional detail.
-
-
-
-
-
-
-
-</pre>
-These checks are modular in nature.New checks can be added or old checks
-replaced with newer versions. See <a href="developer-guide.html#network-modules">Client
-Modules</a> in the <a href="developer-guide.html">Developers Guide</a>.
-<p>For most services, the color is determined by comparing the return value
-of the service against an expected string. For some services (like http)
-there are some additional smarts built in to determine the status of the
-service.
-<p>The spong-network program can also check multiple interfaces on a given
-host. See <i><a href="spong_hosts.html">spong.hosts</a></i> for instructions
-on how to set this up in your spong.hosts file.
-<p>The one line summary provides information that might be useful at a
-glance when looking at the overall system status (such as the response
-time of the service). The more detailed message contains information such
-as the output of the service.
-<p>You should start this program in your system startup file, and it should
-be running constantly. The program will daemonize by default unless one
-of the flags below is given.
-<p>If you provide the --debug flag, then debugging information will be
-printed to stdout and the program will be forced to run in the fore ground,
-otherwise output will only be produced if there is a problem.
-<p>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-network process causing it to exit. The --nosleep and --refresh flags
-caus the program to cycle through all of the checks one
-<br>and then exit. These flags can be used to run <i>spong-network</i>
-from cron.
-<br>&nbsp;
-<p>
-<hr>
-<h1>
-<a NAME="spong-network_configuration_0"></a>CONFIGURATION</h1>
-The configuration of the spong-network program is two fold, the first part
-is the <a href="spong_hosts.html">/usr/local/etc/spong/spong.hosts</a>
-file. This file defines the host that you want to monitor and the network
-services running on that host (all hosts are checked for connectivity via
-ping). See <i><a href="spong_hosts.html">spong.hosts</a></i> for additional
-information.
-<p>The second part of the configuration is the <a href="spong_conf.html">/usr/local/etc/spong/spong.conf</a>
-file which defines some specific variables that you probably don't need
-to override. By default the <a href="spong_conf.html">/usr/local/etc/spong/spong.conf</a>
-file is read on startup. You can specify an alternate config file via a
-command line option and it will read that file instead. If you change values
-in the configuration file you will need to restart this program for those
-changes to be re-read.
-<p>After reading the configuration file that you specify (or the default),
-it then reads the <i>/usr/local/etc/spong/spong.conf.[host]</i> file where
-[host] 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.
-<p>Here are a list of variables in the spong.conf file that are applicable
-to the spong-network program:
-<dl>
-<dt>
-<b>$SPONGSLEEP</b>, <b>$SPONGSERVER</b>, <b>$SPONGPORT</b></dt>
-
-<dd>
-&nbsp;Some basic spong configuration options that define how long to sleep
-(in seconds) before checking the status of a service again, the hostname
-of the spong server, and the port number that the spong server listens
-on.</dd>
-
-<dt>
-<b>%HTTPDOCS</b>, <b>%HTTPPORT</b></dt>
-
-<dd>
-&nbsp;These variables provide some parameters when checking http based
-servers. The <b>%HTTPDOCS</b> variable is keyed by host (or the string
-``ALL'' for all hosts), and contains as a value, a list of documents to
-check on that host. The default setting is to search for the ``/robots.txt''
-file on all hosts.</dd>
-
-<br>&nbsp;
-<dl>The <b>%HTTPPORT</b> variable contains the port number that web server
-on a given host is running on. By default the value is 80, but this can
-be overridden on a host by host basis.
-<br>&nbsp;</dl>
-
-<dt>
-<b>$PING</b>, <b>$TRACEROUTE</b>, <b>$GREP</b></dt>
-
-<dd>
-&nbsp;These variables are OS specific variables, which are hopefully set
-correctly for your machine, if they are not - please send me email letting
-me know what OS you are running on, and what the correct value should be.</dd>
-
-<br>&nbsp;</dl>
-
-<hr>
-<h1>
-<a NAME="files"></a>FILES</h1>
-
-<dl>
-<dt>
-<b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<dd>
-Configuration file. This contains variables that detail spong and OS specific
-definitions used by spong-network. See <i>spong.conf</i> for additional
-documentation.</dd>
-
-<dt>
-<b>/usr/local/etc/spong/spong.hosts</b></dt>
-
-<dd>
-Host and human configuration file. This defines what hosts you are monitoring,
-and what human you should contact if there is a problem. See <i>spong.hosts</i>
-for additional documentation.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;</dl>
-
-<hr>
-<h1>
-<a NAME="spong-network_dependencies_0"></a>DEPENDENCIES</h1>
-Perl v5.003 or greater is required.
-<p>
-<hr>
-<h1>
-<a NAME="spong-network_bugs_0"></a>BUGS</h1>
-It does everything sequentially, so if you have big connectivity problems,
-it can take forever to make it through all the services. I should fork
-off processes to do the checking, so that a down host doesn't slow down
-the processing of other hosts.
-<p>I should check connectivity a little better, check it once and then
-back off, and keep backing off little by little until the host is reachable
-again - like pong does...
-<p>The http check is not configurable enough.
-<p>
-<hr>
-<h1>
-<a NAME="spong-network_see_0"></a>SEE ALSO</h1>
-the <i>spong-server</i> manpage , <i>spong.hosts</i>, <i>spong.conf</i>
-<p>
-<hr>
-<h1>
-<a NAME="spong-network_author_0"></a>AUTHORS</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<br>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>
-or <a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>) ,
-Unix Systems Administrator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/spong-server-mod-template.html b/www/docs/spong-server-mod-template.html
deleted file mode 100755 (executable)
index 5f83ab2..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
-   <meta name="Author" content="noman">\r
-   <meta name="GENERATOR" content="Mozilla/4.6 [en] (WinNT; I) [Netscape]">\r
-   <title>spong-server Data Module Template</title>\r
-</head>\r
-<body>\r
-\r
-<h1>\r
-spong-server Data Module Template</h1>\r
-\r
-<hr WIDTH="100%">\r
-<br>This template will be a simple example that will write incoming 'cpu'\r
-status updates into a queueing directory. Each file will have the\r
-host's name plus the current time are it's file name. \r
-\r
-The file name of the module must begin with 'data_'. The registry key can\r
-be anything, but it should be consistent with the procedure's name. And the\r
-registry must be unique among the other loaded modules; otherwise, one\r
-module will overylay the other.\r
-\r
-<p>The line that has the assignment to $DATAFUNCS{'registry-name'} is the\r
-key to the registry mechanism. It's what used to track the registry name to the\r
-your data module.\r
-\r
-<pre>\r
-# Register the routine with the plugin registry\r
-$DATAFUNCS{'cpu_queue'} = \&data_cpu_queue;\r
-\r
-$CPU_QUEUE_DIR = "/var/spool/spong-queue";  # The spooling directory\r
-\r
-sub data_cpu_queue {\r
-   my( $host, $service, $color, $start, $time, $sum, $message ) = @_;\r
-\r
-   if ( $service ne 'cpu' )  { return; }\r
-\r
-   my( $file ) = "$CPU_QUEUE_DIR/$host-" . time();\r
-\r
-   open(FH,"> $file") or\r
-      die("plugin::data_cpu_queue: Could not open file $file: $!");\r
-\r
-   print FH "hostname: $host\n";\r
-   print FH "color: $color\n";\r
-   print FH "start-time: $start\n";\r
-   print FH "last-update: $time\n";\r
-   print FH "summary: $sum\n";\r
-   print FH "message:\n$message\n";\r
-\r
-   close FH;\r
-}\r
-\r
-# I'm included perl code, I need this line.\r
-1;\r
-</pre>\r
-\r
-<p>Please note the final line. It is always required for a module file.\r
-</body>\r
-</html>\r
diff --git a/www/docs/spong-server.html b/www/docs/spong-server.html
deleted file mode 100755 (executable)
index 0f3ee1b..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong-server</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="spong-server_name_0"></a>NAME</h1>
-<b>spong-server</b> - save status information reported by spong programs
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_synopsis_0"></a>SYNOPSIS</h1>
-<b>spong-server</b> [--debug] [--kill|--restart] [config_file]
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_description_0"></a>DESCRIPTION</h1>
-The spong-server program starts up and listens to status reports from various
-spong clients (specifically the spong-network and various spong-client
-programs running). It takes the information reported by the various spong
-clients and does the following:
-<pre>
-&nbsp;&nbsp;&nbsp; * Check for valid messages, and discards any invalid ones.
-
-&nbsp;&nbsp;&nbsp; * If the message is something worth notifying someone about, it calls
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; the spong-message program and lets it determine how/if to contact&nbsp;
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; someone about the problem.
-
-&nbsp;&nbsp;&nbsp; * Check to see if the color of this message is different then it
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; used to be, and if so generate a history item indicating the change.
-
-&nbsp;&nbsp;&nbsp; * Save the information in the $SPONGSTATUS directory.
-
-
-
-
-
-</pre>
-Each time a message comes in, a child process is forked off to handle the
-above tasks, while the main spong-server program goes back to waiting for
-more status reports.
-<p>You should start this program in your system startup file, and it should
-be running constantly. If you provide the --debug flag, then debugging
-information will be printed to stdout, otherwise output will only be produced
-if there is a problem.
-<p>If you provide the --restart flag, a signal will be sent to the spong-server
-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-server process causing it to exit.
-<p>
-<hr>
-<eh1>
-<a NAME="spong-server_configuration_0"></a>CONFIGURATION</h1>
-The configuration of the spong-server program is two fold, the first part
-is the <a href="spong-server.html#spong-server_usr_local_etc_spong_spong_hosts_0">/usr/local/etc/spong/spong.hosts</a>
-file. This file lists the host that are being monitored by the spong-network
-and spong-client programs. Only status information on hosts in the spong.hosts
-file are considered valid and saved.
-<p>The second part of the configuration is the <a href="spong-server.html#spong-server_usr_local_etc_spong_spong_conf_0">/usr/local/etc/spong/spong.conf</a>
-file which define some specific variables that you probably don't need
-to override. By default the spong.conf file is read on startup. You can
-specify an alternate config file via a command line option and it will
-read that file instead. If you change values in the configuration file
-you will need to restart this program for those changes to be re-read.
-<p>After reading the configuration file that you specify (or the default),
-it then reads the <i>/usr/local/etc/spong/spong.conf.[host]</i> file where
-[host] 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.
-<p>Here are a list of variables in the spong.conf file that are applicable
-to the spong-server program:
-<dl>
-<dt>
-<a NAME="spong-server_send_message_0"></a><b>$SEND_MESSAGE</b></dt>
-
-<dd>
-<a href="spong-server.html#spong-server_send_message_0">$SEND_MESSAGE</a>
-defines when spong-message is called by spong-server. This variable can
-contain one of three valid values. If it is ``RED'', then spong-message
-is called for every time a system or service reports a problem. If its
-value is ``CHANGE'', then spong-message is only called when there is a
-change of state (going from green to red, and then again going from red
-to
-green). If its value is ``NONE'', then spong-message is never called.</dd>
-
-<dt>
-<b>$SPONGPORT</b>, <b>$SPONGSTATUS</b>, <b>$SPONGHISTORY</b>, <b>$SPONGNOTES</b></dt>
-
-<dd>
-&nbsp;The port number that the server should be listening at, and some
-directory locations where status information, history information, and
-host specific documentation are kept.</dd>
-
-<br>
-<hr WIDTH="100%">
-<h3>
-DATA&nbsp;MODULES</h3>
-<b>spong-server</b> has a plugin and registry mechanism what provides a
-hook for access incoming status updates. Any data plugin modules placed
-into the <i>SPONGHOME/lib/Spong/plugins</i> directory will be loaded upon
-<b>spong-server</b> initialization. As each module it registers itself
-with the plugin registry (see the <a href="developer-guide.html">Developer
-Guide</a>). There are no standard Server Data Modules. There are some sample
-modules in the <i>contrib/plugins/spong-server</i> directory of the Spong
-distribution. For more information in developing a Server Data Modules
-see the&nbsp; <b><a href="spong-server-mod-template.html">spong-server
-module template</a></b> documenation.</dl>
-
-<hr>
-<h1>
-<a NAME="spong-server_files_0"></a>FILES</h1>
-
-<dl>
-<dt>
-<a NAME="spong-server_usr_local_etc_spong_spong_conf_0"></a><b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<dd>
-Configuration file. This contains variables that detail spong and OS specific
-definitions used by spong-server. See <i>spong.conf</i> for additional
-documentation.</dd>
-
-<dt>
-<a NAME="spong-server_usr_local_etc_spong_spong_hosts_0"></a><b>/usr/local/etc/spong/spong.hosts</b></dt>
-
-<dd>
-Host and human configuration file. This defines what hosts you are monitoring,
-and what human you should contact if there is a problem. See <i>spong.hosts</i>
-for additional documentation.</dd>
-
-<dt>
-<a NAME="spong-server_local_www_docs_spong_status_0"></a><b>/local/www/docs/spong/status/</b></dt>
-
-<dd>
-The directory where status information is saved. The files in this directory
-should be readable by your web server as spong-display using this information
-to generate the web pages that it displays.</dd>
-
-<dt>
-<a NAME="spong-server_local_www_docs_spong_history_0"></a><b>/local/www/docs/spong/history/</b></dt>
-
-<dd>
-The directory where history information is stored. The files in this directory
-should also be readable by your web server.</dd>
-
-<dt>
-<a NAME="spong-server_local_www_docs_spong_notes_0"></a><b>/local/www/docs/spong/notes/</b></dt>
-
-<dd>
-The directory where host specific information is stored. For each host
-that you monitor, if there is a file in this directory with the same name
-as that host then that file will be displayed by spong-display when the
-user clicks on a specific host.</dd>
-
-<br>&nbsp;
-<p>&nbsp;</dl>
-
-<hr>
-<h1>
-<a NAME="spong-server_dependencies_0"></a>DEPENDENCIES</h1>
-Perl v5.003 or greater is required.
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_bugs_0"></a>BUGS</h1>
-It is not sufficiently paranoid. It should probably perform more strict
-authentication to protect against bogus data.
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_see_0"></a>SEE ALSO</h1>
-the <i>spong-network</i> manpage , the <i>spong-client</i> manpage , the
-<i>spong-display</i> manpage , the <i>spong-message</i> manpage , <i>spong.hosts</i>,
-<i>spong.conf</i>
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_author_0"></a>AUTHOR</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/spong.html b/www/docs/spong.html
deleted file mode 100755 (executable)
index 9285ccf..0000000
+++ /dev/null
@@ -1,201 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong-server</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="spong-server_name_0"></a>NAME</h1>
-<b>spong</b> - display spong system status from the command line
-<hr>
-<h1>
-<a NAME="spong-server_synopsis_0"></a>SYNOPSIS</h1>
-<b>spong</b> [--summary [hostlist] | --problems [hostlist] | --history
-[hostlist] | --host host | --services host | --stats host
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-| --config host | --info host | --service host:service ] [--brief | --standard
-| --full ]
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_description_0"></a>DESCRIPTION</h1>
-The spong program interfaces with the spong-server to display the collected
-information&nbsp; in text format. The spong program does not have all of
-the functionality of the web-based interface. It's designed to be used
-from character based consoles. The spong program doesn not have to load
-onto the same machine that spong-server is running on. You load this program
-onto any machine. It is a good ideal to load this onto machines, when possible,
-to allow the administrator of the machine to query the spong-servr when
-alert of received.
-<p>When run with any parameters, spong will display a table that lists
-the hosts and services. All of the displays are text based with the legends
-at the top.
-<h2>
-Options</h2>
-
-<dt>
-<b>--summary&nbsp; [hostlist]</b></dt>
-
-<dd>
-&nbsp;Summarize the status of hosts, in hostlist, in a table that lists
-the hosts and services, and the current status is a single letter with
-the meaning defined in the ledgend at the top of the display. If hostlist
-if not specified all hosts defined in spong.hosts are displayed.</dd>
-
-<dt>
-<b>--problems&nbsp; [hostlist]</b></dt>
-
-<dd>
-Shows a summary of all the problems (services that are red) for the all
-the hosts in hostlist. If hostlist is not specified, all hosts defined
-in spong.hosts are displayed.</dd>
-
-<dt>
-<b>--history&nbsp; [hostlist]</b></dt>
-
-<dd>
-Show history information for the the list of hosts in hostlist. If host
-list is not specified, all hosts defined in spong.hosts are displayed.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<dt>
-<b>--host&nbsp; host</b></dt>
-
-<dd>
-Shows all information availiable for the given host.</dd>
-
-<dt>
-<b>--services host</b></dt>
-
-<dd>
-Shows detailed service information for the given host.</dd>
-
-<dt>
-<b>--stats host</b></dt>
-
-<dd>
-Show statistical information for the given host.</dd>
-
-<dt>
-<b>--config host</b></dt>
-
-<dd>
-Shows configuration intomation for the given host.</dd>
-
-<dt>
-<b>--info host</b></dt>
-
-<dd>
-Shows admin supplied text for the given host.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<dt>
-<b>--service host:service</b></dt>
-
-<dd>
-Shows detailed information for the given host/service. The</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<p><b>--brief</b>
-<dd>
-Display output in a brief format</dd>
-
-<dt>
-<b>--standard</b></dt>
-
-<dd>
-Display output in standard format (the default)</dd>
-
-<dt>
-<b>--full</b></dt>
-
-<dd>
-Display the maximum amount of information possible.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_configuration_0"></a>CONFIGURATION</h1>
-By default, spong reads the <a href="spong-server.html#spong-server_usr_local_etc_spong_spong_conf_0">/usr/local/etc/spong/spong.conf</a>
-file which define some specific variables that you probably don't need
-to override.
-<p>By default the&nbsp; <a href="spong-server.html#spong-server_usr_local_etc_spong_spong_conf_0">/usr/local/etc/spong/spong.conf</a>&nbsp;&nbsp;
-file is read on startup. It defines some specific variable that you probably
-don't need to override.
-<p>After reading the configuration fil,&nbsp; it then reads the <i>/usr/local/etc/spong/spong.conf.[host]</i>
-file where [host] 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.
-<dl>Here are a list of variables in the spong.conf file that are applicable
-to the spong-server program:
-<br>&nbsp;
-<dt>
-$<b>SPONGSERVER</b></dt>
-
-<dd>
-The make of the server that spong-server is running on.</dd>
-
-<br>&nbsp;
-<dt>
-<b>$SPONG_QUERY_PORT</b></dt>
-
-<dd>
-The port numbr that spong-server listens at for database queries.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong-server_files_0"></a>FILES</h1>
-
-<dl>
-<dt>
-<a NAME="spong-server_usr_local_etc_spong_spong_conf_0"></a><b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<dd>
-Configuration file. This contains variables that detail spong and OS specific
-definitions used by spong-server. See <i>spong.conf</i> for additional
-documentation.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong-server_dependencies_0"></a>DEPENDENCIES</h1>
-Perl v5.003 or greater is required.
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_bugs_0"></a>BUGS</h1>
-The <b>--stats</b>, <b>--config</b>, and <b>--info</b> parameters are currently
-not implemented in the spong-server. When specified they will just generate
-a blank HTML page..
-<br>
-<hr>
-<h1>
-<a NAME="spong-server_see_0"></a>SEE ALSO</h1>
-&nbsp;<i>spong.hosts</i>, <i>spong.conf</i>
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_author_0"></a>AUTHOR</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<br>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/spong_conf.html b/www/docs/spong_conf.html
deleted file mode 100755 (executable)
index 2577a59..0000000
+++ /dev/null
@@ -1,440 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong.conf</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="name"></a>NAME</h1>
-<b>spong.conf</b> - provides configuration information to spong programs.
-<p>
-<hr>
-<h1>
-<a NAME="description"></a>DESCRIPTION</h1>
-The spong.conf file defines variables that are used by all pieces of spong.
-This file (and if it exists, a host specific spong.conf.&lt;hostname> file)
-gets imported by each of the spong programs. It sets variables representing
-the following information:
-<pre>&nbsp;&nbsp;&nbsp; * Standard package information (servername, port number, file locations)
-
-
-&nbsp;&nbsp;&nbsp; * Service thresholds (how much load is ok, disk space, etc.)
-
-
-&nbsp;&nbsp;&nbsp; * OS specific variables (what df command/options should I use, etc.)</pre>
-<b>Depreciated:</b> The spong.conf file can also contain a <tt>&amp;<i>check_local()</i></tt>
-function that will be run by the spong-client program to monitor some system
-specific service that is not done normally by the spong-client program.
-See the <i><a href="spong-client.html">spong-client</a></i> manpage for
-more details.
-<p>The spong.conf file is simply Perl code that gets imported by each spong
-program, so the only real format restrictions is just what is syntactically
-correct in Perl (which some would say is anything 8-).
-<p>
-<hr>
-<h1>
-<a NAME="standard"></a>STANDARD VARIABLES</h1>
-
-<dl>
-<dt>
-<a NAME="spongsleep"></a><b>$SPONGSLEEP</b></dt>
-
-<dd>
-The amount of time (in seconds) to sleep before checking a service again
-(in the spong-network and spong-client programs). This is also the amount
-of time that the spong-display program sets to automatically refresh the
-web page. If the spong-server has not gotten an updated from a service
-in 2* <a href="#spongsleep">$SPONGSLEEP</a> , it considers that data to
-be ``old'', and sets the color of that service to purple.</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spongserver"></a><b>$SPONGSERVER</b></dt>
-
-<dd>
-The host that at least the spong-server, spong-display, and spong-message
-programs are running on. Typically the spong-network program runs on that
-host as well.</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spongport"></a><b>$SPONGPORT</b></dt>
-
-<dd>
-The port that the spong-server is listening at.</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spongtmp"></a><b>$SPONGTMP</b></dt>
-
-<dd>
-A temporary directory where output from some commands are kept for short
-periods of time. For security reasons, this should probably be something
-other then /tmp, or /var/tmp.</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spongstatus"></a><b>$SPONGDB</b></dt>
-
-<dd>
-The directory on the spong server machine where status report and all other
-infomation for each host is kept. Each category of information has it's
-own subdirectory (i.e. status - services status information, history -
-history files, info - addition information to be displayed on service displays,
-etc.)</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="sponghistory"></a><b>$SPONG_UPDATE_PORT</b></dt>
-
-<dd>
-The port that the spong-server listens at for status updates from clients.</dd>
-
-<dt>
-<b>$SPONG_QUERY_PORT</b></dt>
-
-<dd>
-The port that the spong-server listens at for database queries. This is
-the port that the CGI and command line interface programs use.</dd>
-
-<dt>
-<b>$SPONG_BB_UPDATE_PORT</b></dt>
-
-<dd>
-The port the the spong-server listens at for Big Brother client status
-updates. This spong-server only provides partial Big Brother emulation
-at present. It will only understand status updates,</dd>
-
-<dt>
-<a NAME="www-user-images"></a><b>$WWW_USE_IMAGES</b></dt>
-
-<dd>
-That is a flag to indicate whether you want to use graphic dots for the
-status displays on the web display or use colored text areas. Soem browsers
-seem to have performance problems when display a full windows of the graphic
-dots. If your browsers are having problems, change this value to 0.</dd>
-
-<dt>
-<b>$WWWGIFS</b></dt>
-
-<dd>
-This is the path portion of the URL to where the graphics dot images reside.</dd>
-
-<dt>
-<b>%WWW_COLOR</b></dt>
-
-<dd>
-This hash contains the HTML color codes to be used for the various status
-colors when WWW_USE_IMAGES is 0. There should be entries for "red", "yellow",
-"green", "blue" and "purple".</dd>
-
-<dt>
-<b>$WWWHTML</b></dt>
-
-<dd>
-The full file path to where the '/html' directory of the Spong WWW data
-was installed. It should be the $IWWW directory specified in the <i>build&nbsp;</i>
-installation program plus "/html' (i.e. $IWWW/html). This directory is
-the repository of the online help documentation. You can also specifiy
-customize html headers and footer on the web pages generated (see the <a href="admin-guide.html#header-footer">Administrators
-Guide</a>).</dd>
-
-<dt>
-<b>$WWWSPONG</b></dt>
-
-<dd>
-The full URL to access the <i><a href="www-spong.html">www-spong</a></i>
-CGI program. This URL is used by <i><a href="www-spong.html">www-spong</a></i>
-while generate web pages to provide links to move deeper web pages.</dd>
-
-<dt>
-<b>$WWWACK</b></dt>
-
-<dd>
-The full URL to access the <i><a href="www-spong-ack.html">www-spong-ack</a></i>
-CGI program. This URL is used by <i><a href="www-spong.html">www-spong</a></i>
-to generate links which allow Spong Acknowledgements to be generated.</dd>
-
-<dt>
-<b>$WWWCONTACT</b></dt>
-
-<dd>
-The full URL to a customized CGI program that provide a way of contacting
-staff. www-spong will generate "smart" links depending on the web page
-being displayed. for more information on this feature, please see the <a href="admin-guide.html#custom-contacts">Administrator
-Guide</a>.</dd>
-
-<dt><A NAME="custom-actionbar"></a><b>$WWW_ACTIONBAR_CUSTOM<b>
-
-<dd>
-This parameter can be used to customize the Host/Service displays Action Bar
-of the Web Interface. Any HTML code in this parameter will be included on
-the Web Pages when they are displayed. This parameter is preprocessed by
-<I>eval</i>'ed before the contents is printed. Your can include complex
-perl variables and simple Perl code in this parameter. NOTE: Use single
-quoted to enclose the parameter contents to prevent premature expansion of
-any perl variables defined.
-</dd>
-
-<dt>
-<a NAME="www-refresh-allow"></a><b>@WWW_REFRESH_ALLOW</b></dt>
-
-<dd>
-A list of Perl regular expressions that are checked against the REMOTE_ADDR,
-REMOTE_HOST and REMOTE_USER enviornmental CGI varables. If there is a match
-on any of these variables, <i><a href="www-spong.html">www-spong </a></i>will
-attach a REFRESH meta tag to reload the web pages every <b><a href="#spongsleep">$SPONGSLEEP</a></b>
-seconds. See the <a href="admin-guide.html#autorefresh">Administrator Guide</a>
-for more details.</dd>
-
-<dt>
-<a NAME="www-refresh-deny"></a><b>@WWW_REFRESH_DENY</b></dt>
-
-<dd>
-A list of Perl regular expressions that are checked against the REMOTE_ADDR,
-REMOTE_HOST and REMOTE_USER enviornmental CGI varables. If there is a match
-on any of these variables, <i><a href="www-spong.html">www-spong </a></i>will
-NOT attach a REFRESH meta tag. User's must use the Reload/Refresh button
-on their web broswer to update the Spong&nbsp; web pages. See the <a href="admin-guide.html#autorefresh">Administrator
-Guide</a> for more details.</dd>
-
-<br>&nbsp;</dl>
-
-<hr>
-<h1><a name="spong-cleanup"></a>SPONG CLEANUP VARIABLES
-
-<dl>
-<dt><b>$SPONG_ARCHIVE</b>
-
-<dd>
-The directory where to put old history file entries for each host. Each host have it's own file in this directory
-</dd>
-
-<dt><b>$OLD_HISTORY</b>
-
-<dd>This is the number of days of history to keep for each host in the
-spong-server database. Any old history is append to the file for the host under
-the <b>$SPONG_ARCHIVE</b> directory.
-</dd>
-
-<dt><b>$OLD_SERVICE<b>
-
-<dd>This is the number of days to retain stale service status (i.e. purple
-status) entries in the spong-server database. Any service service status
-entries older than <b>$OLD_SERVICE</b> days old are deleted from the
-database.
-</dd>
-
-</dl>
-
-<hr>
-<h1>
-<a NAME="service-threshold"></a>SERVICE THRESHOLD VARIABLES</h1>
-
-<dl>
-<dt>
-<a NAME="dfignore"></a><b>@DFIGNORE</b></dt>
-
-<dd>
-A list of regular expression strings that are matched against the raw file
-system names. If matched, then that file system is ignored. For example,
-having ``:'' in this list will cause NFS file system mounts to be ignored.</dd>
-
-<br>&nbsp;
-<dt>
-<b>%DFWARN</b>, <b>%DFCRIT</b></dt>
-
-<dd>
-&nbsp;A hash of file systems (or the word ``ALL''), and the percentage
-that should trigger a problem (<b>%DFWARN</b> triggers warnings - yellow,
-and <b>%DFCRIT</b> triggers alerts - red). If a file system is not explicitly
-listed in this hash then it will fall back to the value of the ``ALL''
-entry.</dd>
-
-<br>&nbsp;
-<dt>
-<b>$CPUWARN</b>, <b>$CPUCRIT</b></dt>
-
-<dd>
-&nbsp;A number indicating the CPU load that triggers a problem (<b>$CPUWARN</b>
-triggers warnings - yellow, and <b>$CPUCRIT</b> triggers alerts - red).</dd>
-
-<br>&nbsp;
-<dt>
-<b>@PROCSWARN</b>, <b>@PROCSCRIT</b></dt>
-
-<dd>
-&nbsp;A list of processes that should be running, if they are not running,
-then trigger a problem (processes in <b>@PROCSWARN</b> trigger a warning
-- yellow, and processes in <b>@PROCSCRIT</b> trigger an alert - red).</dd>
-
-<br>&nbsp;
-<dt>
-<b>$LOGCHECKS</b></dt>
-
-<dd>
-A list of hashes which defined checks to apply to log files. Each hash
-contains the fields <b>logfile</b> which is the full path to the log file
-to check and <b>checks</b> whch&nbsp; is a list of check to apply to the
-log file. Each check is a hash that contains the fields: <b>pattern</b>
-- a Perl regular expression to be scanned for, <b>status</b> - the status
-color to reported lines matching pattern, duration - the duration that
-each event is to be reported to the server, <b>text </b>- the text to reported
-back in the detailed message field of the status report (which can include
-match position variables from <b>pattern</b>) and <b>id</b> - an optional
-key field to associated with each event generated.&nbsp; See the <i><a href="check_logs.html">check_logs</a></i>
-documentation for more information and examples.</dd>
-
-<br>&nbsp;
-<dt>
-<b>%HTTPDOCS</b>, <b>%HTTPPORT</b></dt>
-
-<dd>
-These variables provide some parameters when checking http based servers.
-The <b>%HTTPDOCS</b> variable is keyed by host (or the string ``ALL'' for
-all hosts), and contains as a value, a list of documents to check on that
-host. The default setting is to search for the ``/robots.txt'' file on
-all hosts.</dd>
-
-<dd>
-The <b>%HTTPPORT</b> variable contains the port number that web server
-on a given host is running on. By default the value is 80, but this can
-be overridden on a host by host basis</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spong.conf_send_message_0"></a><b>$SEND_MESSAGE</b></dt>
-
-<dd>
-$SEND_MESSAGE defines when <b>spong-message</b> is called by spong-server.
-This variable can contain one of four valid values. If it is ``RED'', then
-<b>spong-message</b>
-is called for every time a system or service reports a problem. If its
-value is ``CHANGE'', then <b>spong-message</b> is only called when there
-is a change of state . If this values is "RED-CHANGE", then <b>spong-message</b>
-is called&nbsp; everytime a system of service reported a problem and when
-the condition is cleared. (going from green/yellow to red, and then again
-going from red to green/yellow). If its value is ``NONE'', then <b>spong-message</b>
-is never called.</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spong.conf_message_per_hour_0"></a><b>$MESSAGE_PER_HOUR</b></dt>
-
-<dd>
-This is the maximum number of messages that are sent to the same person
-in an hour. All message past this number are just logged to the history
-file, but are not sent. This helps to prevent against message overload
-such as when you have a networking problem, and everything appears to go
-red at once. The default value is 5.</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spong.conf_ident_messages_per_hour_0"></a><b>$IDENT_MESSAGES_PER_HOUR</b></dt>
-
-<dd>
-This is the maximum number of identical messages that are sent to the same
-person in an hour. The default value is 3.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong.conf_os_0"></a>OS SPECIFIC VARIABLES</h1>
-
-<dl>
-<dt>
-<b>$DF</b>, <b>$UPTIME</b>, <b>$PS</b>, <b>$GREP</b>, <b>$PING</b>, <b>$TRACEROUTE,
-$MAILQ</b></dt>
-
-<dd>
-These variables are OS specific variables, which are hopefully set correctly
-for your machine, if they are not - please send me email letting me know
-what OS you are running on, and what the correct value should be.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong.conf_functions_0"></a>FUNCTIONS</h1>
-DEPRECIATED:&nbsp; <i><a href="spong-client.html">spong-client</a></i>
-checks are now modules. See <a href="developer-guide.html#client-modules">Client
-Modules</a> in the <a href="developer-guide.html">Developer Guide</a> documentation.
-<br>&nbsp;
-<p>You can defined a <tt>&amp;<i>check_local()</i></tt> function in the
-spong.conf file that will be run by the spong-client program. This function
-can be used to extend the functionality of spong-client, and allow you
-to check on some service beyond the four (disk, cpu, procs, logs) that
-spong-client already checks.
-<p>Here is an example <tt>&amp;<i>check_local()</i></tt> function that
-we run on some of our machines to check to make sure that our sendmail
-mail queue is not getting too large.
-<pre>&nbsp;sub check_local {
-&nbsp;&nbsp;&nbsp; my $color&nbsp;&nbsp;&nbsp; = "green";
-&nbsp;&nbsp;&nbsp; my $summary&nbsp; = ""
-&nbsp;&nbsp;&nbsp; my $rt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = `mailq | head -1`;
-
-&nbsp;&nbsp;&nbsp; chomp $rt;
-
-&nbsp;&nbsp;&nbsp; if( $rt =~ /\((\d+) request/ ) {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $items = $1
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if( $items > 1000 )
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "red";
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } elsif( $items > 500 ) {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "yellow";
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $summary = "$items messages in the mail queue";
-
-&nbsp;&nbsp;&nbsp; } else {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $color = "yellow";
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $summary = "Can't parse mailq output: $rt";
-&nbsp;&nbsp;&nbsp; }&nbsp;
-
-&nbsp;&nbsp;&nbsp; &amp;status( $SPONGDISPLAY, $HOST, "local", $color, $summary, "" );
-&nbsp;}</pre>
-
-<hr>
-<h1>
-<a NAME="files"></a>FILES</h1>
-
-<dl>
-<dt>
-<a NAME="spong_conf-file"></a><b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<dd>
-This is the standard spong.conf file that is read by all spong programs.</dd>
-
-<br>&nbsp;
-<dt>
-<a NAME="spong_conf_host"></a><b>/usr/local/etc/spong/spong.conf.[host]</b></dt>
-
-<dd>
-This is a spong.conf file that if it exists on a given host, it will be
-read after the standard spong.conf file is read. Since the configuration
-files are just Perl code, anything you set in the host specific spong.conf
-file will override the standard configuration file. ``host'' can be either
-the full hostname of the machine you are running on (strobe.weeg.uiowa.edu),
-or just the name minus the domain (strobe). It looks for the full name
-first, and then if it can not find it - it looks for the shorter name.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong.conf_see_0"></a>SEE ALSO</h1>
-the <i>perl</i> manpage , the <i>spong-server</i> manpage , the <i>spong-network</i>
-manpage , the <i>spong-client</i> manpage , the <i>spong-display</i> manpage
-, the <i>spong-message</i> manpage , <i>spong.hosts</i>
-<p>
-<hr>
-<h1>
-<a NAME="author"></a>AUTHOR</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<br>Stephen L Johnson (stephen.johnson@mail.state.ar.us) or (sjohnson@monsters.org),
-Unix System Administator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/spong_hosts.html b/www/docs/spong_hosts.html
deleted file mode 100755 (executable)
index 21f4784..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong.hosts</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="spong.hosts_name_0"></a>NAME</h1>
-<b>spong.hosts</b> - define hosts and services to monitor
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_description_0"></a>DESCRIPTION</h1>
-The spong.hosts file defines two things. 1) What hosts you want to monitor
-(and the attributes associated with each host), and 2) What humans should
-be contact when a given host has problems (and the attributes associated
-with each human).
-<p>Each host should have the following attributes associated with it:
-<pre>&nbsp;&nbsp;&nbsp; * services&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; the network services running on that host
-
-
-</pre>
-Optionally, the follow attributes can also be assigned to a host:
-<pre>&nbsp;&nbsp;&nbsp; * down&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; time period the host is scheduled down, problems
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; are not reported during this time.
-
-&nbsp;&nbsp;&nbsp; * ip_addr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of ip addresses corresponding to multiple&nbsp;
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; interfaces the machine might have.
-
-
-</pre>
-The services is a string listing the valid services seperated by spaces.
-Currently, valid services are ``dns'' (if you have the Net::DNS Perl module
-installed), ``ftp'', ``smtp'', ``http'', ``imap'', ``pop3'',&nbsp; ``nntp'',&nbsp;
-``nfs'',&nbsp; ``ntp'' and``ssh'' although more checks will be added in
-the future. The can include any addition network checks that you have developed
-(see <b><a href="spong-network.html">spong-network</a></b> for more details)
-. Any host listed is automatically checked for network connectivity (via
-ping).
-<p>The down attribute is a list of ``downtimes''. It is a list (well reference
-to one anyway) of one or more strings in the following format - ``d:hh:mm-hh:mm''.
-``d'' is the day of the week (0-6, 0 = Sunday, 6 = Saturday), if ``d''
-is ``*'', then every day of the week is matched. The string to the right
-of the day is the start and end time of the down time in 24 hour format
-<p>The ip_addr attribute is a list (well reference to one anyway) of IP
-address that the machine responds to.
-<p>Each human that is defined should have the following attributes associated
-with it:
-<pre>&nbsp;&nbsp;&nbsp; * name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name of the person to contact</pre>
-And one or more of the following attributes assigned to each human for
-messaging when there are problems
-<br>&nbsp;
-<pre>&nbsp;&nbsp;&nbsp; * email&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; email address
-
-&nbsp;&nbsp;&nbsp; * skytel&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; skytel pager number
-
-&nbsp;&nbsp;&nbsp; * alltelsms&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; phone number of a phone subscribered to Alltel Communications SMS service.
-
-&nbsp;&nbsp;&nbsp; * teletouch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; teletouch pager number
-
-&nbsp;&nbsp;&nbsp; * teletouch_short&nbsp;&nbsp; teletouch pages numer for small alpha pagers</pre>
-&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<p>These attributes are messaging functions for sending out notifictions
-to people. All of the messing methods are message modules that are load
-by the spoing-message as a plugin.&nbsp; The attributes listed above are
-the message functions that are part of the current Spong distribution.
-New messaging modules can be easily be developed (see the <b><a href="spong-message.html">spong-message</a></b>
-manual and the <a href="developer-guide.html#modules">Developer Guide</a>
-for more details).
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_format_0"></a>FORMAT</h1>
-The spong.conf file is simply Perl code that gets imported by each spong
-program, so the only real format restrictions is just what is syntactically
-correct in Perl (which some would say is anything 8-).
-<p>What is expected in this file are the definitions for two hashes of
-hashes (in Perl speak). The <b>%HOSTS</b> hash, and the <b>%HUMANS</b>
-hash. If you are not comfortable with Perl lingo, then just think of them
-as stanza definitions.
-<p>First, the HUMANS. The following describes the <b>%HUMANS</b> hash.
-<pre>&nbsp;&nbsp;&nbsp; %HUMANS = ( [stanza], [stanza], [stanza] );</pre>
-where [stanza] is a second hash, that looks like the following:
-<pre>&nbsp;&nbsp; 'unix-staff' =>&nbsp;&nbsp;&nbsp; { name&nbsp; => 'Midrange On-call Staff',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; email => 'its-unix@uiowa.edu',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; skytel => '1234567' },</pre>
-What this says is that the 'unix-staff' human has the following attributes
-(name = Midrange On-call Staff, email = <a href="MAILTO:its-unix@uiowa.edu">its-unix@uiowa.edu</a>,
-skytel = 1234567).
-<p>Now, the HOSTS. The following describes the <b>%HOSTS</b> hash.
-<pre>&nbsp;&nbsp;&nbsp; %HOSTS = ( [stanza], [stanza], [stanza] );</pre>
-where [stanza] is a second hash, that looks like the following:
-<pre>&nbsp;&nbsp;&nbsp; 'www.uiowa.edu' =>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { services => 'ftp smtp http',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ip_addr&nbsp; => ['192.168.15.2','10.2.124.200'],</pre>
-
-<pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; down&nbsp;&nbsp;&nbsp;&nbsp; => [ '*:0015-0030','6:23:00-23:59'] }</pre>
-What this says is that the 'www.uiowa.edu' host has the following attributes
-(services = ftp smtp http; ip address=192.168.15.2 and 10.2.124.200;&nbsp;
-and down time of 12:15AM-12:30AM every day and from 11:00PM-12:00PM on
-Saturdays).
-<p>I know the format can be a little odd at first, but I chose it because
-of both its simplicity to work with in the code (I don't have to parse
-anything - Perl does all the work), and because it is easy to extend -
-adding additional attributes is quite straightforward.
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_examples_0"></a>EXAMPLES</h1>
-Here are some lines from our spong.hosts file to show you possible configurations.
-<pre>&nbsp;%HUMANS = (
-
-&nbsp; 'unix-staff' =>&nbsp;&nbsp;&nbsp; { name&nbsp; => 'Midrange On-call Staff',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; email => 'its-unix@school.edu',
-
-&nbsp;
-
-&nbsp; 'edhill' =>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { name&nbsp; => 'Ed Hill',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; email => 'ed-hill@school.edu',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; skytel => '1234567' },
-
-&nbsp;);
-
-&nbsp;%HOSTS = (
-
-&nbsp; 'strobe.weeg.school.edu' =>&nbsp;&nbsp; { services => 'dns ftp smtp http',
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ip_addr&nbsp; => [ '128.255.1.3',&nbsp;
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; '128.255.64.3' ],
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; down&nbsp;&nbsp;&nbsp;&nbsp; => [ "*:05:30-06:30",
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "0:00:00-04:00 ] },
-
-&nbsp; 'www.school.edu' =>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { services => 'ftp smtp http' },
-
-&nbsp;);
-
-
-
-
-</pre>
-
-<h1>
-
-<hr WIDTH="100%">COMPATABILITY</h1>
-In a future release of spong the %HUMAN configuration information will
-be moved into the spong.message configuration file. It is currenly being
-retained in the spong.hosts file for compatability.
-<br>
-<hr>
-<h1>
-<a NAME="spong.hosts_see_0"></a>SEE ALSO</h1>
-the <i>spong-server</i> manpage , the <i>spong-network</i> manpage , the
-<i>spong-message</i> manpage
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_author_0"></a>AUTHOR</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<br>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/spong_message.html b/www/docs/spong_message.html
deleted file mode 100755 (executable)
index 06b145d..0000000
+++ /dev/null
@@ -1,233 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong.hosts</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="spong.hosts_name_0"></a>NAME</h1>
-<b>spong.message</b> - define rules on how and when to send messages
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_description_0"></a>DESCRIPTION</h1>
-The spong.message file defines the rules that spong-messge program used
-for notifications. The rules consist of attributes which define crieria
-which events are matched against and a list of contacts to notifiy if all
-of the matching criteria are met.
-<p>Each rule should have more of more of the following matching criteria
-attributes:
-<pre>&nbsp;&nbsp;&nbsp; * hosts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of hosts to match
-
-&nbsp;&nbsp;&nbsp; * host_groups&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of hosts groups to match
-
-&nbsp;&nbsp;&nbsp; * services&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of services to match
-
-&nbsp;&nbsp;&nbsp; * exclude_hosts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of hosts to exclude
-
-&nbsp;&nbsp;&nbsp; * exclude_services&nbsp;&nbsp; a list of services to exclude
-
-&nbsp;&nbsp;&nbsp; * exclude_host_groups&nbsp;&nbsp; a list of host groups to exclude
-
-&nbsp;&nbsp;&nbsp; * times&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of days/times to match</pre>
-And each rule must have the following attributes:
-<pre>&nbsp;&nbsp;&nbsp; * contacts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a list of contacts to notify</pre>
-The hosts are a list of host names that are matched against the host name
-parameter passed to spong-message.
-<p>The services are a list of services that are matched against the service
-parameter passwd to spong-message.
-<p>The exclude_hosts are a list of host names that are be excluded from
-matching the rule.
-<p>The exclude_services are a list of services that are to be excluded
-from matching the rule.
-<p>The times are a list of stanzas the have days of the week and/or time
-ranges to match against the time parameter passed to spong-message. Each
-times stanza can have a days and/or a times attribute which are lists of
-days and times ranges to be matched.
-<p>The days attribute are a list of strings with the following format -
-'d' or 'd-d'. Where d is the day of the where (0-6, 0=Sunday, 6=Staurday).
-And 'd-'d represents a range of days (i.e. 1-5 = Monday - Friday).
-<p>The times attribute are a list of string with the following format -
-'hh:mm-hh:mm'. This is a starting and ending time of a time range in 24
-hour format.
-<p>Each of the elements of the hosts, services, exclude_hosts, and exclude_services
-are actually Perl regular expressions. You can use wide cards to specify
-who groups of hosts or services to match.
-<p>The down attribute is a list of ``downtimes''. It is a list (well reference
-to one anyway) of one or more strings in the following format - ``d:hh:mm-hh:mm''.
-``d'' is the day of the week (0-6, 0 = Sunday, 6 = Saturday), if ``d''
-is ``*'', then every day of the week is matched. The string to the right
-of the day is the start and end time of the down time in 24 hour format
-<p>The contacts is a list of stanzas representing the contacts to notify
-if the all of the rules' matching criteria are met. Each stanza can be
-a string or a contact stanza.&nbsp; The strings can be one of the following
-formats - 'human' or 'human:func' where human is a strings represent an
-entry from the %HUMANS defined in <a href="spong_hosts.html#humans">spong.hosts</a>
-and func is one of the message functions attributes defined for that human.
-<p>A contact stanza can must have a rcpt attribute which is a strings are
-defined above. It can optiionally can have a delay and/or a repeat attributes.
-The delay attribute is the duration, in seconds, that an event must have
-before the rcpt is notified. The repeat is the time interval, in seconds,
-in which notifications are resent once an initial notification is sent.
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_format_0"></a>FORMAT</h1>
-The spong.message file is simply Perl code that gets imported by each spong
-program, so the only real format restrictions is just what is syntactically
-correct in Perl (which some would say is anything 8-).
-<p>What is expected in this file are the definition for the $<b>MESSAGING_RULES,</b>&nbsp;
-and <b>$RULES_MATCH</b> which determines how the rules are processed..
-If you are not comfortable with Perl lingo, then just think of them as
-stanza definitions.
-<pre>&nbsp;&nbsp;&nbsp; $MESSAGING_RULES = [ [stanza], [stanza], [stanza] ];</pre>
-where [stanza] is a second hash, that looks like the following:
-<pre>&nbsp;&nbsp;&nbsp; { hosts => [ 'unixweb', '.*-ops.cic.myschool.edu', 'steves-pc' ]
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; services => [ '.*' ],
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_hosts => [ 'backup-ops.cic.myschool.edu'],
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_services => [ 'dns', 'ssh'],
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; times => [
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; days=> ['0','1-3','4-5'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; times=> ['06:30-18:30','21:00-22:00'
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { days => ['5','6','0-2'] },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { times => ['13:00-15:23','00:00-23:39'] },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ],
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contacts => [ 'ops', 'sjohnson:email',
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { rcpt=>'sjohnson:teletouch', delay=>900, repeat=>600 },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { rcpt=>'the_supervisor:teletouch',
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; delay=3600, repeat=>1800 },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { rcpt=>'the_boss', delay=>7200, repeat=>3600 },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ],
-&nbsp;&nbsp;&nbsp; },</pre>
-The <b>$RULES_MATCH</b> variable has three possible values: <b>OLD</b>
-- Use Spong ver 2.1 messaging. Send notification the human defined in the
-contact attibute for the host name of the message. <b>FIRST-MATCH</b> -
-Rules are checked in order until the first one that matches. <b>ALL</b>
-- Rules are checked into order. All rules that match are processed.
-<p>I know the format can be a little odd at first, but I chose it because
-of both its simplicity to work with in the code (I don't have to parse
-anything - Perl does all the work), and because it is easy to extend -
-adding additional attributes is quite straightforward.
-<br>
-<hr WIDTH="100%">
-<h1>
-<a NAME="logic"></a>MATCHING LOGIC</h1>
-The primary factor of how spong.message rules are processed depends upon
-the vaule of <b>$RULES_MATCH.</b> If set to&nbsp; 'OLD'&nbsp; then the
-rules are not used at all. <b><a href="spong-message.html">spong-message</a></b>
-reverts back to it Spong version 2.1 behaviour. Notify the human defined
-in the contact attribute of the <b>%HOSTS</b> entry for the host. If set
-to 'FIRST-MATCH' then the rules are check in order until the first rule
-matching the event parameter is. spong-message will then begin notification
-processing. If <b>$RULES_MATCH</b> is set to 'ALL' then al of the rules
-are scan in order. The contacts of all matching rules are adding to the
-list of&nbsp; recipients that will be notified.
-<p>All of the matching attributes except for <b>exclude_hosts</b> and <b>exclude_services</b>
-have an automatic match if absent property. For example, if the <b>hosts</b>
-<br>attribute is missing from a rule, that rule will match any host name.
-The <b>exclude_hosts</b> and <b>exclude_services</b> have a slightly different
-matching behaviour man the other matching attributes, if there is a match
-against either of them, the rule will not match even if all of the other
-matching attreibute match. For example, if a rules has <b>hosts => [ '.*.cic.my-company',&nbsp;
-'.*.corp.my-company.com' ]</b> and <b>exclude_hosts[ 'my-pc' ]</b> , a
-host name of 'my-pc.corp.my-company.com' will not match against this rule
-because of the host name matches the <b>exclude_hosts</b> attribute
-<p>The <b>times</b> attribute's subattribues, <b>days</b> and <b>times</b>
-, have the automatic match if absent property. If one of the sub-attributes
-is missing from a stanza any check against that attribute will succeed.
-That is <b>days</b> is missing from the stanza, any day of the week will
-match againast the stanza. If the <b>times</b> sub-attribute is missing,
-the stanza matches against any time.&nbsp; A <b>times</b> attribute match
-succeeds if any stanza of the attribute matches.
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_examples_0"></a>EXAMPLES</h1>
-Here are some lines from our spong.hosts file to show you possible configurations.
-<pre>$MESSAGING_RULES = [
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Franks Notifications
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Let him know about if it has been down for 30 minute or more.
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hosts => [ '.*' ],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; services => [ '.*' ],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contacts => [ {rcpt=>'fsipes', delay=>1800}, ],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_hosts&nbsp;&nbsp; => ['tunixt'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_services => ['test'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Let Dwayne in Engineering know when a system does down and dns problems&nbsp;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # except for the test box
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hosts => ['.*'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; services => ['ping','ftp','smtp','dns'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_hosts&nbsp;&nbsp; => ['tunixt'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contacts => [ 'dstucker' ],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Let me know about everything except the test box except late at
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # night
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hosts => ['.*'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; services => ['.*'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_services => ['nntp','ntp'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_hosts&nbsp;&nbsp; => ['tunixt'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contacts&nbsp;&nbsp;&nbsp; => ['sjohnson'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; times => [&nbsp;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { times => ['06:00-21:00'] },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },
-
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Notify the unix oncall pager about the k12 systems after hours
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # during week days and anytime on the weekend and repeat them
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # every 15 minutes until acknowledged
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hosts => ['.*.k12.ar.us'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; services => ['.*'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_services => ['nntp','ntp'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exclude_hosts&nbsp;&nbsp; => ['tunixt'],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contacts&nbsp;&nbsp;&nbsp; => [ { rcpt=>'unix-oncall:teletouch', repeat=>900}, ],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; times => [&nbsp;
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { days => ['1-5'], times => ['17:00-23:59','00:00-08:00'] },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { days => ['0','6'] },
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ],
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },
-
-&nbsp; ];
-
-</pre>
-
-<hr WIDTH="100%">
-<h1>
-COMPATABILITY</h1>
-To use Spong version 2.1 message and messaging configurations set <b>$RULES_MATCH</b>
-to 'OLD'. If <b>$RULES_MATCH</b> is not defined it will default to 'OLD'.
-<br>
-<hr>
-<h1>
-<a NAME="spong.hosts_see_0"></a>SEE ALSO</h1>
-the
-<i>spong-message</i> manpage
-<p>
-<hr>
-<h1>
-<a NAME="spong.hosts_author_0"></a>AUTHOR</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<br>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>
diff --git a/www/docs/todo.html b/www/docs/todo.html
deleted file mode 100755 (executable)
index 49d93f3..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<html>\r
-<head>\r
-<title>Spong v2.x - Todo List</title>\r
-</head>\r
-<body>\r
-\r
-<h1>Spong - Todo List</h1>\r
-<hr>\r
-\r
-Here are the features/changes that I and others want to make to spong.  They\r
-are in no particular order,  If you have any suggestions or comments, send\r
-email to <a href="mailto:sjohnson@monsters.org">sjohnson@monsters.org</a>. <p>\r
-\r
-<ul>\r
-\r
-<li>Make web interface more configurable: (user selectable backgroup colors/\r
-method, table shading scheme)\r
-\r
-<li>Add option to use style sheets on Web Interface.\r
-\r
-<li>Client support (spong-client) for NT\r
-<li>Server support (spong-server, spong-network, spong-display) support for NT\r
-\r
-<li>Make spong-network more parallel, have it perform checks from a pool of\r
-children, that way if a system can not be pinged - it will not slow up the rest\r
-of the checks.\r
-\r
-<li>Make spong-network check more often on hosts that do not respond on the\r
-first try\r
-\r
-<li>Add some limited event correlation to spong-network to not report service\r
-problems is a parent router/swith is unreachable.\r
-\r
-<li>Optimize the communication between client and server - by pipelining\r
-reports through a single channel and perhaps compressing the data before\r
-sending it.\r
-\r
-<li>Make it so that you can click on a host and find out status, history, \r
-configuration (inventory), and statistics. (starting to branch out).\r
-\r
-<li>Integrate gstats (statistics collection) program. "spong-stats" (Ed Hill)\r
-<li>Add an inventory/configuration module. "spong-config"\r
-\r
-<li>Continue modularizing to move towards Object Oriented as much as possible.\r
-\r
-<li>Add control ports to spong-client,spong-network, and spong-server to\r
-ultimately allow the programs to be control and configured remotely\r
-\r
-<li>Add stats package to record and display status update inforation in\r
-RRD Tool databases. "spong-rrd" (In progress, alpha status)\r
-\r
-<li>Incorporate OpenSSL into the Client<->Server connections as an option.\r
-\r
-<li>Upgrade spong-message to allow messages to be customizable via a user defined template.\r
-\r
-</ul>\r
-<hr>\r
-Most recently updated on Jan. 27, 2000 by\r
-Stephen L Johnson\r
-(<a href="mailto:sjohnson@monsters.org">sjohnson@monsters.org</a>)\r
-</BODY>\r
-</HTML>\r
diff --git a/www/docs/user-guide.html b/www/docs/user-guide.html
deleted file mode 100755 (executable)
index b412805..0000000
+++ /dev/null
@@ -1,273 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-</head>
-<body>
-
-<h1>
-<a NAME="name"></a>NAME</h1>
-<b>user-guide</b> - a user's guide to using Spong
-<br>
-<hr WIDTH="100%">
-<h1>
-<a NAME="description"></a>DESCRIPTION</h1>
-This the user's guide to using spong. It has an overview of the operation
-of the whole system and how the user fits into the scheme of things.&nbsp;
-Spong acknowledgements, the web-base user interface and the character based
-interfaced will be covered in detail.
-<br>&nbsp;
-<h1>
-<a NAME="overview"></a>SPONG OVERVIEW</h1>
-&nbsp;
-<h1>
-<a NAME="web-interface"></a>WEB USER INTERFACE</h1>
-The initial Spong web displays comes up with page with two frames.&nbsp;
-The left&nbsp; Dommand frame is a summary of any hosts that have any problems
-(i.e. any service that is red.) The right Display frame displays a table
-of the group All (e.g. All Servers) that lists hosts and services.
-<br>&nbsp;
-<h2>
-<a NAME="status-colors"></a>Status Colors</h2>
-Though out many of the displays the status of a host or a services is expressed
-as a color. This is a list of the colors and their meaning.
-<dl>
-<dt>
-GREEN</dt>
-
-<dd>
-For a service, green means that it is responding normally, or it is within
-normal parameters. For a host, green means that all services are OK and
-there are active acknowledgements or over-due service status reported.</dd>
-
-<dt>
-YELLOW</dt>
-
-<dd>
-For a service, yellow generally means that something minor is wrong and
-may need attention, or a parameter is slightly out of bounds. For a host,
-yellow mean that one or services are at a warning status.</dd>
-
-<dt>
-RED</dt>
-
-<dd>
-For a service, red means that is something is critically wrong for a service,
-such as a network serice not responding or a parameter is radically out
-of bounds. For a host, red means that one or more services are at a critcal
-status.</dd>
-
-<dt>
-PURPLE</dt>
-
-<dd>
-For a service, purple means it's status report is overdue. The last time
-that the service has been updated is too old. this can be due to network
-problems or a spong monitoring program has stopped for some reason. For
-a host, is means that one of more service status reports are over due.</dd>
-
-<dt>
-BLUE</dt>
-
-<dd>
-For hosts and services, this means that there is an active acknowledgment
-on the service or host. While a service is acknowledged, no notifications
-will be sent to, but events will still be written to the history log file.</dd>
-</dl>
-
-<h2>
-Command Frame</h2>
-The left Command frame is divided 5 sections from top to bottom: Title,
-Action Bar, Main Section (problem host list), Host Group selector and Last
-Update.
-<h3>
-Title</h3>
-The section is simple the title Spong and the version numer of the server.
-<h3>
-Action Bar</h3>
-The section under the title section is the Command action bar. The <i>Ack</i>
-link will bring up the <b><a href="www-spong-ack.html">www-spong-ack</a></b>
-CGI program in the Display frame. The page allows your to display, delete,
-or create Spong Acknowledgements. The <i>Summary</i> link brigs up the
-host summary table of the currently select Host Group in the Display frame.
-The <i>History</i> link displays the event history for all of the hosts
-in the current Host Group. And the <i>Help</i> link will the Spong HTML
-documentation.
-<h3>
-Main Section</h3>
-The main section of the Command frame is a list of all of the hosts that
-have any problems (e.g. services that are red).&nbsp; If&nbsp; there are
-no reported problems then this section will have "No Current Problems"
-in green letters. If there are problems then a list of hosts will be displayed
-along with name of the services that has the problem. The last date/time
-that the service was updated and, is defined. A contact responsible for
-the host.
-<p>The <i>host name i</i>s a link that will bring up the full status display
-for the host in the Display frame. The <i>problem</i> field under the host
-name is a to service display page for that host. it will be displayed on
-the Display Frame. The <i>updated</i> field is the date and time that the
-status of that service updated. The <i>contact</i> if a link that will
-bring up a custom CGI program that will allow you to send a message to
-the people responsible that host.
-<h3>
-Group Section</h3>
-The Host Group section allows to select which group of hosts that your
-want to display in the <i>Summary</i> and <i>History</i> displays. This
-title to the right of the <i>Group</i> link is the currently selected Host
-Group. Selecting the <i>Group</i> link brings up the Spong Group display
-in the Display frame. On top of page of a list of all of the predefined
-Host Group defined along with the show group name and a summary description
-of the group.
-<p>If you click the <i>group name</i> link, you change the group of hosts
-that you are monitoring. The web browser window will be redrawn to reflect
-the new groups hosts. At the bottom of the <i>Spong Groups</i> display
-is a section that allows your to select a custom of hosts to monitoring.
-Your select all of the hosts that you want to be in your custom group from
-the list of hosts. Then clock in the <i>Show Hosts</i> button to redraw
-the browser window and display the your custom group of hosts.
-<h3>
-Last Update</h3>
-The time stamp section at the bottom is the date and time that the entire
-left frame was last updated. If refreshing is allowed by you or your system,
-the frame will be automatically reload every <b><a href="spong_conf.html#spongsleep">$SPONGSLEEP</a></b>
-seconds
-<br>&nbsp;
-<h2>
-Display Frame</h2>
-The right frame is the Display Frame. It is used to display various informational
-displays and forms.&nbsp; The default display is the <i>Group Summary</i>
-of the currentl selected group of hosts. Most of the sub-pages have an
-action bar.
-<h3>
-Action Bar</h3>
-The <i>Action Bar</i> on displays is directly under the title at the top
-of the page. The <i>Connect to Host</i> link will start a telnet session
-to the host if clicked. The <i>Acknowledge Problem</i> link will bring
-up the <b><a href="www-spong-ack.html">www-spong-ack</a></b> CGI program
-Display. The Host and Service fields will be filled in (if possible).&nbsp;
-The C<i>ontact Help</i> is a link that will bring up a custom CGI program
-that will allow you to send a message to the people responsible that host.
-<h3>
-Group Summary Display</h3>
-The Group Summary Display is a table that lists the hosts and services
-of the current selected group of hosts. The name of the selected group
-is displayed at the top of the display. Each host is a row in the table
-with services being the columns of the table. The current status of each
-service is a colored block or a icon depending on how spong-service is
-configured (see&nbsp; <b><a href="spong_cong.html#www-user-images">$WWW_USE_IMAGES</a></b>
-in
-<b><a href="spong_config.html">spong.conf</a></b>). The status's are
-represented by the color: RED - critical, YELLOW - warning, GREEN - normal,
-PURPLE - status is output of date, BLUE - service has active acknowledgement,
-NOTHING - service is not checked.
-<p>The host name in the first column is a link to <i>Host Services</i>
-display the host. The service names in the first row of the table are links
-to Help page for that service. The Help page has a description of the service
-and the ramifications if the service is in a warning or critical status.
-The service status colored block or icon is a link to the <i>Service Status</i>
-display for the host/service.
-<h3>
-Host Services Display</h3>
-This display shows most of the avaliable information abou the host. The
-display is divided into serval sections. From top to bottom they are :
-<i>Title</i>
-(Host Name), <i>Action Bar</i>, <i>Overall Status</i>, <i>Acknowledgements</i>,
-<i>Services
-Table</i>, <i>Information</i>,
-<i>History</i>.
-<h4>
-Title</h4>
-The is the name of the Host being displayed.
-<h4>
-Action Bar</h4>
-The <i>Action Bar</i> is discussed above.
-<h4>
-Overall Status</h4>
-This a bar this displays the current overall status of the host. The over
-status is the highest order color of all of the service status's according
-to the following hierchy: BLUE, RED, YELLOW, GREEN, PURPLE.
-<h4>
-Acknowledgements</h4>
-If there are any Acknowledgements for the host they will be listed here.
-Each acknowledgement will have the service that is acknowledged, the expiration
-date, and the message. There is a <i>Delete</i> link for each acknowledgement
-also which will delete the acknowledgment when clicked.
-<h5>
-Services Table</h5>
-This is a summar table of all of the services that is checked on this host.
-The table lists the service name, the current status of the service (colored-block
-or icon) , the time (in 23 hour format) of the last update, and the summary
-message of message status. The service name and the current status colored-block/icon
-are links that will bring of the <i>Service Status</i> display for the
-service.
-<h4>
-Information</h4>
-If there is any addition information defined for the host, it will be displayed
-in this section. This information is unique to each host. There can be
-a description of the functions of the host, embeded image or links to other
-information sources. For further information see the <b><a href="admin-guide.html">Administator
-Guide</a></b>.
-<h4>
-History</h4>
-The recent event history of the host will be displayed in this section.
-The events are displayed in reverse chronological orders divided into seperate
-days. Each event has the status color, time (in 24 hour format), host name,
-service name, and message summary line of the event. If <a href="spong_conf.html#status-history"><b>$STATUS_HISTORY</b>
-</a>is enabled, the status color icon/box will be a link that will display
-the Service Status update that generated the event.
-<h3>
-Service Status Display</h3>
-This display shows all of the infomation available for the service/host.
-It is divided into several sections: <i>Title</i> (Host Name/Service),
-<i>Action
-Bar</i>,&nbsp;<i> Summary Information</i>,
-<i>Detailed Information</i>.
-<h4>
-Title</h4>
-This is the name of the host and service being displayed.
-<h4>
-Action Bar</h4>
-This is discussed above.
-<h4>
-Summary Information</h4>
-This section shows summary information for the service. First is a colored
-bar that shows the current status color of the service. See <a href="#web-interface">Status
-Colors</a> for details. Next is the <i>Updated:</i> field which if the
-date and time of the last update of the status. The <i>Duration</i> field
-shows the amount of time that the service has been in it's current status.
-And last is the <i>Summary</i> field which is a one line summary message
-about the status of the service.
-<h4>
-Detailed Information</h4>
-This last section is detailed information about the status of the service.
-The type of information depends of the service. For example, for the <i>disk</i>
-service it will be the output of the <b>df</b> command showing the mounted
-disk partitions and amount of space used on each disk and the for the <i>cpu</i>
-service it will be a <b>ps</b> comand output showing information about
-the top 10 processes using a CPU.
-<h3>
-Acknowledge Problem Display</h3>
-This display is a form generated by the <b><a href="www-spong-ack.html">www-spong-ack</a></b>
-CGI program. At top of the form are instructions on how to fill out the
-form, next will be a list of all of the current Acknowledgments created
-for the host. The list includes the service that was ack'ed, the expirate
-date of the acknowledgement, and the message text of the acknowledgment.
-There is also a <i>Delete</i> link that can be used to delete the Acknowledgment
-if clicked. Below this if a form that can be filled out to create a new
-Acknowledgment. See the <b><a href="www-spong-ack.html">www-spong-ack</a></b>
-documentation for more information.
-<h1>
-<a NAME="character-interface"></a>COMMAND LINE USER INTERFACE</h1>
-The command line interface is provided by the <b><a href="spong.html><b>spong</b></a> program. It has all of the same displays that the Web Interface provides.The <b>spong</b> program is run with 0, 1 or 2 paramters from a shell prompt. For moreinformation run the <b>spong</b> program with the --help parameters or refer tothe <a href=" spong.html">spong</a></b>
-documentation.
-<h1>
-<a NAME="acks"></a>ACKNOWLEDGMENTS</h1>
-Spong Acknowlegements are a mechanism that allows the user to notify the
-spong-server that they know about the problem and no more notifications
-need to be sent.. Acknowledgments have a limited life time. After an acknowledgment
-has expired, the spong-server will start sending out notifications if neccessary.
-Acknowledgments are created for a specifc host and service, or all services
-can be ack'ed. by specifying 'all' for the serice name.
-</body>
-</html>
diff --git a/www/docs/www-spong.html b/www/docs/www-spong.html
deleted file mode 100755 (executable)
index 376467f..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.61 [en] (X11; U; Linux 2.2.12-20 i686) [Netscape]">
-   <title>spong-server</title>
-</head>
-<body>
-
-<hr>
-<h1>
-<a NAME="spong-server_name_0"></a>NAME</h1>
-<b>www-spong</b> - display spong system status via the web or generate
-static HTML pages of system status
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_synopsis_0"></a>SYNOPSIS</h1>
-<b>www-spong</b> [--summary [hostlist] | --problems [hostlist] | --history
-[hostlist] | --host host | --services host | --stats host
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-| --config host | --info host | --service host:service ] [--brief | --standard
-| --full ]
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_description_0"></a>DESCRIPTION</h1>
-The www-spong program interfaces with the spong-server to display the collected
-information&nbsp; in HTML format. www-spong can be run in two modes: as
-a CGI program and from the command line.
-<p>When run as a CGI program it does not have to loaded onto the same machine
-that spong-server is runnning. It queries the spong-server through it's
-query port. it will display information via a web page that reloads itself
-at regular intervals.&nbsp; When run with no parameters it created a page
-wth two frames.&nbsp; The left frame displays a summary of systems along
-with their associated problems (services that are red). The right panel
-is a table that lists the hosts and services, and the current status is
-a colored block or an icon depending on how spong-server is configured.
-For further information on how to use the web interface see the <b><a href="/home/sjohnson/user-guide.html">User
-Guide</a></b>.
-<p>When run from a command line, www-spong generatesHTML pages that are
-printed to the console. This mode can be used to generate static HTML pages.
-If www-spong is run with any parameters a page that contains a summary
-display for all hosts is generated.
-<br>&nbsp;
-<h2>
-Options</h2>
-
-<dt>
-<b>--summary&nbsp; [hostlist]</b></dt>
-
-<dd>
-&nbsp;Summarize the status of hosts, in hostlist, in a table that lists
-the hosts and services, and the current status is a colored block or an
-icon depending on how spong-server is configured. If hostlist if not specified
-all hosts defined in spong.hosts are displayed.</dd>
-
-<dt>
-<b>--problems&nbsp; [hostlist]</b></dt>
-
-<dd>
-Shows a summary of all the problems (services that are red) for the all
-the hosts in hostlist. If hostlist is not specified, all hosts defined
-in spong.hosts are displayed.</dd>
-
-<dt>
-<b>--history&nbsp; [hostlist]</b></dt>
-
-<dd>
-Show history information for the the list of hosts in hostlist. If host
-list is not specified, all hosts defined in spong.hosts are displayed.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<dt>
-<b>--host&nbsp; host</b></dt>
-
-<dd>
-Shows all information availiable for the given host.</dd>
-
-<dt>
-<b>--services host</b></dt>
-
-<dd>
-Shows detailed service information for the given host.</dd>
-
-<dt>
-<b>--stats host</b></dt>
-
-<dd>
-Show statistical information for the given host.</dd>
-
-<dt>
-<b>--config host</b></dt>
-
-<dd>
-Shows configuration intomation for the given host.</dd>
-
-<dt>
-<b>--info host</b></dt>
-
-<dd>
-Shows admin supplied text for the given host.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<br>&nbsp;
-<br>&nbsp;
-<dt>
-<b>--service host:service</b></dt>
-
-<dd>
-Shows detailed information for the given host/service. The</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<p><b>--brief</b>
-<dd>
-Display output in a brief format</dd>
-
-<dt>
-<b>--standard</b></dt>
-
-<dd>
-Display output in standard format (the default)</dd>
-
-<dt>
-<b>--full</b></dt>
-
-<dd>
-Display the maximum amount of information possible.</dd>
-
-<br>&nbsp;
-<p>&nbsp;
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_configuration_0"></a>CONFIGURATION</h1>
-By default, www-spong reads the <a href="spong-server.html#spong-server_usr_local_etc_spong_spong_conf_0">/usr/local/etc/spong/spong.conf</a>
-file which define some specific variables that you probably don't need
-to override.
-<p>By default the&nbsp; <a href="spong-server.html#spong-server_usr_local_etc_spong_spong_conf_0">/usr/local/etc/spong/spong.conf</a>&nbsp;&nbsp;
-file is read on startup. It defines some specific variable that you probably
-don't need to override.
-<p>After reading the configuration fil,&nbsp; it then reads the <i>/usr/local/etc/spong/spong.conf.[host]</i>
-file where [host] 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.
-<dl>Here are a list of variables in the spong.conf file that are applicable
-to the spong-server program:
-<br>&nbsp;
-<dt>
-$<b>SPONGSERVER</b></dt>
-
-<dd>
-The make of the server that spong-server is running on.</dd>
-
-<br>&nbsp;
-<dt>
-<b>$SPONG_QUERY_PORT</b></dt>
-
-<dd>
-The port numbr that spong-server listens at for database queries.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong-server_files_0"></a>FILES</h1>
-
-<dl>
-<dt>
-<a NAME="spong-server_usr_local_etc_spong_spong_conf_0"></a><b>/usr/local/etc/spong/spong.conf</b></dt>
-
-<dd>
-Configuration file. This contains variables that detail spong and OS specific
-definitions used by spong-server. See <i>spong.conf</i> for additional
-documentation.</dd>
-</dl>
-
-<hr>
-<h1>
-<a NAME="spong-server_dependencies_0"></a>DEPENDENCIES</h1>
-Perl v5.003 or greater is required.
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_bugs_0"></a>BUGS</h1>
-The <b>--stats</b>, <b>--config</b>, and <b>--info</b> parameters are currently
-not implemented in the spong-server. When specified they will just generate
-a blank HTML page..
-<br>
-<hr>
-<h1>
-<a NAME="spong-server_see_0"></a>SEE ALSO</h1>
-&nbsp;<i>spong.hosts</i>, <i>spong.conf</i>
-<p>
-<hr>
-<h1>
-<a NAME="spong-server_author_0"></a>AUTHOR</h1>
-Ed Hill (<a href="MAILTO:ed-hill@uiowa.edu">ed-hill@uiowa.edu</a>), Unix
-System Administrator, The University of Iowa
-<br>Stephen L Johnson (<a href="MAILTO:stephen.johnson@mail.state.ar.us">stephen.johnson@mail.state.ar.us</a>)
-or (<a href="MAILTO:sjohnson@monsters.org">sjohnson@monsters.org</a>),
-Unix System Administator, DIS - State of Arkansas
-<p>Based on code/ideas from Sean MacGuire (BB), and Helen Harrison (Pong).
-</body>
-</html>