Fix RandomCheckTask result processing.

Fixes #5780
This commit is contained in:
Michael Friedrich 2014-03-16 22:26:17 +01:00
parent cb85a5c696
commit 2d38f68bd6
2 changed files with 3 additions and 4 deletions

View File

@ -31,7 +31,7 @@ using namespace icinga;
REGISTER_SCRIPTFUNCTION(RandomCheck, &RandomCheckTask::ScriptFunc);
CheckResult::Ptr RandomCheckTask::ScriptFunc(const Service::Ptr&)
void RandomCheckTask::ScriptFunc(const Service::Ptr& service, const CheckResult::Ptr& cr)
{
String output = "Hello from ";
output += Utility::GetHostName();
@ -39,12 +39,11 @@ CheckResult::Ptr RandomCheckTask::ScriptFunc(const Service::Ptr&)
Dictionary::Ptr perfdata = make_shared<Dictionary>();
perfdata->Set("time", Convert::ToDouble(Utility::GetTime()));
CheckResult::Ptr cr = make_shared<CheckResult>();
cr->SetOutput(output);
cr->SetPerformanceData(perfdata);
cr->SetState(static_cast<ServiceState>(Utility::Random() % 4));
cr->SetCheckSource(IcingaApplication::GetInstance()->GetNodeName());
return cr;
service->ProcessCheckResult(cr);
}

View File

@ -34,7 +34,7 @@ namespace icinga
class RandomCheckTask
{
public:
static CheckResult::Ptr ScriptFunc(const Service::Ptr& service);
static void ScriptFunc(const Service::Ptr& service, const CheckResult::Ptr& cr);
private:
RandomCheckTask(void);