mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
Fixes for misc unset variables in polling (#13421)
Remove $attribs global
This commit is contained in:
@@ -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";
|
||||
|
@@ -23,9 +23,5 @@ if (! isset($module) && validate_device_id($device['device_id']) === false) {
|
||||
$state = 0;
|
||||
}
|
||||
|
||||
if (isset($attribs['discover_' . $module]) && $attribs['discover_' . $module] != \LibreNMS\Config::get("discover_modules.$module")) {
|
||||
del_dev_attrib($device, $module);
|
||||
} else {
|
||||
set_dev_attrib($device, $module, $state);
|
||||
}
|
||||
}
|
||||
|
@@ -22,9 +22,5 @@ if (! isset($module) && validate_device_id($device['device_id']) === false) {
|
||||
$state = 0;
|
||||
}
|
||||
|
||||
if (isset($attribs['poll_' . $module]) && $attribs['poll_' . $module] != \LibreNMS\Config::get("poller_modules.$module")) {
|
||||
del_dev_attrib($device, $module);
|
||||
} else {
|
||||
set_dev_attrib($device, $module, $state);
|
||||
}
|
||||
}
|
||||
|
@@ -8,7 +8,9 @@ if (Config::get('enable_inventory')) {
|
||||
}
|
||||
|
||||
// Update State
|
||||
if (isset($entPhysical_state)) {
|
||||
include 'includes/polling/entity-physical/state.inc.php';
|
||||
}
|
||||
} else {
|
||||
echo 'Disabled!';
|
||||
}//end if
|
||||
|
@@ -237,8 +237,7 @@ function poll_device($device, $force_module = false)
|
||||
$device_start = microtime(true);
|
||||
|
||||
$deviceModel = DeviceCache::getPrimary();
|
||||
$attribs = $deviceModel->getAttribs();
|
||||
$device['attribs'] = $attribs;
|
||||
$device['attribs'] = $deviceModel->getAttribs();
|
||||
|
||||
$os = \LibreNMS\OS::make($device);
|
||||
|
||||
@@ -317,11 +316,11 @@ function poll_device($device, $force_module = false)
|
||||
$os_module_status = Config::get("os.{$device['os']}.poller_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['poll_' . $module]) ? ($attribs['poll_' . $module] ? '+ ' : '- ') : ' '));
|
||||
d_echo('Device' . (isset($device['attribs']['poll_' . $module]) ? ($device['attribs']['poll_' . $module] ? '+ ' : '- ') : ' '));
|
||||
if ($force_module === true ||
|
||||
$attribs['poll_' . $module] ||
|
||||
($os_module_status && ! isset($attribs['poll_' . $module])) ||
|
||||
($module_status && ! isset($os_module_status) && ! isset($attribs['poll_' . $module]))) {
|
||||
$device['attribs']['poll_' . $module] ||
|
||||
($os_module_status && ! isset($device['attribs']['poll_' . $module])) ||
|
||||
($module_status && ! isset($os_module_status) && ! isset($device['attribs']['poll_' . $module]))) {
|
||||
$start_memory = memory_get_usage();
|
||||
$module_start = microtime(true);
|
||||
echo "\n#### Load poller module $module ####\n";
|
||||
@@ -359,7 +358,7 @@ function poll_device($device, $force_module = false)
|
||||
unlink($oldrrd);
|
||||
}
|
||||
unset($tags, $fields, $oldrrd);
|
||||
} elseif (isset($attribs['poll_' . $module]) && $attribs['poll_' . $module] == '0') {
|
||||
} elseif (isset($device['attribs']['poll_' . $module]) && $device['attribs']['poll_' . $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";
|
||||
|
@@ -8,11 +8,12 @@ $ipmi_rows = dbFetchRows("SELECT * FROM sensors WHERE device_id = ? AND poller_t
|
||||
if (is_array($ipmi_rows)) {
|
||||
d_echo($ipmi_rows);
|
||||
|
||||
if ($ipmi['host'] = $attribs['ipmi_hostname']) {
|
||||
$ipmi['port'] = filter_var($attribs['ipmi_port'], FILTER_VALIDATE_INT) ? $attribs['ipmi_port'] : '623';
|
||||
$ipmi['user'] = $attribs['ipmi_username'];
|
||||
$ipmi['password'] = $attribs['ipmi_password'];
|
||||
$ipmi['type'] = $attribs['ipmi_type'];
|
||||
if (isset($device['attribs']['ipmi_hostname'])) {
|
||||
$ipmi['host'] = $device['attribs']['ipmi_hostname'];
|
||||
$ipmi['port'] = filter_var($device['attribs']['ipmi_port'], FILTER_VALIDATE_INT) ? $device['attribs']['ipmi_port'] : '623';
|
||||
$ipmi['user'] = $device['attribs']['ipmi_username'];
|
||||
$ipmi['password'] = $device['attribs']['ipmi_password'];
|
||||
$ipmi['type'] = $device['attribs']['ipmi_type'];
|
||||
|
||||
echo 'Fetching IPMI sensor data...';
|
||||
|
||||
|
@@ -213,7 +213,7 @@ $port_stats = [];
|
||||
if ($device['os'] === 'f5' && (version_compare($device['version'], '11.2.0', '>=') && version_compare($device['version'], '11.7', '<'))) {
|
||||
require 'ports/f5.inc.php';
|
||||
} else {
|
||||
if (Config::getOsSetting($device['os'], 'polling.selected_ports') || $device['attribs']['selected_ports'] == 'true') {
|
||||
if (Config::getOsSetting($device['os'], 'polling.selected_ports') || (isset($device['attribs']['selected_ports']) && $device['attribs']['selected_ports'] == 'true')) {
|
||||
echo 'Selected ports polling ';
|
||||
|
||||
// remove the deleted and disabled ports and mark them skipped
|
||||
@@ -667,14 +667,14 @@ foreach ($ports as $port) {
|
||||
$tune_port = false;
|
||||
foreach ($data_oids as $oid) {
|
||||
if ($oid == 'ifAlias') {
|
||||
if ($attribs['ifName:' . $port['ifName']]) {
|
||||
if ($device['attribs']['ifName:' . $port['ifName']]) {
|
||||
$this_port['ifAlias'] = $port['ifAlias'];
|
||||
} else {
|
||||
$this_port['ifAlias'] = \LibreNMS\Util\StringHelpers::inferEncoding($this_port['ifAlias']);
|
||||
}
|
||||
}
|
||||
if ($oid == 'ifSpeed') {
|
||||
if ($attribs['ifSpeed:' . $port['ifName']]) {
|
||||
if ($device['attribs']['ifSpeed:' . $port['ifName']]) {
|
||||
$this_port['ifSpeed'] = $port['ifSpeed'];
|
||||
}
|
||||
}
|
||||
@@ -691,8 +691,8 @@ foreach ($ports as $port) {
|
||||
// if the value is different, update it
|
||||
|
||||
// rrdtune if needed
|
||||
$port_tune = $attribs['ifName_tune:' . $port['ifName']];
|
||||
$device_tune = $attribs['override_rrdtool_tune'];
|
||||
$port_tune = $device['attribs']['ifName_tune:' . $port['ifName']];
|
||||
$device_tune = $device['attribs']['override_rrdtool_tune'];
|
||||
if ($port_tune == 'true' ||
|
||||
($device_tune == 'true' && $port_tune != 'false') ||
|
||||
(Config::get('rrdtool_tune') == 'true' && $port_tune != 'false' && $device_tune != 'false')) {
|
||||
|
Reference in New Issue
Block a user