function is_mib_poller_enabled($device) { if (!is_module_enabled('poller', 'mib')) { return false; } if (!is_dev_attrib_enabled($device, 'poll_mib')) { d_echo('MIB module disabled for ' . $device['hostname'] . "\n"); return false; } return true; }
function poll_mibs($list, $device, &$graphs) { if (!is_dev_attrib_enabled($device, "poll_mib")) { d_echo("MIB module disabled for " . $device['hostname'] . "\n"); return; } $mibdefs = array(); echo "MIB-based polling:"; d_echo("\n"); foreach ($list as $name => $module) { $translated = snmp_translate($name, $module); if ($translated) { echo " {$module}::{$name}"; d_echo("\n"); $mod = $translated[0]; $nam = $translated[1]; $mibdefs[$nam] = snmp_mib_load($nam, $mod); $oids = snmpwalk_cache_oid($device, $nam, array(), $mod, null, "-OQUsb"); d_print_r($oids); save_mibs($device, $nam, $oids, $mibdefs[$nam], $graphs); } else { d_echo("MIB: no match for {$module}::{$name}\n"); } } d_echo("Done MIB-based polling"); echo "\n"; }