Introduction:
This document is a draft for the next major release of monit, monit
4.0. Each feature item is listed with the responsible for the
implementation, the current progress (the color will go from blue to
green) and how we judge the importance of this feature (high, medium,
low).
Items marked with a low importance will probably not make it
into the release. If you would like to change anything or add stuff to
the list join the mailing
lists and let us know.
Feature list:
- Monitoring file systems and devices.
Monitoring of file/storage systems.
Statements:
CHECK [PROCESS] name options,...
CHECK [FILE|DIRECTORY|DEVICE] PATH options,...
Control file examples:
# Optionally prefix the current check statement
# with a process tag
check process sshd with pidfile "/var/run/sshd.pid"
start "/etc/init.d/sshd start"
[...]
check device /dev/hda1
if used > 100Gb then alert martin or
if available < 100Mb then alert martin
if available < 1000inodes then alert martin
# In case the device is not there anymore
if error then alert martin
check directory /foo/directory
if size > 100Mb then alert martin
# If the directory was deleted
if deleted then alert security@bar
check file /foo/bar/file
if size > 10Mb then alert hauk
if deleted then alert security@bar
Responsible: | Martin |
Progress: |
10% |
Importance: | HIGH |
- Execute programs via the alert statement.
This functionality will allow you to start any program in an alert
statement, like so:
alert "/usr/bin/snpp -m "Monit: $EVENT for $PROGRAM on $HOST" rladams"
and because the alert statement is associated with events you may even
be more specific, like so:
alert "/bin/program" on { checksum }
This version of the alert statement is going to be a "fire-and-forget"
operation. That is, you cannot check the return value from the script
and do stuff like this
if alert "myprogram" > 0 then
do stuff
else
do other stuff
Never the less we think this will cover most of the need for calling
programs outside monit without implementing a regular pluggin
architecture, which we really do not want to implement.
Responsible: | Jan-Henrik |
Progress: |
0% |
Importance: | HIGH |
|