$Id: TODO,v 1.31 1999/04/16 20:45:41 trockij Exp $

-make alerts nonblocking, and handle them in a similar fashion to
 monitors. i.e., serialize per-service (or per-period) alerts.

-make "no upalerts w/o a downalert" option

-document % substitution in config file

-document "clear" client command

-patch in gilles' readhistoricfile

-Separate the decision-making code about sending alerts into a
 separate routine, and make do_alert do nothing but deliver the
 actual alert.

-Document trap authentication.

-Document traps.

-fix client opstatus parsing by converting clients to use Mon::Client

-Make monitors parallelize their tasks, similar to fping.monitor. This
 is an important scalability problem.

-make changes to tkined so that it can query a mon server and
 update the graphical map accordingly.

-re-vamp the host disabling. 1) store them in a table with a timeout
 on each so that they can automatically re-enable themselves so
 people don't forget to re-enable them manually. 2) don't do
 the disabling by "commenting" them out of the host groups.
 We still want them to be tested for failure, but just disable
 alerts that have to do with the disabled hosts.
 When a host is commented out, accept a "reason" field that
 is later accessible so that you can tell why someone disabled
 the host.

-allow checking a service at a particular time of day, maybe using
 inPeriod.

-service templates in the config file would be nice. Maybe this can
 be done with M4 macros or something. Maybe it doesn't belong in
 mon itself.

-implement some sort of "worsening-condition" rule on a per-service
 basis, triggering different alerts when things are really bad.

-make Wietse's tcp_scan.c multiplex hosts in addition to ports

-make a name for this silly program other than mon (well, mon *is*
 easy to type!)

-maybe make a command that will disable an alert for a certain amount
 of time (maybe implement this as an at(1) job??)

-make it possible to disable just one of multiple alarms in a service

-Add better grammar checking to the config file. Don't allow watch
 records for groups that haven't been defined, etc.

-Handle alert processes like monitor processes, meaning only allow
 one running at a time

-What happens to stderr from monitors and alerts???
