monit Usage Example
configurations
In debian the configuration is organized as followed.
/etc/monit# tree . ├── conf.d │ ├── cron -> ../monitrc.d/cron │ ├── openssh-server -> ../monitrc.d/openssh-server │ └── squid -> ../monitrc.d/squid ├── monitrc ├── monitrc.d │ ├── cron │ ├── openssh-server │ └── squid └── templates ├── rootbin ├── rootrc └── rootstrict
We put configuration files in monitrc.d and symlink it to conf.d to enable it.
monitoring squid3 memory usage
squid3 is a caching proxy that is memory hungry. It can control its memory consumption by itself in the configuration file, while it is demonstrative to have an example here.
# cat monitrc.d/squid check process squid3 with pidfile /run/squid3.pid start program = "/etc/init.d/squid3 start" stop program = "/etc/init.d/squid3 stop" if totalmem > 30 MB then alert
And we can see the effect as
'squid3' total mem amount of 30848kB matches resource limit [total mem amount>30720kB]