Added support for check output stored differently on daemon execution

This commit is contained in:
Lord Hepipud 2019-10-05 22:01:15 +02:00
parent a2afbbe5fc
commit 6d15aa47a0
3 changed files with 16 additions and 2 deletions

View file

@ -70,6 +70,8 @@ function Exit-IcingaThrowException()
$ExceptionTypeString $ExceptionTypeString
); );
if ($global:IcingaDaemonData.FrameworkRunningAsDaemon -eq $FALSE) {
Write-Host $OutputMessage; Write-Host $OutputMessage;
exit $IcingaEnums.IcingaExitCode.Unknown; exit $IcingaEnums.IcingaExitCode.Unknown;
}
} }

View file

@ -4,5 +4,9 @@ function Write-IcingaPluginOutput()
$Output $Output
); );
if ($global:IcingaDaemonData.FrameworkRunningAsDaemon -eq $FALSE) {
Write-Host $Output; Write-Host $Output;
} else {
$IcingaThreadContent['Scheduler']['PluginCache'] += $Output;
}
} }

View file

@ -6,8 +6,13 @@ function Write-IcingaPluginPerfData()
); );
$CheckResultCache = Get-IcingaCacheData -Space 'sc_daemon' -CacheStore 'checkresult' -KeyName $CheckCommand; $CheckResultCache = Get-IcingaCacheData -Space 'sc_daemon' -CacheStore 'checkresult' -KeyName $CheckCommand;
if ($global:IcingaDaemonData.FrameworkRunningAsDaemon -eq $FALSE) {
[string]$PerfDataOutput = (Get-IcingaPluginPerfDataContent -PerfData $PerformanceData -CheckResultCache $CheckResultCache); [string]$PerfDataOutput = (Get-IcingaPluginPerfDataContent -PerfData $PerformanceData -CheckResultCache $CheckResultCache);
Write-Host ([string]::Format('| {0}', $PerfDataOutput)); Write-Host ([string]::Format('| {0}', $PerfDataOutput));
} else {
[void](Get-IcingaPluginPerfDataContent -PerfData $PerformanceData -CheckResultCache $CheckResultCache -AsObject $TRUE);
}
} }
function Get-IcingaPluginPerfDataContent() function Get-IcingaPluginPerfDataContent()
@ -40,6 +45,9 @@ function Get-IcingaPluginPerfDataContent()
$compiledPerfData = (New-IcingaPerformanceDataEntry $data); $compiledPerfData = (New-IcingaPerformanceDataEntry $data);
if ($AsObject) {
$global:IcingaThreadContent['Scheduler']['PluginPerfData'] += $compiledPerfData;
}
$PerfDataOutput += $compiledPerfData; $PerfDataOutput += $compiledPerfData;
} }
} }