Fixes for misc unset variables in polling (#13421)

Remove $attribs global
This commit is contained in:
Tony Murray
2021-10-25 14:35:18 -05:00
committed by GitHub
parent d23e75f967
commit b0e0d65c86
7 changed files with 28 additions and 35 deletions

View File

@@ -116,8 +116,7 @@ function discover_device(&$device, $force_module = false)
$valid = [];
// Reset $valid array
$attribs = DeviceCache::getPrimary()->getAttribs();
$device['attribs'] = $attribs;
$device['attribs'] = DeviceCache::getPrimary()->getAttribs();
$device_start = microtime(true);
// Start counting device poll time
@@ -140,11 +139,11 @@ function discover_device(&$device, $force_module = false)
$os_module_status = Config::getOsSetting($device['os'], "discovery_modules.$module");
d_echo('Modules status: Global' . (isset($module_status) ? ($module_status ? '+ ' : '- ') : ' '));
d_echo('OS' . (isset($os_module_status) ? ($os_module_status ? '+ ' : '- ') : ' '));
d_echo('Device' . (isset($attribs['discover_' . $module]) ? ($attribs['discover_' . $module] ? '+ ' : '- ') : ' '));
d_echo('Device' . (isset($device['attribs']['discover_' . $module]) ? ($device['attribs']['discover_' . $module] ? '+ ' : '- ') : ' '));
if ($force_module === true ||
! empty($attribs['discover_' . $module]) ||
($os_module_status && ! isset($attribs['discover_' . $module])) ||
($module_status && ! isset($os_module_status) && ! isset($attribs['discover_' . $module]))
! empty($device['attribs']['discover_' . $module]) ||
($os_module_status && ! isset($device['attribs']['discover_' . $module])) ||
($module_status && ! isset($os_module_status) && ! isset($device['attribs']['discover_' . $module]))
) {
$module_start = microtime(true);
$start_memory = memory_get_usage();
@@ -165,7 +164,7 @@ function discover_device(&$device, $force_module = false)
printf("\n>> Runtime for discovery module '%s': %.4f seconds with %s bytes\n", $module, $module_time, $module_mem);
$measurements->printChangedStats();
echo "#### Unload disco module $module ####\n\n";
} elseif (isset($attribs['discover_' . $module]) && $attribs['discover_' . $module] == '0') {
} elseif (isset($device['attribs']['discover_' . $module]) && $device['attribs']['discover_' . $module] == '0') {
echo "Module [ $module ] disabled on host.\n\n";
} elseif (isset($os_module_status) && $os_module_status == '0') {
echo "Module [ $module ] disabled on os.\n\n";