$entry) { $descr = $entry['diskNumber'] . ' ('.$entry['diskChannel'].'): ' . trim($entry['diskModel']); $oid = ".1.3.6.1.4.1.4526.18.3.1.5.$index"; $value = $entry['diskTemperature']; if ($value != '') { discover_sensor_ng($device, 'temperature', $mib, 'diskTemperature', $oid, 'diskTemperature.'.$index, 'readynas-mib_diskTemperature', $descr, 1, $value, array('entPhysicalClass' => 'storage')); } $oid = ".1.3.6.1.4.1.4526.18.3.1.4.$index"; $value = $entry['diskState']; if ($value != '') { //discover_status($device, $oid, 'diskState.'.$index, 'readynas-mib_diskState', $descr, $value, array('entPhysicalClass' => 'storage')); } } /* enterprises.netgear.nasManager.fanTable.fanEntry.fanNumber.1 = INTEGER: 1 enterprises.netgear.nasManager.fanTable.fanEntry.fanRPM.1 = INTEGER: 2027 enterprises.netgear.nasManager.fanTable.fanEntry.fanType.1 = STRING: "none" */ $cache['readynas-mib']['fanTable'] = snmpwalk_cache_oid($device, 'fanTable', array(), 'READYNAS-MIB'); foreach ($cache['readynas-mib']['fanTable'] as $index => $entry) { $descr = 'Fan '. $entry['fanNumber'] . ' ('.$entry['fanType'].')'; $oid = ".1.3.6.1.4.1.4526.18.4.1.2.$index"; $value = $entry['fanRPM']; if ($value != '') { discover_sensor_ng($device, 'fanspeed', $mib, 'fanRPM', $oid, 'fanRPM.'.$index, 'readynas-mib_fanRPM', $descr, 1, $value, array('entPhysicalClass' => 'device')); } $oid = ".1.3.6.1.4.1.4526.22.4.1.3.$index"; $value = $entry['fanStatus']; if ($value != '') { //discover_status($device, $oid, 'fanStatus.'.$index, 'readynas-mib_fanStatus', $descr, $value, array('entPhysicalClass' => 'storage')); } } /* enterprises.netgear.nasManager.temperatureTable.temperatureEntry.temperatureNumber.1 = INTEGER: 1 enterprises.netgear.nasManager.temperatureTable.temperatureEntry.temperatureValue.1 = INTEGER: 98 enterprises.netgear.nasManager.temperatureTable.temperatureEntry.temperatureStatus.1 = STRING: "ok" */ $cache['readynas-mib']['temperatureTable'] = snmpwalk_cache_oid($device, 'temperatureTable', array(), 'READYNAS-MIB'); foreach ($cache['readynas-mib']['temperatureTable'] as $index => $entry) { $descr = 'Temperature '.$entry['temperatureNumber']; $oid = ".1.3.6.1.4.1.4526.18.5.1.2.$index"; $value = $entry['temperatureValue']; if ($value != '') { discover_sensor_ng($device,'temperature', $mib, 'temperatureValue', $oid, 'temperatureValue.'.$index, 'readynas-mib_temperatureValue', $descr, 1, $value, array('entPhysicalClass' => 'device')); } $oid = ".1.3.6.1.4.1.4526.22.5.1.3.$index"; $value = $entry['fanStatus']; if ($value != '') { //discover_status($device, $oid, 'fanStatus.'.$index, 'readynas-mib_fanStatus', $descr, $value, array('entPhysicalClass' => 'storage')); } } // EOF