[Mon-commit] mon mon,1.3,1.4
Brought to you by:
trockij
From: David N. <vi...@us...> - 2004-06-11 17:03:56
|
Update of /cvsroot/mon/mon In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25402 Modified Files: mon Log Message: Reverting upalertafter behavior back to the documented behavior. (And fixing a bug in that behavior.) upalertafter statements mean "only send an upalert if the service was down for more than X", as documented. The alternate behavior of "only send an upalert after the service has been back up for X" would be nice to add, but can not be added as the patch from Adrian Chung attempted to do, as it will lead to user confusion when looking at the current status ("But I fixed that!") and will conflict with the soon to be released 'redistribute' feature, for propagating service status to other Mon servers or to other monitoring systems. Index: mon =================================================================== RCS file: /cvsroot/mon/mon/mon,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** mon 11 Jun 2004 15:50:38 -0000 1.3 --- mon 11 Jun 2004 17:03:47 -0000 1.4 *************** *** 1361,1365 **** } ! $pref->{"upalertafterinterval"} = $args; } --- 1361,1365 ---- } ! $pref->{"upalertafter"} = $args; } *************** *** 2764,2768 **** select (STDOUT); ! if (!open (STDIN, "/dev/null") { syslog ("err", 'could not open STDIN from /dev/null: %m'); --- 2764,2768 ---- select (STDOUT); ! if (!open (STDIN, "/dev/null")) { syslog ("err", 'could not open STDIN from /dev/null: %m'); *************** *** 2903,2906 **** --- 2903,2907 ---- } + my $old_status = $sref->{"_op_status"}; set_op_status ($group, $service, $STAT_OK); *************** *** 2910,2920 **** # let someone know # ! my $diff = ($tmnow - $sref->{"_upalerttime"}); ! if ($sref->{"_upalertafterinterval"} > 0) { ! if (defined($sref->{"_upalert"}) && ($diff > $sref->{"_upalertafterinterval"})) ! { ! do_alert ($group, $service, $sref->{"_upalertoutput"}, 0, $FL_UPALERT); ! } } --- 2911,2921 ---- # let someone know # ! if ((defined ($sref->{"_op_status"})) && ! ($old_status == $STAT_FAIL) && ! (defined($sref->{"_upalert"})) && ! (!defined($sref->{"upalertafter"}) ! || (($tmnow - $sref->{"_first_failure"}) >= $sref->{"upalertafter"}))) { ! do_alert ($group, $service, $sref->{"_upalertoutput"}, 0, $FL_UPALERT); } *************** *** 2943,2950 **** $sref->{"periods"}->{$period}->{"_last_alert"} = 0; $sref->{"periods"}->{$period}->{"_1stfailtime"} = 0; ! unless ( $diff > $sref->{"_upalertafterinterval"} ) ! { ! $sref->{"periods"}->{$period}->{"_alert_sent"} = 0; ! } } --- 2944,2948 ---- $sref->{"periods"}->{$period}->{"_last_alert"} = 0; $sref->{"periods"}->{$period}->{"_1stfailtime"} = 0; ! $sref->{"periods"}->{$period}->{"_alert_sent"} = 0; } *************** *** 4555,4564 **** } else { $alerttype = "alert"; - # - # Save these variables for when we call an upalertafter - # - $sref->{"_upalertafterinterval"} = $pref->{upalertafterinterval}; - $sref->{"_upalerttime"} = scalar time; - $sref->{"_upalertoutput"} = $args{"output"}; } --- 4553,4556 ---- |