]> granicus.if.org Git - icinga2/commitdiff
Add more debug logging for check scheduling
authorMichael Friedrich <michael.friedrich@icinga.com>
Mon, 2 Jul 2018 14:17:33 +0000 (16:17 +0200)
committerMichael Friedrich <michael.friedrich@icinga.com>
Mon, 2 Jul 2018 14:17:33 +0000 (16:17 +0200)
lib/checker/checkercomponent.cpp
lib/icinga/checkable-check.cpp

index c26db9de1291f7b404e400cc2ca4ba94bf12e27c..89426f8a1d750edb1a7d655db42af0eaaf480ce2 100644 (file)
@@ -174,6 +174,9 @@ void CheckerComponent::CheckThreadProc()
                        m_IdleCheckables.insert(GetCheckableScheduleInfo(checkable));
                        lock.unlock();
 
+                       Log(LogDebug, "CheckerComponent")
+                               << "Checks for checkable '" << checkable->GetName() << "' are disabled. Rescheduling check.";
+
                        checkable->UpdateNextCheck();
 
                        lock.lock();
@@ -181,7 +184,16 @@ void CheckerComponent::CheckThreadProc()
                        continue;
                }
 
-               m_PendingCheckables.insert(GetCheckableScheduleInfo(checkable));
+
+               csi = GetCheckableScheduleInfo(checkable);
+
+               Log(LogDebug, "CheckerComponent")
+                       << "Scheduling info for checkable '" << checkable->GetName() << "' ("
+                       << Utility::FormatDateTime("%Y-%m-%d %H:%M:%S %z", checkable->GetNextCheck()) << "): Object '"
+                       << csi.Object->GetName() << "', Next Check: "
+                       << Utility::FormatDateTime("%Y-%m-%d %H:%M:%S %z", csi.NextCheck) << "(" << csi.NextCheck << ").";
+
+               m_PendingCheckables.insert(csi);
 
                lock.unlock();
 
index 719611abad9d9be282a5fe0280a9d6c2f0bf4424..619e3c0eea86d38b841219581b741292c774597b 100644 (file)
@@ -81,7 +81,14 @@ void Checkable::UpdateNextCheck(const MessageOrigin::Ptr& origin)
 
        adj = std::min(0.5 + fmod(GetSchedulingOffset(), interval * 5) / 100.0, adj);
 
-       SetNextCheck(now - adj + interval, false, origin);
+       double nextCheck = now - adj + interval;
+
+       Log(LogDebug, "Checkable")
+               << "Update checkable '" << GetName() << "' with check interval '" << GetCheckInterval()
+               << "' from last check time at " << Utility::FormatDateTime("%Y-%m-%d %H:%M:%S %z", GetLastCheck())
+               << " (" << GetLastCheck() << ") to next check time at " << Utility::FormatDateTime("%Y-%m-%d %H:%M:%S %z", nextCheck) << "(" << nextCheck << ").";
+
+       SetNextCheck(nextCheck, false, origin);
 }
 
 bool Checkable::HasBeenChecked() const