SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

SAWDOG - Simple Active Watch-DOG

Simple: less than 1000 lines of code
Active: No need for daemons on the servers

SAWDOG - A collection of simple scripts, which informs in case of server outages Copyright 1999-2000 by Christian Gloor

This piece of code is distributed under the terms of the GNU General Public License (GPL) You should have received a copy of the GPL (file COPYING) along with this script; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA

Current maintainer: chgloor@digicomp.ch, don't hesitate to contact him if you have any questions.

Changelog

Fall 1999: 1.0.0 initial         - chgloor@digicomp.ch: initial release for internal use only 
May  2000: 1.2.0                 - michi@digicomp.ch: changed for sms use only 
May  2000: 2.0.0 phoenix         - chgloor: additional features (unknown state, logfile, locking)
                                   michi:   additional expect scripts (icmp, smb)
June 2000: 2.1.0 generic         - chgloor: compact notification, one message per server
                                            aliases for long server names or ip addresses
                                            generic notification (can execute any binaries now)
June 2000: 2.2.0 speedup         - chgloor: speedup in the expect scripts
                                            'required' freature

Sept 2006: 2.4.0 webinterface - max added php-based web interface,

chgloor: code cleanup

This is the README for Version 2.4.x

  1. Abstract

This script was initially written by Christian Gloor. About half a year later, it was adapted for use at DIGICOMP AG, a IT education company located in switzerland.

Sawdog consists of a script which informs the sysops of some mission critical servers in the case of a failure. The script executes a given set of small executables, i.e. expect scripts, and if one executable fails, sends an email or a sms to the sysop.

2) Installation

The main script is sawdog.pl. It can be placed everywhere on the filesystem. However, if you run install.sh, it will place the script in /usr/local/bin/sawdog

At the moment, the only configuration is done in the sawdog.conf file. If you keep this file not in the current directory, you need to edit the sawdog.pl source file. All file locations are stored in the sawdog.pl file.

You can use crontab to start sawdog.pl every 5 minutes, e.g.

*/5 * * * * root ( cd /usr/local/bin/sawdog/; ./sawdog.pl notify )

Sawdog creates a logfile: sawdog.log and a status file: sawdog.status, if they don't exist, sawdog recreates them. Of course sawdog needs write permissions on the working directory.

There are some predefined expect scripts for some well known services: ftp, http, icmp, ssh, telnet, and smb. You can easily create your own expect scripts, or use any other executable which returns a return code of zero if it succeeds. Don't forget to contribute your aditions to the main code tree.

Files needed:

  • sawdog.pl the main file
  • sawdog.conf the config file
  • services/ this directory is populated by the expect scripts

Files recreated, if they don't exist:

  • sawdog.status in this file the internal state is keept
  • sawdog.log the logfile 3) Usage/Configuration

See the postscript/pdf documentation

4) To Do

Create some more expect scripts for more ports. Build a nice package.
Correct spelling and grammar errors in the readme files. Clean up the source


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.