If your web-site is down, getting an alert is all well and good, but it is much more useful if you can also have it automatically fixed, especially at 04 AM. M/Monit can do that.
M/Monit can automatically start a process if it does not run, restart a process if it does not respond and suspend a process if it uses too much resources.
M/Monit is particularly useful for monitoring background or daemon processes, such as those started at system boot time.
You can also check resources used by a process and perform actions if values goes outside specific bounds.
Monitor general system resources on localhost such as overall CPU usage, Memory and Load Average. Quickly see the status of all your servers in M/Monit's status page and view uptime reports for all your Hosts and Services.
From M/Monit you can also manage services on your remote server. Start, stop and restart services remotely.
Check if your web-site or your database server is up. You can monitor network connections to various network services, either on localhost or on remote hosts. TCP, UDP and Unix Domain Sockets are supported. Network tests can be performed on a protocol level.
M/Monit can also check Network Interfaces on localhost. Get an alert if the interface is down, or if the capacity changes. Monitor saturation, current upload and download bandwidth usage and total data transfers within the last 24 hours.
You can even use M/Monit to check your servers SSL certificate and remind you when it is time to renew the certificate
Monitor a hard disk or a filesystem and raise alerts if the device is about to run out of available space or becomes slow. Automatically mount or unmount file systems.
View charts such as space usage, disk i/o, service time etc and use forecast to predict when it is time to invest in more space or replace disks
Monitor files for changes, such as timestamps changes, checksum changes or size changes. This is also useful for security reasons - you can monitor the md5 or sha1 checksum of files that should not change and get an alert or perform an action if they did change.
Files, such as log files, can be monitored for content. Use regular expressions to continously tail monitor files and perform and action or raise an alert if a match is found
Monitor directories for changes. Alert if content was added or removed from a specific directory. If you spool incomming data on a regular basis, an alert can be raised if no new data has arrived within a specific time. Monitor the existence of directories and their permission settings and uid and gid attributes
M/Monit is a modern, compact, scalable and modular application. Thread-pools and a non-blocking, event driven i/o architecture is used to ensure high performance. M/Monit runs on POSIX systems and use around 10-15 MB of RAM, depending on how many hosts you monitor.
Monit is a small popular Open Source utility for managing and monitoring Unix systems. M/Monit builds on Monit's capabilities and provides monitoring and management of all your Monit enabled hosts via a modern, clean and well designed user interface which also works on mobile devices.
M/Monit can monitor and manage distributed computer systems, conduct automatic maintenance and repair and execute meaningful causal actions in error situations.
Easy install and setup - turn key. Up and running in seconds
Responsive user interface. Access M/Monit from desktops, tablets and phones
Monitor services in active, passive and manual mode and setup dependencies
Start, stop, restart and toggle monitoring of services remotely on managed hosts
Hosts and Services uptime reports. Alert reports on service error and recovery
View, drill-down and investigate all events reported from your monitored systems
Create beautiful charts for multiple hosts and compare key indicators from various machines and services
Use trend predictions to extrapolate future values based on existing data
View real-time charts with key performance data from your hosts, such as CPU, Memory, Load and more
Check and monitor files, directories, file-systems and disks across your system. Test timestamp, file and disk size and access permissions
Test network connections to local and remote services. TCP, UDP and Unix Domain sockets are supported
Connection test on protocol level. M/Monit has automatic tests for all the main Internet protocols and databases
Extensible, flexible and configurable alert notification. Uses rule-based alert filters and alert aggregation
Verify MD5 or SHA checksum of files, either on local system or on remote system
Setup rules to act preemptive before an error occurs
Scalable, threaded, non-blocking and event driven i/o architecture. Uses around 10 MB of RAM runtime
Built-in full feature SQL database connection pooling. Supports SQLite, MySQL and PostgreSQL
Application Server based. Easy to modify and extend via a well designed native API
M/Monit provides a simple HTTP REST API you can use to query M/Monit for data
Plus many more functions and features