Skip to content
This repository has been archived by the owner on Jan 15, 2019. It is now read-only.

[dev.icinga.com #5252] explain "Check results for service x on host y are stale by 0d 0h 0m 10s (threshold=0d 0h 10m 0s). Forcing an immediate check of the service..." #430

Closed
icinga-migration opened this issue Dec 3, 2013 · 2 comments

Comments

@icinga-migration
Copy link

This issue has been migrated from Redmine: https://dev.icinga.com/issues/5252

Created by mfriedrich on 2013-12-03 08:17:53 +00:00

Assignee: Wolfgang
Status: Closed (closed on 2014-01-13 19:56:21 +00:00)
Target Version: 1.11
Last Update: 2014-01-13 19:56:21 +00:00 (in Redmine)


the code part is as follows in base/checks.c

        /* the results for the last check of this service are stale */
        if (expiration_time < current_time) {

                get_time_breakdown((current_time - expiration_time), &days, &hours, &minutes, &seconds);
                get_time_breakdown(freshness_threshold, &tdays, &thours, &tminutes, &tseconds);

                /* log a warning */
                if (log_this == TRUE)
                        logit(NSLOG_RUNTIME_WARNING, TRUE, "Warning: The results of service '%s' on host '%s' are stale by %dd %dh %dm %ds (threshold=%dd %dh %dm %ds).  I'm forcing an immediate check of the service.\n", temp_service->description, temp_service->host_name, days, hours, minutes, seconds, tdays, thours, tminutes, tseconds);

                log_debug_info(DEBUGL_CHECKS, 1, "Check results for service '%s' on host '%s' are stale by %dd %dh %dm %ds (threshold=%dd %dh %dm %ds).  Forcing an immediate check of the service...\n", temp_service->description, temp_service->host_name, days, hours, minutes, seconds, tdays, thours, tminutes, tseconds);

                return FALSE;
        }

by default, the following applies

  • expiration_time = last_check + freshness threshold
  • expiration_time in the past (< current_time) == stale
  • the diff between now and expiration time is shown in the log

if the service has not been checked now, but in the past (event_start > last_check) and its freshness threshold is 0, max_service_check_spread multiplied by the interval is added as additional offset (happens during startup, in order to detect how fast the initial service check (and state + output) must happen.

As a user I would expect that explaination in http://docs.icinga.org/latest/en/servicechecks.html (couldn't find a better place with more generic check behaviour info)

@icinga-migration
Copy link
Author

Updated by mfriedrich on 2013-12-03 08:18:10 +00:00

  • Subject changed from explain "Check results for service x on host y are stale by 0d 0h 0m 10s (threshold=0d 0h 10m 0s). Forcing and immediate check of the service..." to explain "Check results for service x on host y are stale by 0d 0h 0m 10s (threshold=0d 0h 10m 0s). Forcing an immediate check of the service..."

@icinga-migration
Copy link
Author

Updated by Wolfgang on 2014-01-13 19:56:21 +00:00

  • Status changed from New to Closed
  • Assigned to set to Wolfgang
  • Done % changed from 0 to 100

Commit b5387e3 in next

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant