Monit — service monitoring

Installed, but the service is not running. Start it and enable autostart:
sudo systemctl enable --now monit
How to set up (FAQ)
Monit
Not running
Services monitored: 12
Services monitored
12
Total
Running
12
Active
With errors
0
With errors
Services monitored
Service Type Uptime Memory CPU Status
srv-monitor System 4d 2h — — Active
nginx Process 21d 16h 273.6 MB 0.5% Active
apache2 Process 25d 22h 84.8 MB 1.9% Active
mysqld Process 22d 11h 277 MB 3.2% Active
php-fpm Process 26d 16h 278.1 MB 0.9% Active
sshd Process 21d 2h 179.9 MB 1.1% Active
fail2ban Process 8d 19h 165.5 MB 3% Active
crowdsec Process 37d 15h 26.5 MB 2.4% Active
redis-server Process 7d 0h 37.2 MB 1.8% Active
cron Process 22d 2h 278.3 MB 3.6% Active
rootfs Filesystem — — — Active
eth0 Network — — — Active

A cleaner view of what Monit is checking

Monit watches processes, files, filesystems and hosts, and restarts what it finds broken. It ships with its own web interface, which works and looks like it was designed a long time ago. This page reads the same state and presents it alongside the rest of the panel, so service health sits next to the security modules instead of on a separate port.

Each check is shown with its current status, what it monitors and how many times it has acted. The restart count is the field worth watching. A service Monit has restarted forty times is not a service Monit is keeping alive — it is a service failing repeatedly while the restarts hide the fact. Monit is honest about this if you read it; the danger is treating a green board as evidence that nothing is wrong.

On a typical server the checks that earn their place are the web server, the database, the SSH daemon, free space on the root filesystem, and a reachability check against something outside the machine.