]> git.etc.gen.nz Git - spong.git/commitdiff
Initial import
authorStephen L Johnson <sjohnson@monsters.org>
Tue, 15 Apr 1997 14:29:48 +0000 (14:29 +0000)
committerStephen L Johnson <sjohnson@monsters.org>
Tue, 15 Apr 1997 14:29:48 +0000 (14:29 +0000)
README [new file with mode: 0755]

diff --git a/README b/README
new file mode 100755 (executable)
index 0000000..c444da6
--- /dev/null
+++ b/README
@@ -0,0 +1,282 @@
+
+Simple System/Network Monitoring - spong v1.1
+
+Description
+===========
+
+This is a simple system monitoring package called spong.  It has the
+following features:
+
+    * client based monitoring (CPU, disk, processes, logs, etc...)
+    * monitoring of network services (smtp, http, ping, pop, dns, etc...)
+    * grouping of hosts (routers, servers, workstations, PCs)
+    * host specific contact information
+    * host specific downtime information
+    * configurable on a client by client basis
+    * results displayed via the web
+    * history of problems
+    * messaging (via email or pager) when problems occur
+    * verbose information to help diagnosis problems
+
+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).
+
+I'm a strong believer in KISS (keep it simple stupid), and hopefully this
+package is as simple as possible (but no simpler).  There are just 5 "pieces",
+1 program that runs on "client" machines, and 4 programs that run on your web
+server (where the results are displayed).  There are also only 2 config files,
+one that defines OS and system specific information, and one that defines what
+hosts you want to monitor, and who to contact when there is a problem.
+
+
+Changes between v1.1 and v1.0
+=============================
+
+This is primarily a bug fix release with a few minor features added.
+Everything done in this release is based on feedback that I got from my
+co-workers and people who decided to take a look at spong after my message to
+the BB list.  The most significant changes are:
+
+    BUG:     Fixed problem with defunct processes under Solaris.
+    FEATURE: Made the http check more configurable.
+    FEATURE: Added a DNS check (if you have the Net::DNS library installed)
+    FEATURE: Added the ability to check multiple interfaces on a host.
+    CHANGE:  Got rid of the Makefile, now build/installation is done via a 
+             simple perl build script.
+
+You can get a more detailed summary of changes at:
+
+    http://strobe.weeg.uiowa.edu/~edhill/public/spong/changes.html
+
+You can also see a list of features that I hope to add to spong at:
+
+    http://strobe.weeg.uiowa.edu/~edhill/public/spong/todo.html
+
+
+Availability
+============
+
+Perl is require to run spong.  If you don't have Perl installed you can
+retrieve it from the CPAN (http://www.perl.com/CPAN/) archive, along
+with other optional modules such at the Net::DNS module at:
+
+    http://www.perl.com/CPAN/src/latest.tar.gz
+
+You can retrieve the latest version of spong from my machine at:
+
+    http://strobe.weeg.uiowa.edu/~edhill/public/spong/spong.tar.gz
+
+You can see some screen shots of spong in action (note these are just examples
+of HTML that is produced - not the actual programming running - most people
+don't want this level of system information public to the world (if they can
+help it).
+
+    Main Spong Page
+       http://strobe.weeg.uiowa.edu/~edhill/public/spong/example/main.html
+    Spong showing only Unix machines by group
+       http://strobe.weeg.uiowa.edu/~edhill/public/spong/example/unix.html
+    History of problems
+       http://strobe.weeg.uiowa.edu/~edhill/public/spong/example/history.html
+    Host summary page
+       http://strobe.weeg.uiowa.edu/~edhill/public/spong/example/host.html
+    Service specific summary page
+       http://strobe.weeg.uiowa.edu/~edhill/public/spong/example/service.html
+
+This distribution contain the spong source, documentation, and gif images.
+
+
+Notification
+============
+
+I have sent up a mailing list that I will post to when I have released a new
+version of spong.  Anyone can join this list, but the traffic will be only one
+way (me posting information about new-releases).  If enough people are
+interested in creating a list for discussion spong in general, I will set one
+up at that time.
+
+To join the spong-announce mailing list, send a message to
+majordomo@strobe.weeg.uiowa.edu with the sentence:
+
+    subscribe spong-announce
+
+in the body of the message.  To have yourself removed from the spong-announce
+mailing list, send a message to majordomo@strobe.weeg.uiowa.edu with the
+sentence unsubscribe spong-announce in the body of the message.
+
+The traffic on the list will be very light - about 1 message per month.
+
+
+Dependencies
+============
+
+Perl v5.003 or greater, a web server that will allow you to run CGI programs,
+and a web browser that can display tables are required.
+
+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.
+
+These scripts should run on any Unix or NT system (and to ``some'' degree any
+environment where Perl is available).
+
+
+Installation
+============
+
+To build and install the spong server do the following on the machine running
+your web server.
+
+    1. 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.
+
+    2. Check to make sure there is a config/spong.conf.<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.<os> file, then please email it to me so that I can add it to
+       the distribution.
+
+    3. Make sure you are in the directory that you unpacked spong in and type:
+       ./build <os> where <os> is the name corresponding to your
+       operating system.  You can type ./build help to generate a list of
+       valid operating system strings.
+
+       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.
+
+    4. Now, type ./build install.  Note that the install process
+       makes no assumptions about what user you want to run spong as (you don't
+       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).
+
+    5. Now edit the spong.conf, and spong.hosts files that you just installed
+       and season to taste.  You should now be able to read the manual pages
+       for each.
+
+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.  
+
+For each client machine you will need to install the just the spong-client and
+a spong.conf file and make sure they start up when your system is rebooted.
+
+
+Documentation
+=============
+
+The documentation is in pod format, which you can convert to html or manual
+pages using the various pod2xxx tools that come with Perl.  The documentation
+is brief but hopefully enough to help you get things installed, and provide
+enough information for you to modify it as you see fit.  If you are in a pinch,
+the code is readable enough (and well commented) to provide some help as well.
+
+There is a README file that describes the overall system (this file), and there
+are pod files available for each program, and the 2 configuration files that
+come with spong.  
+
+On installation, the pod files are used to generate both HTML documentation,
+and man pages.  
+
+
+Files
+=====
+
+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.
+
+
+    config:
+      spong.conf              distributed config file
+      spong.conf.<os>         os specific config changes
+      spong.hosts             host/service config file
+    src:
+      spong-client.pl         collects/reports cpu,disk,etc info
+      spong-network.pl        collects/reports network service info
+      spong-server.pl         listens for/saves spong status updates
+      spong-display.pl        displays spong status via CGI program
+      spong-message.pl        alerts humans there's a problem
+      <*>.pod                 documentation for the above files
+    www:
+      gifs:                   various icons used by spong-display
+      docs:                   location of html versions of man pages
+      history:                history files kept here
+      hosts:                  host specific html files
+      screens:                html "screens" used to create the GUI
+      status:                 location of status information
+      tmp:                    temporary storage directory
+
+
+
+Licensing
+=========
+
+Copyright 1997, Ed Hill - The University of Iowa
+
+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 ed-hill@uiowa.edu, and I will mail you a
+copy.
+
+
+History
+=======
+
+Version 1.1     Primarily a bug fix release with a few minor features (dns,http
+                config,multiple interfaces) added.
+
+Version 1.0     Initial public release, mostly based on Big Brother package
+                from Sean MacGuire. 
+
+
+Acknowledgments
+===============
+
+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...  
+
+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.).  
+
+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.  
+
+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.
+
+
+Author
+======
+
+Ported and currently maintained by:
+
+    Ed Hill (ed-hill@uiowa.edu)
+    http://strobe.weeg.uiowa.edu/~edhill/
+    Unix Systems Administrator at The University of Iowa
+
+Please feel free to send me bug reports, patches, suggestions, or comments.