Problem with custom timeperiods

I have a custom timeperiod set up that should in essence run from 3 a.m. to midnight every day. The definition looks like this:

define timeperiod{
timeperiod_name foo_finished
alias Foo should be done by now
monday 03:00-23:59
tuesday 03:00-23:59
wednesday 03:00-23:59
thursday 03:00-23:59
friday 03:00-23:59
saturday 03:00-23:59
sunday 03:00-23:59
}

There are four monitors that use this or similar for the check_period. I enabled this on Friday, and all was well except that one of the four was flapping due to my testing the monitor. It correctly stopped monitoring when it should. However, it never resumed monitoring the next day, and the monitors were marked as having no Next Scheduled Check. I restarted Nagios this morning, and now the Next Scheduled Check is Next Scheduled Check: 05-30-2010 03:09:28.

I’ve read all of the caveats around custom timeperiods and notifications, and I’m comfortable with them. I’d like the monitors to actually run when I ask them to, though.

Have I likely done something wrong, or is Nagios just confused? Is there a way to unconfuse it?

Not sure if i thas anythign to do, but the standard definition starts with sunday…

Does using the standard timeperiods other than 24x7 like workhours work correctly ?

I’ll know more in a few hours, but that might have done the trick. Thanks!

Changing the order of the days in the timeperiod definition didn’t make a difference.

I decided that rather than banging my head against this particular wall, I’d punt and move that logic elsewhere. The Nagios monitor now runs 24x7, and my script knows when it should be checking. It goes like this:

If it’s within the timeperiod, run the check, save the results, return the results
else grab the last known results and return them

It works just fine, and it’s actually easier to maintain-- I can just tweak the monitoring script if I need to change the window, rather than updating the Nagios configuration.