newdevice: Stop discoverying frequencies on Raritan devices that do not exist + added voltage (#7195)

* fix: Stop discoverying frequencies on Raritan devices that do not exist

* updated to include voltage as well

* Updated incorrect OID for voltage
This commit is contained in:
Neil Lathwood 2017-08-22 23:01:06 +01:00 committed by GitHub
parent 03ff4cf236
commit 53b3d5ff5f
3 changed files with 17 additions and 3 deletions

View File

@ -16,9 +16,9 @@ foreach (explode("\n", $inlet_oids) as $inlet_data) {
$inlet_oid = ".1.3.6.1.4.1.13742.6.5.2.3.1.4.$inlet_index.23";
$inlet_divisor = pow(10, snmp_get($device, "inletSensorDecimalDigits.$inlet_index.frequency", '-Ovq', 'PDU2-MIB'));
$inlet_frequency = (snmp_get($device, "measurementsInletSensorValue.$inlet_index.frequency", '-Ovq', 'PDU2-MIB') / $inlet_divisor);
if ($inlet_frequency >= 0) {
$inlet_frequency = snmp_get($device, "measurementsInletSensorValue.$inlet_index.frequency", '-Ovq', 'PDU2-MIB');
if (is_numeric($inlet_frequency)) {
$inlet_frequency = ($inlet_frequency / $inlet_divisor);
discover_sensor($valid['sensor'], 'frequency', $device, $inlet_oid, $inlet_index, 'raritan', $inlet_descr, $inlet_divisor, 1, null, null, null, null, $inlet_frequency);
}
}

View File

@ -28,3 +28,6 @@ $pre_cache['raritan_inletTable'] = snmpwalk_group($device, 'inletTable', 'PDU-MI
echo 'inletPoleTable ';
$pre_cache['raritan_inletPoleTable'] = snmpwalk_group($device, 'inletPoleTable', 'PDU-MIB', 2);
echo 'inletLabel ';
$pre_cache['raritan_inletLabel'] = snmpwalk_cache_oid($device, 'inletLabel', array(), 'PDU2-MIB');

View File

@ -38,3 +38,14 @@ foreach ($pre_cache['raritan_inletTable'] as $index => $raritan_data) {
discover_sensor($valid["sensor"], "voltage", $device, $oid, $tmp_index, 'raritan', $descr, $divisor, 1, $low_limit, $low_limit, $warn_limit, $high_limit, $current);
}
}
foreach ($pre_cache['raritan_inletLabel'] as $index => $inlet_data) {
$inlet_descr = $inlet_data['inletLabel'];
$inlet_oid = ".1.3.6.1.4.1.13742.6.5.2.3.1.4.$index.4";
$inlet_divisor = pow(10, snmp_get($device, "inletSensorDecimalDigits.$index.rmsVoltage", '-Ovq', 'PDU2-MIB'));
$inlet_power = (snmp_get($device, "measurementsInletSensorValue.$index.rmsVoltage", '-Ovq', 'PDU2-MIB') / $inlet_divisor);
if ($inlet_power >= 0) {
discover_sensor($valid['sensor'], 'voltage', $device, $inlet_oid, $index.'.rmsVoltage', 'raritan', $inlet_descr, $inlet_divisor, 1, null, null, null, null, $inlet_power);
}
}