|A custom configuration file may be used instead of the default one: /usr/local/etc/monitord.conf.|
|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 admins 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 its found down. This is also the default behaviour when neither auto nor noauto are specified.|
|Indicates that the service should not be automatically restarted if its 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 its 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 services 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
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
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.
/usr/local/etc/monitord.conf configuration file
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.
This manual page was written by
.An W. M. Shandruk Aq email@example.com .
There are no known bugs.