Monit is a utility for monitoring and managing processes, files, directories and devices on a Unix system. Monit conducts automatic maintenance and repair and can execute meaningful causal actions in error situations. E.g. monit can start a process if it does not run, restart a process if it does not respond and stop a process if it use to much resources. You may use monit to monitor files, directories and devices for changes, such as timestamps changes, checksum changes or size changes.

Monit is controlled via an easy to configure control file based on a free-format, token-oriented syntax. Monit logs to syslog or to its own log file and notifies you about error conditions via customizable alert messages. Monit can perform various TCP/IP network checks, protocol checks and can utilize SSL for such checks. Monit provides a HTTP(S) interface and you may use a browser to access the monit program.

»  Getting started slides «

monit supports:
  • Daemon mode - poll services at a specified interval
  • Monitoring modes - active, passive or manual
  • Start, stop and restart of services
  • Enable or disable services monitoring
  • 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
  • Check a file size
  • Device space usage check
  • Device inodes usage check
  • MD5 checksum for files
  • File, directory and device permission checking
  • File, directory and device owner uid checking
  • File, directory and device owner gid checking
  • Alert, stop or restart a service based on it's characteristics
  • Alert notification for service timeout, start, restart, checksum, resource, stop, connection, size, permission, uid, gid, unmonitor or timestamp error
  • Flexible and customizable email alert messages
  • Protocol verification. HTTP, FTP, SMTP, POP, IMAP, NNTP, SSH, DWP, LDAPv2, LDAPv3, RDATE and RSYNC.
  • 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 Free Software Foundation (FSF) for hosting the CVS repository and the mailing lists.