I have something like this in my Mon config:

        hostgroup misc_hosts fnord

        hostgroup herd_hosts fnord word bord lord dord

When I try to disable fnord in mon.cgi - it doesn't get disabled -
instead the hostgroup misc_hosts gets disabled.  I think this code
is to blame:

 2829     foreach my $h (@hosts)
 2830     {
 2831                 if (my $g=host_singleton_group($h) ) {
 2832                     disen_watch($g, 0);
 2833                     $stchanged++;
 2834         mysystem("$CF{MONREMOTE} disable watch $g") if ($CF{MONREMOTE});
 2835                 } else {
 2836                     disen_host ($h, 0);
 2837                     $stchanged++;
 2838         mysystem("$CF{MONREMOTE} disable host $h") if ($CF{MONREMOTE});
 2839                 }
 2840             }
 2841             sock_write ($fh, "220 disable host completed\n");
 2842     }

Note how if a host is in a "singleton group" that watch gets disabled,
and then the code assumes there's nothing more to do, even though the
host might be in another group as well.

_______________________________________________
mon mailing list
mon@linux.kernel.org
http://linux.kernel.org/mailman/listinfo/mon

Reply via email to