librenms/includes/discovery/sensors-netscaler.inc.php
2015-07-11 16:12:35 +02:00

49 lines
1.2 KiB
PHP

<?php
echo ' NetScaler ';
echo ' Caching OIDs:';
if (!is_array($ns_sensor_array)) {
$ns_sensor_array = array();
echo ' sysHealthCounterValue ';
$ns_sensor_array = snmpwalk_cache_multi_oid($device, 'sysHealthCounterValue', $ns_sensor_array, 'NS-ROOT-MIB');
}
foreach ($ns_sensor_array as $descr => $data) {
$current = $data['sysHealthCounterValue'];
$oid = '.1.3.6.1.4.1.5951.4.1.1.41.7.1.2.'.string_to_oid($descr);
if (strpos($descr, 'Temp') !== false) {
$divisor = 0;
$multiplier = 0;
$type = 'temperature';
}
else if (strpos($descr, 'Fan') !== false) {
$divisor = 0;
$multiplier = 0;
$type = 'fanspeed';
}
else if (strpos($descr, 'Volt') !== false) {
$divisor = 1000;
$multiplier = 0;
$type = 'voltage';
}
else if (strpos($descr, 'Vtt') !== false) {
$divisor = 1000;
$multiplier = 0;
$type = 'voltage';
}
if ($divisor) {
$current = ($current / $divisor);
};
discover_sensor($valid['sensor'], $type, $device,
$oid, $descr, 'netscaler-health',
$descr, $divisor, $multiplier, null, null, null, null, $current);
}
unset($ns_sensor_array);