monit is a utility for monitoring and managing daemons or similar programs running on a Unix system, devices, files or directories. Monit will do appropriate action if attributes of monitored device, file, directory or process entered erroneous state.
 
monit supports:
  • Daemon mode - poll services at a specified interval
  • Monitoring modes - active, passive or manual
  • Start, stop and restart of services
  • Group and manage groups of services
  • Services dependency definition
  • Logging to syslog or own logfile
  • Configuration - comprehensive controlfile
  • Runtime and TCP/IP port checking (tcp and udp)
  • SSL support for port checking
  • Unix domain socket checking
  • Service status and service timeout
  • Process cpu usage
  • Process memory usage
  • Process zombie check
  • Check the systems load average
  • Check a file or directory timestamp
  • Device space usage check
  • Device inodes usage check
  • File and directory permission checking
  • Alert, stop or restart a service based on it's characteristics
  • MD5 checksum for programs started and stopped by monit
  • Alert notification for service timeout, restart, checksum, stop resource and timestamp error
  • Flexible and customizable email alert messages
  • Protocol verification. HTTP, FTP, SMTP, POP, IMAP, NNTP, SSH, DWP, LDAPv2 and LDAPv3
  • A http interface with optional SSL support to make monit accessible from a Browser
monit mailing lists:

Join the monit general list to discuss usage of monit and submitt ideas, suggestions, and comments. New releases will also be annonced to this list. Use this form to subscribe to the mailing list and here is the mailing list archive.

Join the monit developer list if you want to discuss design issues, code changes/additions, etc. Use this form to subscribe to the developer mailing list and here is the developer mailing list archive.

Acknowledgements

Thanks to the FSF and GNU for hosting the CVS repository and the mailing lists.