DragonFly On-Line Manual Pages

Search: Section:  


MONITORD(8)            DragonFly System Manager's Manual           MONITORD(8)

NAME

monitord - monitor system services for accidental termination

SYNOPSIS

monitord [-f file -t interval]

DESCRIPTION

monitord is a simple to use system service that allows one to easily monitor other system services for accidental termination. If they terminate because of some internal bug or illegitimate action, such as a DoS attack, they are restarted with the given username and parameters specified in monitord.conf. The two command line options are as follows: -f file A custom configuration file may be used instead of the default one: /usr/local/etc/monitord.conf. -t interval The time interval in seconds at which to check the system processes, which are configured in monitord.conf. The default interval is 10 seconds. The configuration file for monitord, /usr/local/etc/monitord.conf, has a simple format. It is divided into two parts. The first part contains general configuration informaion, which for now consists simply of the admin's email and your email server. The second part consists of multiple configuration lines for each service to be monitored. In this second part, the first column contains the user under which the given service on that line will be run if it needs to be restarted. The group to which the user belongs will be grabbed from the password database. The second column consists of the options to be used in monitoring that particular service. Currently, three options are supported: auto Indicates that the service should be automatically restarted if it's found down. This is also the default behaviour when neither auto nor noauto are specified. noauto Indicates that the service should not be automatically restarted if it's down. alert Indicates that if this service is found down, the administrator is automatically notified via email, as specified in the first part of the configuration file. Also, once a service is restarted, this option will prompt monitord to notify the administrator that it was successfully restarted. The third column is the delay that will follow the startup of that particular service. Some services take a while to start up, especially if they need to perform preperatory tasks in a wrapper script, so to keep monitord from attempting to restart a service after it's already begun its startup proceedure but before it appears in the process table the specified delay keeps monitord from checking that service for the specified time in seconds. The fourth and fifth columns are the service being monitored and script used to start the service, respectively. Only the script column includes the full path. If no special wrapper script is being used but instead the service's binary is invoked directly simply include the path to the service in the script column. The service field should always contain the name of the binary being executed. See examples in monitord.conf. The last column, which is optional, may contain any parameters that should be passed to the script (or binary as the case may be). For instance, the following line would configure monitord to watch for sendmail(8) and restart it, in case of termination, with the user root and group wheel (which it would grab from the password database), and then notify the administrator. monitord will wait 30 seconds after attempting to restart sendmail before it checks to see if sendmail is up and running: root auto,alert 30 sendmail /usr/sbin/sendmail -bd -q60m

EXAMPLES

Here are a few more example service entries: root auto,alert 30 syslogd /usr/sbin/inetd -wW root auto,alert 30 syslogd /usr/sbin/syslogd www auto,alert 60 httpd /usr/local/etc/rc.d/apache.sh

IMPLEMENTATION NOTES

This is version 0.4.1. When using a time interval that is smaller than 5 seconds, an increasingly larger amount of CPU time will be used by the process. It is recommended that one keep the interval equal to or above 5 seconds. The default of 10 seconds may be changed in config.h before compile time.

FILES

/usr/local/etc/monitord.conf configuration file

DIAGNOSTICS

When restarting a service which it is monitoring, monitord will notify syslogd(8) of the event. monitord should be run as root so that it can restart the services it is monitoring with the correct username and group.

AUTHOR

This manual page was written by W. M. Shandruk <walt@erudition.net>.

BUGS

There are no known bugs. FreeBSD 4.3 August 21, 2003 FreeBSD 4.3

Search: Section: