1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
3 #include "icinga/checkresult.hpp"
4 #include "icinga/checkresult-ti.cpp"
5 #include "base/scriptglobal.hpp"
7 using namespace icinga;
9 REGISTER_TYPE(CheckResult);
11 INITIALIZE_ONCE([]() {
12 ScriptGlobal::Set("Icinga.ServiceOK", ServiceOK, true);
13 ScriptGlobal::Set("Icinga.ServiceWarning", ServiceWarning, true);
14 ScriptGlobal::Set("Icinga.ServiceCritical", ServiceCritical, true);
15 ScriptGlobal::Set("Icinga.ServiceUnknown", ServiceUnknown, true);
17 ScriptGlobal::Set("Icinga.HostUp", HostUp, true);
18 ScriptGlobal::Set("Icinga.HostDown", HostDown, true);
21 double CheckResult::CalculateExecutionTime() const
23 return GetExecutionEnd() - GetExecutionStart();
26 double CheckResult::CalculateLatency() const
28 double latency = (GetScheduleEnd() - GetScheduleStart()) - CalculateExecutionTime();