mirror of https://github.com/Icinga/icinga2.git
Release checker mutex before writing log message.
This commit is contained in:
parent
0c9f635c46
commit
1375c64ad9
|
@ -158,17 +158,19 @@ void CheckerComponent::ExecuteCheckHelper(const Service::Ptr& service)
|
||||||
Log(LogCritical, "checker", "Exception occured while checking service '" + service->GetName() + "': " + boost::diagnostic_information(ex));
|
Log(LogCritical, "checker", "Exception occured while checking service '" + service->GetName() + "': " + boost::diagnostic_information(ex));
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::mutex::scoped_lock lock(m_Mutex);
|
{
|
||||||
|
boost::mutex::scoped_lock lock(m_Mutex);
|
||||||
|
|
||||||
/* remove the service from the list of pending services; if it's not in the
|
/* remove the service from the list of pending services; if it's not in the
|
||||||
* list this was a manual (i.e. forced) check and we must not re-add the
|
* list this was a manual (i.e. forced) check and we must not re-add the
|
||||||
* service to the services list because it's already there. */
|
* service to the services list because it's already there. */
|
||||||
CheckerComponent::ServiceSet::iterator it;
|
CheckerComponent::ServiceSet::iterator it;
|
||||||
it = m_PendingServices.find(service);
|
it = m_PendingServices.find(service);
|
||||||
if (it != m_PendingServices.end()) {
|
if (it != m_PendingServices.end()) {
|
||||||
m_PendingServices.erase(it);
|
m_PendingServices.erase(it);
|
||||||
m_IdleServices.insert(service);
|
m_IdleServices.insert(service);
|
||||||
m_CV.notify_all();
|
m_CV.notify_all();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Log(LogDebug, "checker", "Check finished for service '" + service->GetName() + "'");
|
Log(LogDebug, "checker", "Check finished for service '" + service->GetName() + "'");
|
||||||
|
|
Loading…
Reference in New Issue