mirror of
https://github.com/librenms/librenms.git
synced 2024-09-21 10:28:13 +00:00
New OS: Schleifenbauer, entity-physical improvements, various html page fixes (#9471)
* Fix some comment and documentation typos. * Fix various entphysical page display issues. - Resolve flickering during loading (missing liClosed for nested items). - Clicking a sensor actually takes you to the matching graph now. * Add a few nicecase() calls to clean up html page display. * Create discover_entity_physical() function - Add discover_entity_physical() function into includes/discovery/functions.inc.php - This allows for an easy implementation of OS-specific entity-physical discovery. - Update includes/discovery/entity-physical/entity-physical.inc.php to use the new function. * Add power_consumed and power_factor sensors. * Two new icons, make more entPhysical data visible. * Pre-commit fix: blank line found at end of control structure. * Add Schleifenbauer OS support. * Now really fix the comment typo. * Fix parsing mistakes. * Add a generic count sensor. * Make the Schleifenbauer discovery use count instead of state sensors. * Don't place count sensor at the top, add sane limits for Schleifenbauer * Finetuning the rrd_options, changing Schleifenbauer sensor names. * Update schleifenbauer.svg * optimize logo too * add test data * fix sensor value display (spaces break it) * update entPhysicalIndex
This commit is contained in:
parent
ef41c9fd7d
commit
e0da083f5c
@ -184,7 +184,7 @@ class OS implements ProcessorDiscovery
|
||||
}
|
||||
}
|
||||
|
||||
d_echo("OS initilized as Generic\n");
|
||||
d_echo("OS initialized as Generic\n");
|
||||
return new Generic($device);
|
||||
}
|
||||
|
||||
|
@ -76,6 +76,6 @@ class StringHelpers
|
||||
'zfs' => 'ZFS',
|
||||
];
|
||||
|
||||
return isset($replacements[$string]) ? $replacements[$string] : ucfirst($string);
|
||||
return isset($replacements[$string]) ? $replacements[$string] : ucwords(str_replace(['_', '-'], ' ', $string));
|
||||
}
|
||||
}
|
||||
|
@ -14,6 +14,7 @@ Currently we have support for the following health metrics along with the values
|
||||
| charge | % |
|
||||
| chromatic_disperision | ps/nm |
|
||||
| cooling | W |
|
||||
| count | # |
|
||||
| current | A |
|
||||
| dbm | dBm |
|
||||
| delay | s |
|
||||
@ -23,6 +24,8 @@ Currently we have support for the following health metrics along with the values
|
||||
| humidity | % |
|
||||
| load | % |
|
||||
| power | W |
|
||||
| power_consumed | kWh |
|
||||
| power_factor | ratio |
|
||||
| pressure | kPa |
|
||||
| quality_factor | dB |
|
||||
| runtime | Min |
|
||||
|
@ -64,11 +64,11 @@ $config['geoloc']['api_key'] = "abcdefghijklmnopqrstuvwxyz";
|
||||
```
|
||||
Google:
|
||||
Pros: fast, accurate
|
||||
Cons: requares a credit card even for free account
|
||||
Cons: requires a credit card even for a free account
|
||||
|
||||
MapQuest:
|
||||
Pros: free, no credit card required
|
||||
Cons: inaccurate: most addresses are retured location at center of US
|
||||
Cons: inaccurate: most addresses are returned as locations at the center of the US
|
||||
|
||||
Bing:
|
||||
Pros: free, no credit card required, accurate
|
||||
|
1
html/images/logos/schleifenbauer.svg
Normal file
1
html/images/logos/schleifenbauer.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 8.9 KiB |
1
html/images/os/schleifenbauer.svg
Normal file
1
html/images/os/schleifenbauer.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 61.184 60.719"><text y="167.216" x="-420.657" style="-inkscape-font-specification:SourceSansPro-Regular" font-weight="400" font-size="12" font-family="Source Sans Pro" fill="#fff" stroke-width="1.333"><tspan y="167.216" x="-420.6568 -414.24881 -407.39679 -399.57278 -393.74078 -387.41681 -384.2608 -378.33279 -372.00879 -364.24481 -357.18881 -350.84079 -343.1008 -336.77679 -329.94879 -327.5488 -320.75677 -313.9288 -305.96078 -298.58078 -290.84079 -284.2048 -278.22879 -271.8208 -269.42078 -262.4368 -256.25681">SCHLEIFENBAUER PRODUCTS BV</tspan></text><text y="167.216" x="-253.871" style="-inkscape-font-specification:HelveticaNeue-Light" font-weight="300" font-size="9.333" font-family="GSGEOZ +HelveticaNeue-Light" fill="#fff" stroke-width="1.333"><tspan y="167.216" x="-253.87094 -249.20427">•</tspan></text><text y="167.216" x="-246.609" style="-inkscape-font-specification:SourceSansPro-Regular" font-weight="400" font-size="12" font-family="Source Sans Pro" fill="#fff" stroke-width="1.333"><tspan y="167.216" x="-246.60934 -237.99333 -229.37733 -221.24133 -218.25334 -213.22534 -207.75334 -201.22534 -198.16534 -192.21335 -189.26134 -185.87733 -179.92534 -173.36133 -166.89334 -160.84534 -154.31732 -148.36536 -144.87335 -142.01733 -136.06534 -129.53735">www.schleifenbauer.eu</tspan></text><text y="167.216" x="-127.164" style="-inkscape-font-specification:HelveticaNeue-Light" font-weight="300" font-size="9.333" font-family="GSGEOZ +HelveticaNeue-Light" fill="#fff" stroke-width="1.333"><tspan y="167.216" x="-127.16399 -122.49734">•</tspan></text><text y="167.216" x="-119.902" style="-inkscape-font-specification:SourceSansPro-Regular" font-weight="400" font-size="12" font-family="Source Sans Pro" fill="#fff" stroke-width="1.333"><tspan y="167.216" x="-119.90228 -116.95025 -110.38625 -106.99026 -100.48626 -90.322258 -85.294273 -79.822258 -73.294273 -70.234276 -64.282249 -61.330257 -57.934261 -51.982265 -45.41827 -38.950253 -32.902279 -26.374264 -20.422268 -16.942257 -14.074276 -8.1222801 -1.5942646">info@schleifenbauer.eu</tspan></text><path d="M20.899 59.172c9.805-4.634 14.548-12.628 17.774-21.883 1.355-3.884 3.03-7.659 4.58-11.475 1.415-3.481 4.152-4.961 7.78-5.162 3.082-.172 4.368-1.404 4.303-3.94-.064-2.442-1.493-3.48-4.644-3.564C44.593 12.982 40 15.685 37.31 20.96c-2.553 5.01-4.316 10.417-6.694 15.524-1.692 3.63-3.51 7.287-5.854 10.508-2.869 3.945-7.108 6.05-12.068 5.98-1.413-.02-3.213-.724-4.154-1.743C.695 42.744-1.928 32.78 1.433 21.68 4.865 10.348 12.724 3.406 24.223.744c5.033-1.166 10.11-.976 15.37.674-.36.402-.522.718-.78.85-7.62 3.918-12.116 10.429-15.133 18.176-1.723 4.424-3.472 8.838-5.177 13.268-1.582 4.106-4.396 6.364-8.94 6.409-2.5.025-3.81 1.564-3.682 3.964.13 2.401 1.48 3.417 3.85 3.521 6.134.266 11.014-2.056 13.837-7.474 2.513-4.824 4.239-10.051 6.541-14.995 1.77-3.797 3.56-7.665 5.944-11.079 2.98-4.258 7.46-6.41 12.73-6.313 1.262.023 2.857.66 3.706 1.57 8.06 8.61 10.664 18.745 7.192 30.015-3.418 11.096-11.194 17.958-22.45 20.623-5.19 1.23-10.48.988-16.332-.781" fill="#4cb7dd"/></svg>
|
After Width: | Height: | Size: 3.0 KiB |
@ -64,7 +64,7 @@ function data_uri($file, $mime)
|
||||
function nicecase($item)
|
||||
{
|
||||
return \LibreNMS\Util\StringHelpers::niceCase($item);
|
||||
}//end nicecase()
|
||||
}
|
||||
|
||||
|
||||
function toner2colour($descr, $percent)
|
||||
|
8
html/includes/graphs/device/count.inc.php
Normal file
8
html/includes/graphs/device/count.inc.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
$class = 'count';
|
||||
$unit = '';
|
||||
$unit_long = '';
|
||||
|
||||
$rrd_options .= " -o";
|
||||
require 'includes/graphs/device/sensor.inc.php';
|
7
html/includes/graphs/device/power_consumed.inc.php
Normal file
7
html/includes/graphs/device/power_consumed.inc.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
$class = 'power_consumed';
|
||||
$unit = 'kWh';
|
||||
$unit_long = 'Kilowatt Hour';
|
||||
|
||||
require 'includes/graphs/device/sensor.inc.php';
|
8
html/includes/graphs/device/power_factor.inc.php
Normal file
8
html/includes/graphs/device/power_factor.inc.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
$class = 'power_factor';
|
||||
$unit = '';
|
||||
$unit_long = '';
|
||||
|
||||
$rrd_options .= " -o";
|
||||
require 'includes/graphs/device/sensor.inc.php';
|
18
html/includes/graphs/sensor/count.inc.php
Normal file
18
html/includes/graphs/sensor/count.inc.php
Normal file
@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
require 'includes/graphs/common.inc.php';
|
||||
|
||||
$rrd_options .= " COMMENT:' Min Max Last\\n'";
|
||||
$rrd_options .= " DEF:sensor=$rrd_filename:sensor:AVERAGE";
|
||||
$rrd_options .= " LINE1.5:sensor#cc0000:'".rrdtool_escape($sensor['sensor_descr'], 30)."'";
|
||||
$rrd_options .= ' GPRINT:sensor:MIN:%8.0lf';
|
||||
$rrd_options .= ' GPRINT:sensor:MAX:%8.0lf';
|
||||
$rrd_options .= ' GPRINT:sensor:LAST:%8.0lf\l';
|
||||
|
||||
if (is_numeric($sensor['sensor_limit'])) {
|
||||
$rrd_options .= ' HRULE:'.$sensor['sensor_limit'].'#999999::dashes';
|
||||
}
|
||||
|
||||
if (is_numeric($sensor['sensor_limit_low'])) {
|
||||
$rrd_options .= ' HRULE:'.$sensor['sensor_limit_low'].'#999999::dashes';
|
||||
}
|
17
html/includes/graphs/sensor/power_consumed.inc.php
Normal file
17
html/includes/graphs/sensor/power_consumed.inc.php
Normal file
@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
require 'includes/graphs/common.inc.php';
|
||||
|
||||
$rrd_options .= " COMMENT:' Min Max\\n'";
|
||||
$rrd_options .= " DEF:sensor=$rrd_filename:sensor:AVERAGE";
|
||||
$rrd_options .= " LINE1.5:sensor#cc0000:'".rrdtool_escape($sensor['sensor_descr'], 34)."'";
|
||||
$rrd_options .= ' GPRINT:sensor:MIN:%8.0lfkWh';
|
||||
$rrd_options .= ' GPRINT:sensor:MAX:%8.0lfkWh\l';
|
||||
|
||||
if (is_numeric($sensor['sensor_limit'])) {
|
||||
$rrd_options .= ' HRULE:'.$sensor['sensor_limit'].'#999999::dashes';
|
||||
}
|
||||
|
||||
if (is_numeric($sensor['sensor_limit_low'])) {
|
||||
$rrd_options .= ' HRULE:'.$sensor['sensor_limit_low'].'#999999::dashes';
|
||||
}
|
25
html/includes/graphs/sensor/power_factor.inc.php
Normal file
25
html/includes/graphs/sensor/power_factor.inc.php
Normal file
@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
// Power factor can be positive (drawing power from a source) or negative (feeding power to a sink).
|
||||
// However, most equipment only deals with power in a single direction so we can overwrite the defaults where relevant.
|
||||
is_numeric($sensor['sensor_limit_low']) ? $scale_min = $sensor['sensor_limit_low'] : $scale_min = '-1';
|
||||
is_numeric($sensor['sensor_limit']) ? $scale_max = $sensor['sensor_limit'] : $scale_max = '1';
|
||||
|
||||
require 'includes/graphs/common.inc.php';
|
||||
|
||||
$rrd_options .= " COMMENT:' Min Max Last\\n'";
|
||||
$rrd_options .= " DEF:sensor=$rrd_filename:sensor:AVERAGE";
|
||||
$rrd_options .= " LINE1.5:sensor#cc0000:'".rrdtool_escape($sensor['sensor_descr'], 30)."'";
|
||||
$rrd_options .= ' GPRINT:sensor:MIN:%1.4lf';
|
||||
$rrd_options .= ' GPRINT:sensor:MAX:%1.4lf';
|
||||
$rrd_options .= ' GPRINT:sensor:LAST:%1.4lf\l';
|
||||
|
||||
if (is_numeric($sensor['sensor_limit'])) {
|
||||
$rrd_options .= ' HRULE:'.$sensor['sensor_limit'].'#999999::dashes';
|
||||
}
|
||||
|
||||
$rrd_options .= ' HRULE:0#999999';
|
||||
|
||||
if (is_numeric($sensor['sensor_limit_low'])) {
|
||||
$rrd_options .= ' HRULE:'.$sensor['sensor_limit_low'].'#999999::dashes';
|
||||
}
|
@ -392,8 +392,11 @@ $icons = array(
|
||||
'current' => 'bolt',
|
||||
'frequency' => 'line-chart',
|
||||
'power' => 'power-off',
|
||||
'power_consumed' => 'plug',
|
||||
'power_factor' => 'calculator',
|
||||
'voltage' => 'bolt',
|
||||
'charge' => 'battery-half',
|
||||
'count' => 'hashtag',
|
||||
'dbm' => 'sun-o',
|
||||
'load' => 'percent',
|
||||
'runtime' => 'hourglass-half',
|
||||
@ -424,7 +427,7 @@ if ($sep && array_keys($menu_sensors)) {
|
||||
$sep = 0;
|
||||
}
|
||||
|
||||
foreach (array('current','frequency','power','voltage') as $item) {
|
||||
foreach (array('current','frequency','power','voltage','power_consumed','power_factor') as $item) {
|
||||
if (isset($menu_sensors[$item])) {
|
||||
echo(' <li><a href="health/metric='.$item.'/"><i class="fa fa-'.$icons[$item].' fa-fw fa-lg" aria-hidden="true"></i> '.nicecase($item).'</a></li>');
|
||||
unset($menu_sensors[$item]);
|
||||
|
@ -21,10 +21,14 @@ function printEntPhysical($device, $ent, $level, $class)
|
||||
echo '<i class="fa fa-heartbeat fa-lg icon-theme" aria-hidden="true"></i> ';
|
||||
$sensor = dbFetchRow('SELECT * FROM `sensors` WHERE `device_id` = ? AND (`entPhysicalIndex` = ? OR `sensor_index` = ?)', array($device['device_id'], $ent['entPhysicalIndex'], $ent['entPhysicalIndex']));
|
||||
if (count($sensor)) {
|
||||
$link = "<a href='device/device=" . $device['device_id'] . '/tab=health/metric=' . $sensor['sensor_class'] . "/' onmouseover=\"return overlib('<img src=\'graph.php?id=" . $sensor['sensor_id'] . '&type=sensor_' . $sensor['sensor_class'] . '&from=-2d&to=now&width=400&height=150&a=' . $ent['entPhysical_id'] . "\'><img src=\'graph.php?id=" . $sensor['sensor_id'] . '&type=sensor_' . $sensor['sensor_class'] . '&from=-2w&to=now&width=400&height=150&a=' . $ent['entPhysical_id'] . "\'>', LEFT,FGCOLOR,'#e5e5e5', BGCOLOR, '#c0c0c0', BORDER, 5, CELLPAD, 4, CAPCOLOR, '#050505');\" onmouseout=\"return nd();\">";
|
||||
$link = "<a href='graphs/id=" . $sensor['sensor_id'] . '/type=sensor_' . $sensor['sensor_class'] . "/' onmouseover=\"return overlib('<img src=\'graph.php?id=" . $sensor['sensor_id'] . '&type=sensor_' . $sensor['sensor_class'] . '&from=-2d&to=now&width=400&height=150&a=' . $ent['entPhysical_id'] . "\'><img src=\'graph.php?id=" . $sensor['sensor_id'] . '&type=sensor_' . $sensor['sensor_class'] . '&from=-2w&to=now&width=400&height=150&a=' . $ent['entPhysical_id'] . "\'>', LEFT,FGCOLOR,'#e5e5e5', BGCOLOR, '#c0c0c0', BORDER, 5, CELLPAD, 4, CAPCOLOR, '#050505');\" onmouseout=\"return nd();\">";
|
||||
}
|
||||
} elseif ($ent['entPhysicalClass'] == 'backplane') {
|
||||
echo '<i class="fa fa-bars fa-lg icon-theme" aria-hidden="true"></i> ';
|
||||
} elseif ($ent['entPhysicalClass'] == 'stack') {
|
||||
echo '<i class="fa fa-list-ol fa-lg icon-theme" aria-hidden="true"></i> ';
|
||||
} elseif ($ent['entPhysicalClass'] == 'powerSupply') {
|
||||
echo '<i class="fa fa-bolt fa-lg icon-theme" aria-hidden="true"></i> ';
|
||||
}
|
||||
|
||||
if ($ent['entPhysicalParentRelPos'] > '-1') {
|
||||
@ -97,6 +101,14 @@ function printEntPhysical($device, $ent, $level, $class)
|
||||
|
||||
echo "<br /><div class='interface-desc' style='margin-left: 20px;'>".$ent['entPhysicalDescr'];
|
||||
|
||||
if ($ent['entPhysicalAlias'] && $ent['entPhysicalAssetID']) {
|
||||
echo " <br />Alias: ".$ent['entPhysicalAlias']." - AssetID: ".$ent['entPhysicalAssetID'];
|
||||
} elseif ($ent['entPhysicalAlias']) {
|
||||
echo " <br />Alias: ".$ent['entPhysicalAlias'];
|
||||
} elseif ($ent['entPhysicalAssetID']) {
|
||||
echo " <br />AssetID: ".$ent['entPhysicalAssetID'];
|
||||
}
|
||||
|
||||
if ($ent['entPhysicalSerialNum']) {
|
||||
echo " <br /><span style='color: #000099;'>Serial No. ".$ent['entPhysicalSerialNum'].'</span> ';
|
||||
}
|
||||
@ -106,7 +118,7 @@ function printEntPhysical($device, $ent, $level, $class)
|
||||
$count = dbFetchCell("SELECT COUNT(*) FROM `entPhysical` WHERE device_id = '".$device['device_id']."' AND entPhysicalContainedIn = '".$ent['entPhysicalIndex']."'");
|
||||
if ($count) {
|
||||
echo '<ul>';
|
||||
printEntPhysical($device, $ent['entPhysicalIndex'], ($level + 1), '');
|
||||
printEntPhysical($device, $ent['entPhysicalIndex'], ($level + 1), 'liClosed');
|
||||
echo '</ul>';
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,7 @@ $diskio = get_disks($device['device_id']);
|
||||
$mempools = dbFetchCell('select count(*) from mempools WHERE device_id = ?', array($device['device_id'])) + count_mib_mempools($device);
|
||||
$processor = dbFetchCell('select count(*) from processors WHERE device_id = ?', array($device['device_id'])) + count_mib_processors($device);
|
||||
|
||||
$charge = dbFetchCell("select count(*) from sensors WHERE sensor_class='charge' AND device_id = ?", array($device['device_id']));
|
||||
$count = dbFetchCell("select count(*) from sensors WHERE sensor_class='count' AND device_id = ?", array($device['device_id']));
|
||||
$temperatures = dbFetchCell("select count(*) from sensors WHERE sensor_class='temperature' AND device_id = ?", array($device['device_id']));
|
||||
$humidity = dbFetchCell("select count(*) from sensors WHERE sensor_class='humidity' AND device_id = ?", array($device['device_id']));
|
||||
$fans = dbFetchCell("select count(*) from sensors WHERE sensor_class='fanspeed' AND device_id = ?", array($device['device_id']));
|
||||
@ -14,8 +14,11 @@ $current = dbFetchCell("select count(*) from sensors WHERE sensor_
|
||||
$freqs = dbFetchCell("select count(*) from sensors WHERE sensor_class='frequency' AND device_id = ?", array($device['device_id']));
|
||||
$runtime = dbFetchCell("select count(*) from sensors WHERE sensor_class='runtime' AND device_id = ?", array($device['device_id']));
|
||||
$power = dbFetchCell("select count(*) from sensors WHERE sensor_class='power' AND device_id = ?", array($device['device_id']));
|
||||
$power_consumed = dbFetchCell("select count(*) from sensors WHERE sensor_class='power_consumed' AND device_id = ?", array($device['device_id']));
|
||||
$power_factor = dbFetchCell("select count(*) from sensors WHERE sensor_class='power_factor' AND device_id = ?", array($device['device_id']));
|
||||
$dBm = dbFetchCell("select count(*) from sensors WHERE sensor_class='dBm' AND device_id = ?", array($device['device_id']));
|
||||
$states = dbFetchCell("select count(*) from sensors WHERE sensor_class='state' AND device_id = ?", array($device['device_id']));
|
||||
$charge = dbFetchCell("select count(*) from sensors WHERE sensor_class='charge' AND device_id = ?", array($device['device_id']));
|
||||
$load = dbFetchCell("select count(*) from sensors WHERE sensor_class='load' AND device_id = ?", array($device['device_id']));
|
||||
$signal = dbFetchCell("select count(*) from sensors WHERE sensor_class='signal' AND device_id = ?", array($device['device_id']));
|
||||
$airflow = dbFetchCell("select count(*) from sensors WHERE sensor_class='airflow' AND device_id = ?", array($device['device_id']));
|
||||
@ -83,6 +86,14 @@ if ($power) {
|
||||
$datas[] = 'power';
|
||||
}
|
||||
|
||||
if ($power_consumed) {
|
||||
$datas[] = 'power_consumed';
|
||||
}
|
||||
|
||||
if ($power_factor) {
|
||||
$datas[] = 'power_factor';
|
||||
}
|
||||
|
||||
if ($dBm) {
|
||||
$datas[] = 'dbm';
|
||||
}
|
||||
@ -91,6 +102,10 @@ if ($states) {
|
||||
$datas[] = 'state';
|
||||
}
|
||||
|
||||
if ($count) {
|
||||
$datas[] = 'count';
|
||||
}
|
||||
|
||||
if ($load) {
|
||||
$datas[] = 'load';
|
||||
}
|
||||
@ -153,8 +168,11 @@ $type_text['frequency'] = 'Frequency';
|
||||
$type_text['runtime'] = 'Runtime remaining';
|
||||
$type_text['current'] = 'Current';
|
||||
$type_text['power'] = 'Power';
|
||||
$type_text['power_consumed'] = 'Power Consumed';
|
||||
$type_text['power_factor'] = 'Power Factor';
|
||||
$type_text['dbm'] = 'dBm';
|
||||
$type_text['state'] = 'State';
|
||||
$type_text['count'] = 'Count';
|
||||
$type_text['load'] = 'Load';
|
||||
$type_text['signal'] = 'Signal';
|
||||
$type_text['airflow'] = 'Airflow';
|
||||
|
7
html/pages/device/health/count.inc.php
Normal file
7
html/pages/device/health/count.inc.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
$class = 'count';
|
||||
$unit = '';
|
||||
$graph_type = 'sensor_count';
|
||||
|
||||
require 'sensors.inc.php';
|
7
html/pages/device/health/power_consumed.inc.php
Normal file
7
html/pages/device/health/power_consumed.inc.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
$class = 'power_consumed';
|
||||
$unit = 'kWh';
|
||||
$graph_type = 'sensor_power_consumed';
|
||||
|
||||
require 'sensors.inc.php';
|
7
html/pages/device/health/power_factor.inc.php
Normal file
7
html/pages/device/health/power_factor.inc.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
$class = 'power_factor';
|
||||
$unit = '';
|
||||
$graph_type = 'sensor_power_factor';
|
||||
|
||||
require 'sensors.inc.php';
|
@ -23,13 +23,13 @@ foreach (dbFetchRows('SELECT * FROM `sensors` WHERE `sensor_class` = ? AND `devi
|
||||
$sensor_current = get_state_label($sensor['state_generic_value'], $state_translation[0]['state_descr'] . " (".$sensor['sensor_current'].")");
|
||||
} else {
|
||||
$current_label = get_sensor_label_color($sensor);
|
||||
$sensor_current = "<span class='label $current_label'>".format_si($sensor['sensor_current']).$unit."</span>";
|
||||
$sensor_current = "<span class='label $current_label'>".trim(format_si($sensor['sensor_current']).$unit)."</span>";
|
||||
}
|
||||
|
||||
$sensor_limit = format_si($sensor['sensor_limit']).$unit;
|
||||
$sensor_limit_low = format_si($sensor['sensor_limit_low']).$unit;
|
||||
$sensor_limit_warn = format_si($sensor['sensor_limit_warn']).$unit;
|
||||
$sensor_limit_low_warn = format_si($sensor['sensor_limit_low_warn']).$unit;
|
||||
$sensor_limit = trim(format_si($sensor['sensor_limit']).$unit);
|
||||
$sensor_limit_low = trim(format_si($sensor['sensor_limit_low']).$unit);
|
||||
$sensor_limit_warn = trim(format_si($sensor['sensor_limit_warn']).$unit);
|
||||
$sensor_limit_low_warn = trim(format_si($sensor['sensor_limit_low_warn']).$unit);
|
||||
|
||||
echo "<div class='panel panel-default'>
|
||||
<div class='panel-heading'>
|
||||
@ -49,7 +49,7 @@ foreach (dbFetchRows('SELECT * FROM `sensors` WHERE `sensor_class` = ? AND `devi
|
||||
echo " <span class='label label-default'>high: $sensor_limit</span>";
|
||||
}
|
||||
|
||||
echo "</div></h3>
|
||||
echo "</div></div>
|
||||
</div>";
|
||||
echo "<div class='panel-body'>";
|
||||
|
||||
|
@ -65,9 +65,12 @@ require 'overview/sensors/voltage.inc.php';
|
||||
require 'overview/sensors/current.inc.php';
|
||||
require 'overview/sensors/runtime.inc.php';
|
||||
require 'overview/sensors/power.inc.php';
|
||||
require 'overview/sensors/power_consumed.inc.php';
|
||||
require 'overview/sensors/power_factor.inc.php';
|
||||
require 'overview/sensors/frequency.inc.php';
|
||||
require 'overview/sensors/load.inc.php';
|
||||
require 'overview/sensors/state.inc.php';
|
||||
require 'overview/sensors/count.inc.php';
|
||||
require 'overview/sensors/signal.inc.php';
|
||||
require 'overview/sensors/airflow.inc.php';
|
||||
require 'overview/sensors/snr.inc.php';
|
||||
|
@ -34,12 +34,21 @@ if (count($sensors)) {
|
||||
case "power":
|
||||
$sensor_fa_icon = "fa-power-off";
|
||||
break;
|
||||
case "power_consumed":
|
||||
$sensor_fa_icon = "fa-plug";
|
||||
break;
|
||||
case "power_factor":
|
||||
$sensor_fa_icon = "fa-calculator";
|
||||
break;
|
||||
case "dBm":
|
||||
$sensor_fa_icon = "fa-signal";
|
||||
break;
|
||||
case "state":
|
||||
$sensor_fa_icon = "fa-bullseye";
|
||||
break;
|
||||
case "count":
|
||||
$sensor_fa_icon = "fa-hashtag";
|
||||
break;
|
||||
case "load":
|
||||
$sensor_fa_icon = "fa-percent";
|
||||
break;
|
||||
@ -59,7 +68,7 @@ if (count($sensors)) {
|
||||
<div class="col-md-12">
|
||||
<div class="panel panel-default panel-condensed">
|
||||
<div class="panel-heading">';
|
||||
echo '<a href="device/device='.$device['device_id'].'/tab=health/metric='.strtolower($sensor_type).'/"><i class="fa '.$sensor_fa_icon.' fa-lg icon-theme" aria-hidden="true"></i><strong> '.$sensor_type.'</strong></a>';
|
||||
echo '<a href="device/device='.$device['device_id'].'/tab=health/metric='.strtolower($sensor_type).'/"><i class="fa '.$sensor_fa_icon.' fa-lg icon-theme" aria-hidden="true"></i><strong> '.nicecase($sensor_type).'</strong></a>';
|
||||
echo ' </div>
|
||||
<table class="table table-hover table-condensed table-striped">';
|
||||
$group = '';
|
||||
|
8
html/pages/device/overview/sensors/count.inc.php
Normal file
8
html/pages/device/overview/sensors/count.inc.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
$graph_type = 'sensor_count';
|
||||
$sensor_class = 'count';
|
||||
$sensor_unit = '';
|
||||
$sensor_type = 'count';
|
||||
|
||||
require 'pages/device/overview/generic/sensor.inc.php';
|
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
$graph_type = 'sensor_power_consumed';
|
||||
$sensor_class = 'power_consumed';
|
||||
$sensor_unit = 'kWh';
|
||||
$sensor_type = 'power_consumed';
|
||||
|
||||
require 'pages/device/overview/generic/sensor.inc.php';
|
8
html/pages/device/overview/sensors/power_factor.inc.php
Normal file
8
html/pages/device/overview/sensors/power_factor.inc.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
$graph_type = 'sensor_power_factor';
|
||||
$sensor_class = 'power_factor';
|
||||
$sensor_unit = '';
|
||||
$sensor_type = 'power_factor';
|
||||
|
||||
require 'pages/device/overview/generic/sensor.inc.php';
|
@ -43,7 +43,7 @@ if (!$auth) {
|
||||
if (isset($config['graph_types'][$type][$subtype]['descr'])) {
|
||||
$title .= " :: " . $config['graph_types'][$type][$subtype]['descr'];
|
||||
} elseif ($type == "device" && $subtype == "collectd") {
|
||||
$title .= " :: " . ucfirst($subtype) . " :: " . $vars['c_plugin'];
|
||||
$title .= " :: " . nicecase($subtype) . " :: " . $vars['c_plugin'];
|
||||
if (isset($vars['c_plugin_instance'])) {
|
||||
$title .= " - " . $vars['c_plugin_instance'];
|
||||
}
|
||||
@ -52,7 +52,7 @@ if (!$auth) {
|
||||
$title .= " - " . $vars['c_type_instance'];
|
||||
}
|
||||
} else {
|
||||
$title .= " :: " . ucfirst($subtype);
|
||||
$title .= " :: " . nicecase($subtype);
|
||||
}
|
||||
|
||||
$graph_array = $vars;
|
||||
|
@ -45,6 +45,12 @@ if ($used_sensors['current']) {
|
||||
if ($used_sensors['power']) {
|
||||
$datas[] = 'power';
|
||||
}
|
||||
if ($used_sensors['power_consumed']) {
|
||||
$datas[] = 'power_consumed';
|
||||
}
|
||||
if ($used_sensors['power_factor']) {
|
||||
$datas[] = 'power_factor';
|
||||
}
|
||||
if ($used_sensors['dbm']) {
|
||||
$datas[] = 'dbm';
|
||||
}
|
||||
@ -54,6 +60,9 @@ if ($used_sensors['load']) {
|
||||
if ($used_sensors['state']) {
|
||||
$datas[] = 'state';
|
||||
}
|
||||
if ($used_sensors['count']) {
|
||||
$datas[] = 'count';
|
||||
}
|
||||
if ($used_sensors['signal']) {
|
||||
$datas[] = 'signal';
|
||||
}
|
||||
@ -102,10 +111,13 @@ $type_text['frequency'] = "Frequency";
|
||||
$type_text['runtime'] = "Runtime";
|
||||
$type_text['current'] = "Current";
|
||||
$type_text['power'] = "Power";
|
||||
$type_text['power_consumed'] = "Power Consumed";
|
||||
$type_text['power_factor'] = "Power Factor";
|
||||
$type_text['toner'] = "Toner";
|
||||
$type_text['dbm'] = "dBm";
|
||||
$type_text['load'] = "Load";
|
||||
$type_text['state'] = "State";
|
||||
$type_text['count'] = "Count";
|
||||
$type_text['signal'] = "Signal";
|
||||
$type_text['snr'] = "SNR";
|
||||
$type_text['pressure'] = "Pressure";
|
||||
|
7
html/pages/health/count.inc.php
Normal file
7
html/pages/health/count.inc.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
$graph_type = 'sensor_count';
|
||||
$class = 'count';
|
||||
$unit = '';
|
||||
|
||||
require 'pages/health/sensors.inc.php';
|
7
html/pages/health/power_consumed.inc.php
Normal file
7
html/pages/health/power_consumed.inc.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
$graph_type = 'sensor_power_consumed';
|
||||
$class = 'power_consumed';
|
||||
$unit = 'kWh';
|
||||
|
||||
require 'pages/health/sensors.inc.php';
|
7
html/pages/health/power_factor.inc.php
Normal file
7
html/pages/health/power_factor.inc.php
Normal file
@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
$graph_type = 'sensor_power_factor';
|
||||
$class = 'power_factor';
|
||||
$unit = '';
|
||||
|
||||
require 'pages/health/sensors.inc.php';
|
32
includes/definitions/discovery/schleifenbauer.yaml
Normal file
32
includes/definitions/discovery/schleifenbauer.yaml
Normal file
@ -0,0 +1,32 @@
|
||||
mib: SCHLEIFENBAUER-DATABUS-MIB
|
||||
modules:
|
||||
sensors:
|
||||
state:
|
||||
data:
|
||||
-
|
||||
oid: sdbMgmtStsRingState
|
||||
num_oid: '.1.3.6.1.4.1.31034.12.1.1.1.1.5.{{ $index }}'
|
||||
entPhysicalIndex: 2
|
||||
descr: 'Databus Ring State'
|
||||
index: 'sdbMgmtStsRingState.{{ $index }}'
|
||||
state_name: sdbMgmtStsRingState
|
||||
states:
|
||||
- { value: 0, generic: 2, graph: 0, descr: open }
|
||||
- { value: 1, generic: 0, graph: 1, descr: closed }
|
||||
count:
|
||||
data:
|
||||
-
|
||||
oid: sdbMgmtStsDuplicateDevices
|
||||
num_oid: '.1.3.6.1.4.1.31034.12.1.1.1.1.4.{{ $index }}'
|
||||
high_limit: '1'
|
||||
entPhysicalIndex: 3
|
||||
descr: 'Duplicate Device Addresses'
|
||||
index: 'sdbMgmtStsDuplicateDevices.{{ $index }}'
|
||||
-
|
||||
oid: sdbMgmtStsNewDevices
|
||||
num_oid: '.1.3.6.1.4.1.31034.12.1.1.1.1.3.{{ $index }}'
|
||||
warn_limit: 1
|
||||
high_limit: 2
|
||||
entPhysicalIndex: 4
|
||||
descr: 'New Devices'
|
||||
index: 'sdbMgmtStsNewDevices.{{ $index }}'
|
14
includes/definitions/schleifenbauer.yaml
Normal file
14
includes/definitions/schleifenbauer.yaml
Normal file
@ -0,0 +1,14 @@
|
||||
os: schleifenbauer
|
||||
text: 'Schleifenbauer SPDM'
|
||||
type: power
|
||||
icon: schleifenbauer
|
||||
group: schleifenbauer
|
||||
over:
|
||||
- { graph: device_current, text: 'Current' }
|
||||
- { graph: device_voltage, text: 'Voltage' }
|
||||
- { graph: device_power, text: 'Power' }
|
||||
mib_dir:
|
||||
- schleifenbauer
|
||||
discovery:
|
||||
- sysObjectID:
|
||||
- .1.3.6.1.4.1.31034.11.1
|
@ -10,7 +10,7 @@ if (Config::get('enable_inventory')) {
|
||||
include Config::get('install_dir') . "/includes/discovery/entity-physical/{$device['os']}.inc.php";
|
||||
}
|
||||
|
||||
// Delete any entries that have not bee accounted for.
|
||||
// Delete any entries that have not been accounted for.
|
||||
$sql = 'SELECT * FROM `entPhysical` WHERE `device_id` = ?';
|
||||
foreach (dbFetchRows($sql, array($device['device_id'])) as $test) {
|
||||
$id = $test['entPhysicalIndex'];
|
||||
|
@ -198,62 +198,7 @@ foreach ($entity_array as $entPhysicalIndex => $entry) {
|
||||
$entPhysicalModelName = $entPhysicalVendorTypes[$entPhysicalVendorType];
|
||||
}
|
||||
|
||||
// FIXME - dbFacile
|
||||
if ($entPhysicalDescr || $entPhysicalName) {
|
||||
$entPhysical_id = dbFetchCell('SELECT entPhysical_id FROM `entPhysical` WHERE device_id = ? AND entPhysicalIndex = ?', array($device['device_id'], $entPhysicalIndex));
|
||||
|
||||
if ($entPhysical_id) {
|
||||
$update_data = array(
|
||||
'entPhysicalIndex' => $entPhysicalIndex,
|
||||
'entPhysicalDescr' => $entPhysicalDescr,
|
||||
'entPhysicalClass' => $entPhysicalClass,
|
||||
'entPhysicalName' => $entPhysicalName,
|
||||
'entPhysicalModelName' => $entPhysicalModelName,
|
||||
'entPhysicalSerialNum' => $entPhysicalSerialNum,
|
||||
'entPhysicalContainedIn' => $entPhysicalContainedIn,
|
||||
'entPhysicalMfgName' => $entPhysicalMfgName,
|
||||
'entPhysicalParentRelPos' => $entPhysicalParentRelPos,
|
||||
'entPhysicalVendorType' => $entPhysicalVendorType,
|
||||
'entPhysicalHardwareRev' => $entPhysicalHardwareRev,
|
||||
'entPhysicalFirmwareRev' => $entPhysicalFirmwareRev,
|
||||
'entPhysicalSoftwareRev' => $entPhysicalSoftwareRev,
|
||||
'entPhysicalIsFRU' => $entPhysicalIsFRU,
|
||||
'entPhysicalAlias' => $entPhysicalAlias,
|
||||
'entPhysicalAssetID' => $entPhysicalAssetID,
|
||||
);
|
||||
dbUpdate($update_data, 'entPhysical', 'device_id=? AND entPhysicalIndex=?', array($device['device_id'], $entPhysicalIndex));
|
||||
echo '.';
|
||||
} else {
|
||||
$insert_data = array(
|
||||
'device_id' => $device['device_id'],
|
||||
'entPhysicalIndex' => $entPhysicalIndex,
|
||||
'entPhysicalDescr' => $entPhysicalDescr,
|
||||
'entPhysicalClass' => $entPhysicalClass,
|
||||
'entPhysicalName' => $entPhysicalName,
|
||||
'entPhysicalModelName' => $entPhysicalModelName,
|
||||
'entPhysicalSerialNum' => $entPhysicalSerialNum,
|
||||
'entPhysicalContainedIn' => $entPhysicalContainedIn,
|
||||
'entPhysicalMfgName' => $entPhysicalMfgName,
|
||||
'entPhysicalParentRelPos' => $entPhysicalParentRelPos,
|
||||
'entPhysicalVendorType' => $entPhysicalVendorType,
|
||||
'entPhysicalHardwareRev' => $entPhysicalHardwareRev,
|
||||
'entPhysicalFirmwareRev' => $entPhysicalFirmwareRev,
|
||||
'entPhysicalSoftwareRev' => $entPhysicalSoftwareRev,
|
||||
'entPhysicalIsFRU' => $entPhysicalIsFRU,
|
||||
'entPhysicalAlias' => $entPhysicalAlias,
|
||||
'entPhysicalAssetID' => $entPhysicalAssetID,
|
||||
);
|
||||
|
||||
if (!empty($ifIndex)) {
|
||||
$insert_data['ifIndex'] = $ifIndex;
|
||||
}
|
||||
|
||||
dbInsert($insert_data, 'entPhysical');
|
||||
echo '+';
|
||||
}//end if
|
||||
|
||||
$valid[$entPhysicalIndex] = 1;
|
||||
}//end if
|
||||
discover_entity_physical($valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex);
|
||||
}//end foreach
|
||||
echo "\n";
|
||||
unset(
|
||||
|
128
includes/discovery/entity-physical/schleifenbauer.inc.php
Normal file
128
includes/discovery/entity-physical/schleifenbauer.inc.php
Normal file
@ -0,0 +1,128 @@
|
||||
<?php
|
||||
/*
|
||||
* LibreNMS entity-physical module for discovery of components in a Schleifenbauer SPDM databus ring
|
||||
*
|
||||
* Copyright (c) 2018 Martijn Schmidt <martijn.schmidt@gmail.com>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version. Please see LICENSE.txt at the top level of
|
||||
* the source code distribution for details.
|
||||
*/
|
||||
|
||||
// Let's gather some data about the databus ring..
|
||||
$sdbMgmtStsDevices = snmp_get($device, '.1.3.6.1.4.1.31034.12.1.1.1.1.1.0', '-Oqv', '');
|
||||
$sdbMgmtDatabusRingDescr = "Schleifenbauer databus ring ($sdbMgmtStsDevices units)";
|
||||
|
||||
// Let's gather some data about the units..
|
||||
$sdbMgmtCtrlDevUnitAddressArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.1.2.4.1.2', 1));
|
||||
$sdbDevIdNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.10', 1));
|
||||
$sdbDevIdLocationArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.11', 1));
|
||||
$sdbDevIdVanityTagArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.12', 1));
|
||||
$sdbDevIdSerialNumberArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.6', 1));
|
||||
$sdbDevIdFirmwareVersionArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.2', 1));
|
||||
$sdbDevIdProductIdArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.5', 1));
|
||||
$sdbDevIdSalesOrderNumberArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.4', 1));
|
||||
$sdbDevCfMaximumLoadArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.2.1.1.6', 1));
|
||||
$sdbDevCfOutletsTotalArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.2.1.1.2', 1));
|
||||
$sdbDevCfSensorsArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.2.1.1.5', 1));
|
||||
|
||||
// And let's gather some data about the inputs, outputs, and sensors on those units..
|
||||
$sdbDevInNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.13', 2));
|
||||
$sdbDevSnsTypeArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.8.2.1.2', 2));
|
||||
$sdbDevSnsNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.8.2.1.4', 2));
|
||||
|
||||
// In a large databus ring, snmpwalking this OID may crash the discovery half way through.
|
||||
// So, we only discover and enumerate outlets if this is a stand-alone, non-databus unit.
|
||||
if ($sdbMgmtStsDevices == 1) {
|
||||
$sdbDevOutNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2', 2));
|
||||
}
|
||||
|
||||
// Only spawn databus ring entities when the device is not stand-alone.
|
||||
if ($sdbMgmtStsDevices > 1) {
|
||||
$entPhysicalContainedIn = 1;
|
||||
discover_entity_physical($valid, $device, 1, $sdbMgmtDatabusRingDescr, 'stack', 'Schleifenbauer Databus', null, null, '0', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
|
||||
discover_entity_physical($valid, $device, 2, 'Databus Ring State Sensor (0 = open, 1 = closed)', 'sensor', 'State Sensor', null, null, '1', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
|
||||
discover_entity_physical($valid, $device, 3, 'Duplicate Device Address Sensor (#)', 'sensor', 'State Sensor', null, null, '1', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
|
||||
discover_entity_physical($valid, $device, 4, 'New Device Detection Sensor (#)', 'sensor', 'State Sensor', null, null, '1', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
|
||||
} else {
|
||||
$entPhysicalContainedIn = 0;
|
||||
}
|
||||
|
||||
foreach ($sdbMgmtCtrlDevUnitAddressArray as $sdbMgmtCtrlDevUnitAddress => $sdbDevIdIndex) {
|
||||
$entPhysicalDescr = "Schleifenbauer ". count($sdbDevInNameArray[$sdbDevIdIndex]) ."-phase, ". $sdbDevCfOutletsTotalArray[$sdbDevIdIndex] ."-outlet PDU";
|
||||
$entPhysicalName = "Schleifenbauer PDU - SPDM v". $sdbDevIdFirmwareVersionArray[$sdbDevIdIndex];
|
||||
$entPhysicalHardwareRev = "SO# ". $sdbDevIdSalesOrderNumberArray[$sdbDevIdIndex];
|
||||
|
||||
// We are determining the $entPhysicalAlias for this PDU based on a few optional user-customizable fields.
|
||||
$entPhysicalAlias = null;
|
||||
if ($sdbDevIdNameArray[$sdbDevIdIndex] != '') {
|
||||
$entPhysicalAlias = $sdbDevIdLocationArray[$sdbDevIdIndex] != '' ? $sdbDevIdNameArray[$sdbDevIdIndex] ." @ ". $sdbDevIdLocationArray[$sdbDevIdIndex] : $sdbDevIdNameArray[$sdbDevIdIndex];
|
||||
} // end of $entPhysicalAlias if-sequence
|
||||
|
||||
discover_entity_physical($valid, $device, $sdbMgmtCtrlDevUnitAddress * 10, $entPhysicalDescr, 'chassis', $entPhysicalName, $sdbDevIdProductIdArray[$sdbDevIdIndex], $sdbDevIdSerialNumberArray[$sdbDevIdIndex], $entPhysicalContainedIn, 'Schleifenbauer Products B.V.', $sdbMgmtCtrlDevUnitAddress, null, $entPhysicalHardwareRev, null, $sdbDevIdFirmwareVersionArray[$sdbDevIdIndex], 'true', $entPhysicalAlias, $sdbDevIdVanityTagArray[$sdbDevIdIndex], null);
|
||||
|
||||
// Since a fully numerical entPhysicalIndex is only available for the actual PDU, we are calculating a fake entPhysicalIndex to avoid namespace collision. We have an Integer32 of space per IETF RFC6933 anyway.
|
||||
// The maximum sdbMgmtCtrlDevUnitAddress is 255, but multiplying by 1 million for namespace size. Add +100k for every top-level index below a PDU.
|
||||
foreach ($sdbDevInNameArray[$sdbDevIdIndex] as $sdbDevInIndex => $sdbDevInName) {
|
||||
$inputIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 100000 + $sdbDevInIndex * 1000; // +100k for the first top-level namespace. Add 1000 * sdbDevInIndex which goes up to 48. Leave 3 variable digits at the end.
|
||||
$entPhysicalDescr = $sdbDevCfMaximumLoadArray[$sdbDevIdIndex] ."A input phase";
|
||||
$entPhysicalName = "Input L". $sdbDevInIndex;
|
||||
|
||||
discover_entity_physical($valid, $device, $inputIndex, $entPhysicalDescr, 'powerSupply', $entPhysicalName, null, null, $sdbMgmtCtrlDevUnitAddress * 10, 'Schleifenbauer Products B.V.', $sdbDevInIndex, null, null, null, null, 'false', $sdbDevInName, null, null);
|
||||
|
||||
// Enumerate sensors under the Input
|
||||
discover_entity_physical($valid, $device, $inputIndex + 110, $entPhysicalName .' voltage sensor (V)', 'sensor', 'Voltage Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 1, null, null, null, null, 'false', null, null, null);
|
||||
discover_entity_physical($valid, $device, $inputIndex + 120, $entPhysicalName .' RMS current sensor (A)', 'sensor', 'Current Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 2, null, null, null, null, 'false', null, null, null);
|
||||
discover_entity_physical($valid, $device, $inputIndex + 130, $entPhysicalName .' apparent power sensor (W)', 'sensor', 'Power Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 3, null, null, null, null, 'false', null, null, null);
|
||||
discover_entity_physical($valid, $device, $inputIndex + 140, $entPhysicalName .' lifetime power consumed sensor (kWh)', 'sensor', 'Power Consumed Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 4, null, null, null, null, 'false', null, null, null);
|
||||
discover_entity_physical($valid, $device, $inputIndex + 150, $entPhysicalName .' power factor sensor (ratio)', 'sensor', 'Power Factor Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 5, null, null, null, null, 'false', null, null, null);
|
||||
} // end Input discovery foreach sdbDevInNameArray
|
||||
|
||||
// Only enumerate outlets if this is a stand-alone, non-databus unit.
|
||||
if ($sdbMgmtStsDevices == 1) {
|
||||
// Check if we can find any outlets on this PDU..
|
||||
if ($sdbDevOutNameArray[$sdbDevIdIndex] != '') {
|
||||
// We found outlets, so let's spawn an Outlet Backplane.
|
||||
$outletBackplaneIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 200000; // +200k for the second top-level index namespace.
|
||||
$entPhysicalDescr = $sdbDevCfOutletsTotalArray[$sdbDevIdIndex] ." outlets";
|
||||
|
||||
discover_entity_physical($valid, $device, $outletBackplaneIndex, $entPhysicalDescr, 'backplane', 'Outlets', null, null, $sdbMgmtCtrlDevUnitAddress * 10, 'Schleifenbauer Products B.V.', '-1', null, null, null, null, 'false', null, null, null);
|
||||
|
||||
foreach ($sdbDevOutNameArray[$sdbDevIdIndex] as $sdbDevOutIndex => $sdbDevOutName) {
|
||||
$outletIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 200000 + $sdbDevOutIndex * 1000; // +200k for the second top-level index namespace. Add 1000 * sdbDevOutIndex which goes up to 48. Leave 3 variable digits at the end.
|
||||
$entPhysicalName = "Outlet #". $sdbDevOutIndex;
|
||||
|
||||
discover_entity_physical($valid, $device, $outletIndex, 'PDU outlet', 'powerSupply', $entPhysicalName, null, null, $outletBackplaneIndex, 'Schleifenbauer Products B.V.', $sdbDevOutIndex, null, null, null, null, 'false', $sdbDevOutName, null, null);
|
||||
} // end Outlet discovery foreach sdbDevOutNameArray
|
||||
} // end of Outlet Backplane detection
|
||||
}
|
||||
|
||||
// Check if we can find any external sensor connections on this PDU..
|
||||
if ($sdbDevSnsTypeArray[$sdbDevIdIndex] != '') {
|
||||
// We found at least one sensor connection, so let's spawn a Sensor Container.
|
||||
$sensorContainerIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 300000; // +300k for the third top-level index namespace.
|
||||
$entPhysicalDescr = $sdbDevCfSensorsArray[$sdbDevIdIndex] == 1 ? "1 external sensor" : $sdbDevCfSensorsArray[$sdbDevIdIndex] ." external sensors";
|
||||
|
||||
discover_entity_physical($valid, $device, $sensorContainerIndex, $entPhysicalDescr, 'container', 'Sensor Container', null, null, $sdbMgmtCtrlDevUnitAddress * 10, 'Schleifenbauer Products B.V.', '-1', null, null, null, null, 'false', null, null, null);
|
||||
|
||||
foreach ($sdbDevSnsNameArray[$sdbDevIdIndex] as $sdbDevSnsIndex => $sdbDevSnsName) {
|
||||
$sensorIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 300000 + $sdbDevSnsIndex * 1000; // +300k for the third top-level index namespace. Add 1000 * sdbDevSnsIndex which goes up to 16. Leave 3 variable digits at the end.
|
||||
$entPhysicalName = "External Sensor #". $sdbDevSnsIndex;
|
||||
switch ($sdbDevSnsTypeArray[$sdbDevIdIndex][$sdbDevSnsIndex]) {
|
||||
case ('T'):
|
||||
$entPhysicalDescr = "Temperature sensor (°C)";
|
||||
break;
|
||||
case ('H'):
|
||||
$entPhysicalDescr = "Humidity sensor (%)";
|
||||
break;
|
||||
case ('I'):
|
||||
$entPhysicalDescr = "Dry switch contact (binary)";
|
||||
break;
|
||||
}
|
||||
|
||||
discover_entity_physical($valid, $device, $sensorIndex, $entPhysicalDescr, 'sensor', $entPhysicalName, null, null, $sensorContainerIndex, 'Schleifenbauer Products B.V.', $sdbDevSnsIndex, null, null, null, null, 'true', $sdbDevSnsName, null, null);
|
||||
} // end external Sensor discovery foreach sdbDevSnsNameArray
|
||||
} // end of external Sensor Container detection
|
||||
} // end PDU discovery foreach sdbDevIdNameArray
|
@ -392,6 +392,7 @@ function sensor_low_limit($class, $current)
|
||||
case 'humidity':
|
||||
$limit = 30;
|
||||
break;
|
||||
case 'count':
|
||||
case 'current':
|
||||
$limit = null;
|
||||
break;
|
||||
@ -401,6 +402,10 @@ function sensor_low_limit($class, $current)
|
||||
case 'power':
|
||||
$limit = null;
|
||||
break;
|
||||
case 'power_consumed':
|
||||
case 'power_factor':
|
||||
$limit = -1;
|
||||
break;
|
||||
case 'signal':
|
||||
$limit = -80;
|
||||
break;
|
||||
@ -443,10 +448,15 @@ function sensor_limit($class, $current)
|
||||
case 'humidity':
|
||||
$limit = 70;
|
||||
break;
|
||||
case 'count':
|
||||
case 'current':
|
||||
case 'power':
|
||||
$limit = $current * 1.50;
|
||||
break;
|
||||
case 'power_consumed':
|
||||
case 'power_factor':
|
||||
$limit = 1;
|
||||
break;
|
||||
case 'fanspeed':
|
||||
$limit = $current * 1.80;
|
||||
break;
|
||||
@ -741,6 +751,66 @@ function discover_toner(&$valid, $device, $oid, $index, $type, $descr, $capacity
|
||||
|
||||
//end discover_toner()
|
||||
|
||||
function discover_entity_physical(&$valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex)
|
||||
{
|
||||
d_echo("Discover Inventory Item: $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex\n");
|
||||
|
||||
if ($entPhysicalDescr || $entPhysicalName) {
|
||||
if (dbFetchCell('SELECT COUNT(entPhysical_id) FROM `entPhysical` WHERE `device_id` = ? AND `entPhysicalIndex` = ?', array($device['device_id'], $entPhysicalIndex)) == '0') {
|
||||
$insert_data = array(
|
||||
'device_id' => $device['device_id'],
|
||||
'entPhysicalIndex' => $entPhysicalIndex,
|
||||
'entPhysicalDescr' => $entPhysicalDescr,
|
||||
'entPhysicalClass' => $entPhysicalClass,
|
||||
'entPhysicalName' => $entPhysicalName,
|
||||
'entPhysicalModelName' => $entPhysicalModelName,
|
||||
'entPhysicalSerialNum' => $entPhysicalSerialNum,
|
||||
'entPhysicalContainedIn' => $entPhysicalContainedIn,
|
||||
'entPhysicalMfgName' => $entPhysicalMfgName,
|
||||
'entPhysicalParentRelPos' => $entPhysicalParentRelPos,
|
||||
'entPhysicalVendorType' => $entPhysicalVendorType,
|
||||
'entPhysicalHardwareRev' => $entPhysicalHardwareRev,
|
||||
'entPhysicalFirmwareRev' => $entPhysicalFirmwareRev,
|
||||
'entPhysicalSoftwareRev' => $entPhysicalSoftwareRev,
|
||||
'entPhysicalIsFRU' => $entPhysicalIsFRU,
|
||||
'entPhysicalAlias' => $entPhysicalAlias,
|
||||
'entPhysicalAssetID' => $entPhysicalAssetID,
|
||||
);
|
||||
if (!empty($ifIndex)) {
|
||||
$insert_data['ifIndex'] = $ifIndex;
|
||||
}
|
||||
|
||||
$inserted = dbInsert($insert_data, 'entPhysical');
|
||||
echo '+';
|
||||
log_event('Inventory Item added: index ' . $entPhysicalIndex . ' descr ' . $entPhysicalDescr, $device, 'entity-physical', 3, $inserted);
|
||||
} else {
|
||||
echo '.';
|
||||
$update_data = array(
|
||||
'entPhysicalIndex' => $entPhysicalIndex,
|
||||
'entPhysicalDescr' => $entPhysicalDescr,
|
||||
'entPhysicalClass' => $entPhysicalClass,
|
||||
'entPhysicalName' => $entPhysicalName,
|
||||
'entPhysicalModelName' => $entPhysicalModelName,
|
||||
'entPhysicalSerialNum' => $entPhysicalSerialNum,
|
||||
'entPhysicalContainedIn' => $entPhysicalContainedIn,
|
||||
'entPhysicalMfgName' => $entPhysicalMfgName,
|
||||
'entPhysicalParentRelPos' => $entPhysicalParentRelPos,
|
||||
'entPhysicalVendorType' => $entPhysicalVendorType,
|
||||
'entPhysicalHardwareRev' => $entPhysicalHardwareRev,
|
||||
'entPhysicalFirmwareRev' => $entPhysicalFirmwareRev,
|
||||
'entPhysicalSoftwareRev' => $entPhysicalSoftwareRev,
|
||||
'entPhysicalIsFRU' => $entPhysicalIsFRU,
|
||||
'entPhysicalAlias' => $entPhysicalAlias,
|
||||
'entPhysicalAssetID' => $entPhysicalAssetID,
|
||||
);
|
||||
dbUpdate($update_data, 'entPhysical', '`device_id`=? AND `entPhysicalIndex`=?', array($device['device_id'], $entPhysicalIndex));
|
||||
}//end if
|
||||
$valid[$entPhysicalIndex] = 1;
|
||||
}//end if
|
||||
}
|
||||
|
||||
//end discover_entity_physical()
|
||||
|
||||
function discover_process_ipv6(&$valid, $ifIndex, $ipv6_address, $ipv6_prefixlen, $ipv6_origin, $context_name = '')
|
||||
{
|
||||
global $device;
|
||||
|
@ -48,9 +48,12 @@ $run_sensors = array(
|
||||
'humidity',
|
||||
'load',
|
||||
'power',
|
||||
'power_consumed',
|
||||
'power_factor',
|
||||
'runtime',
|
||||
'signal',
|
||||
'state',
|
||||
'count',
|
||||
'temperature',
|
||||
'voltage',
|
||||
'snr',
|
||||
|
19
includes/discovery/sensors/current/schleifenbauer.inc.php
Normal file
19
includes/discovery/sensors/current/schleifenbauer.inc.php
Normal file
@ -0,0 +1,19 @@
|
||||
<?php
|
||||
echo 'Schleifenbauer ';
|
||||
$divisor = 100;
|
||||
|
||||
foreach ($pre_cache['sdbMgmtCtrlDevUnitAddress'] as $sdbMgmtCtrlDevUnitAddress => $sdbDevIdIndex) {
|
||||
foreach ($pre_cache['sdbDevInActualCurrent'][$sdbDevIdIndex] as $sdbDevInIndex => $sdbDevInActualCurrent) {
|
||||
$current_oid = ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5.$sdbDevIdIndex.$sdbDevInIndex";
|
||||
$current = $sdbDevInActualCurrent / $divisor;
|
||||
$serial_input = $pre_cache['sdbDevIdSerialNumber'][$sdbDevIdIndex] ."-L". $sdbDevInIndex;
|
||||
$descr = "$serial_input RMS Current";
|
||||
$warn_limit = $pre_cache['sdbDevInMaxAmps'][$sdbDevIdIndex][$sdbDevInIndex] / $divisor;
|
||||
$high_limit = $pre_cache['sdbDevCfMaximumLoad'][$sdbDevIdIndex];
|
||||
|
||||
// See includes/discovery/entity-physical/schleifenbauer.inc.php for an explanation why we set this as the entPhysicalIndex.
|
||||
$entPhysicalIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 100000 + $sdbDevInIndex * 1000 + 120;
|
||||
|
||||
discover_sensor($valid['sensor'], 'current', $device, $current_oid, $serial_input, 'schleifenbauer', $descr, $divisor, '1', null, null, $warn_limit, $high_limit, $current, 'snmp', $entPhysicalIndex);
|
||||
}
|
||||
}
|
15
includes/discovery/sensors/power/schleifenbauer.inc.php
Normal file
15
includes/discovery/sensors/power/schleifenbauer.inc.php
Normal file
@ -0,0 +1,15 @@
|
||||
<?php
|
||||
echo 'Schleifenbauer ';
|
||||
|
||||
foreach ($pre_cache['sdbMgmtCtrlDevUnitAddress'] as $sdbMgmtCtrlDevUnitAddress => $sdbDevIdIndex) {
|
||||
foreach ($pre_cache['sdbDevInPowerVoltAmpere'][$sdbDevIdIndex] as $sdbDevInIndex => $sdbDevInPowerVoltAmpere) {
|
||||
$power_oid = ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9.$sdbDevIdIndex.$sdbDevInIndex";
|
||||
$serial_input = $pre_cache['sdbDevIdSerialNumber'][$sdbDevIdIndex] ."-L". $sdbDevInIndex;
|
||||
$descr = "$serial_input Apparent Power";
|
||||
|
||||
// See includes/discovery/entity-physical/schleifenbauer.inc.php for an explanation why we set this as the entPhysicalIndex.
|
||||
$entPhysicalIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 100000 + $sdbDevInIndex * 1000 + 130;
|
||||
|
||||
discover_sensor($valid['sensor'], 'power', $device, $power_oid, $serial_input, 'schleifenbauer', $descr, '1', '1', null, null, null, null, $sdbDevInPowerVoltAmpere, 'snmp', $entPhysicalIndex);
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
<?php
|
||||
echo 'Schleifenbauer ';
|
||||
|
||||
foreach ($pre_cache['sdbMgmtCtrlDevUnitAddress'] as $sdbMgmtCtrlDevUnitAddress => $sdbDevIdIndex) {
|
||||
foreach ($pre_cache['sdbDevInKWhTotal'][$sdbDevIdIndex] as $sdbDevInIndex => $sdbDevInKWhTotal) {
|
||||
$power_consumed_oid = ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2.$sdbDevIdIndex.$sdbDevInIndex";
|
||||
$serial_input = $pre_cache['sdbDevIdSerialNumber'][$sdbDevIdIndex] ."-L". $sdbDevInIndex;
|
||||
$descr = "$serial_input Lifetime kWh Total";
|
||||
|
||||
// See includes/discovery/entity-physical/schleifenbauer.inc.php for an explanation why we set this as the entPhysicalIndex.
|
||||
$entPhysicalIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 100000 + $sdbDevInIndex * 1000 + 140;
|
||||
|
||||
discover_sensor($valid['sensor'], 'power_consumed', $device, $power_consumed_oid, $serial_input, 'schleifenbauer', $descr, '1', '1', '0', null, null, '16777215', $sdbDevInKWhTotal, 'snmp', $entPhysicalIndex);
|
||||
}
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
<?php
|
||||
echo 'Schleifenbauer ';
|
||||
$divisor = 10000;
|
||||
|
||||
foreach ($pre_cache['sdbMgmtCtrlDevUnitAddress'] as $sdbMgmtCtrlDevUnitAddress => $sdbDevIdIndex) {
|
||||
foreach ($pre_cache['sdbDevInPowerFactor'][$sdbDevIdIndex] as $sdbDevInIndex => $sdbDevInPowerFactor) {
|
||||
$power_factor_oid = ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4.$sdbDevIdIndex.$sdbDevInIndex";
|
||||
$power_factor = $sdbDevInPowerFactor / $divisor;
|
||||
$serial_input = $pre_cache['sdbDevIdSerialNumber'][$sdbDevIdIndex] ."-L". $sdbDevInIndex;
|
||||
$descr = "$serial_input Power Factor";
|
||||
|
||||
// See includes/discovery/entity-physical/schleifenbauer.inc.php for an explanation why we set this as the entPhysicalIndex.
|
||||
$entPhysicalIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 100000 + $sdbDevInIndex * 1000 + 150;
|
||||
|
||||
discover_sensor($valid['sensor'], 'power_factor', $device, $power_factor_oid, $serial_input, 'schleifenbauer', $descr, $divisor, '1', '0', null, null, '1', $power_factor, 'snmp', $entPhysicalIndex);
|
||||
}
|
||||
}
|
38
includes/discovery/sensors/pre-cache/schleifenbauer.inc.php
Normal file
38
includes/discovery/sensors/pre-cache/schleifenbauer.inc.php
Normal file
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
/*
|
||||
* LibreNMS
|
||||
*
|
||||
* Copyright (c) 2018 Martijn Schmidt <martijn.schmidt@gmail.com>
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version. Please see LICENSE.txt at the top level of
|
||||
* the source code distribution for details.
|
||||
*/
|
||||
|
||||
echo 'sdbMgmtCtrlDevUnitAddress ';
|
||||
$pre_cache['sdbMgmtCtrlDevUnitAddress'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.1.2.4.1.2', 1));
|
||||
|
||||
echo 'sdbDevIdSerialNumber ';
|
||||
$pre_cache['sdbDevIdSerialNumber'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.6', 1));
|
||||
|
||||
echo 'sdbDevInActualVoltage ';
|
||||
$pre_cache['sdbDevInActualVoltage'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7', 2));
|
||||
|
||||
echo 'sdbDevInActualCurrent ';
|
||||
$pre_cache['sdbDevInActualCurrent'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5', 2));
|
||||
|
||||
echo 'sdbDevInMaxAmps ';
|
||||
$pre_cache['sdbDevInMaxAmps'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.11', 2));
|
||||
|
||||
echo 'sdbDevCfMaximumLoad ';
|
||||
$pre_cache['sdbDevCfMaximumLoad'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.2.1.1.6', 1));
|
||||
|
||||
echo 'sdbDevInPowerVoltAmpere ';
|
||||
$pre_cache['sdbDevInPowerVoltAmpere'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9', 2));
|
||||
|
||||
echo 'sdbDevInKWhTotal ';
|
||||
$pre_cache['sdbDevInKWhTotal'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2', 2));
|
||||
|
||||
echo 'sdbDevInPowerFactor ';
|
||||
$pre_cache['sdbDevInPowerFactor'] = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4', 2));
|
17
includes/discovery/sensors/voltage/schleifenbauer.inc.php
Normal file
17
includes/discovery/sensors/voltage/schleifenbauer.inc.php
Normal file
@ -0,0 +1,17 @@
|
||||
<?php
|
||||
echo 'Schleifenbauer ';
|
||||
$divisor = 100;
|
||||
|
||||
foreach ($pre_cache['sdbMgmtCtrlDevUnitAddress'] as $sdbMgmtCtrlDevUnitAddress => $sdbDevIdIndex) {
|
||||
foreach ($pre_cache['sdbDevInActualVoltage'][$sdbDevIdIndex] as $sdbDevInIndex => $sdbDevInActualVoltage) {
|
||||
$voltage_oid = ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7.$sdbDevIdIndex.$sdbDevInIndex";
|
||||
$voltage = $sdbDevInActualVoltage / $divisor;
|
||||
$serial_input = $pre_cache['sdbDevIdSerialNumber'][$sdbDevIdIndex] ."-L". $sdbDevInIndex;
|
||||
$descr = "$serial_input Voltage";
|
||||
|
||||
// See includes/discovery/entity-physical/schleifenbauer.inc.php for an explanation why we set this as the entPhysicalIndex.
|
||||
$entPhysicalIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 100000 + $sdbDevInIndex * 1000 + 110;
|
||||
|
||||
discover_sensor($valid['sensor'], 'voltage', $device, $voltage_oid, $serial_input, 'schleifenbauer', $descr, $divisor, '1', null, null, null, null, $voltage, 'snmp', $entPhysicalIndex);
|
||||
}
|
||||
}
|
8
includes/polling/os/schleifenbauer.inc.php
Normal file
8
includes/polling/os/schleifenbauer.inc.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
$master_unit = snmp_get($device, ".1.3.6.1.4.1.31034.12.1.1.1.2.4.1.2.1", '-Oqv', '');
|
||||
$hardware = snmp_get($device, ".1.3.6.1.4.1.31034.12.1.1.2.1.1.1.5.$master_unit", '-Oqv', '');
|
||||
$firmware = snmp_get($device, ".1.3.6.1.4.1.31034.12.1.1.2.1.1.1.2.$master_unit", '-Oqv', '');
|
||||
$buildnumber = snmp_get($device, ".1.3.6.1.4.1.31034.12.1.1.2.1.1.1.3.$master_unit", '-Oqv', '');
|
||||
$serial = snmp_get($device, ".1.3.6.1.4.1.31034.12.1.1.2.1.1.1.6.$master_unit", '-Oqv', '');
|
||||
$version = "- version $firmware, build $buildnumber";
|
@ -1697,6 +1697,8 @@ function get_units_from_sensor($sensor)
|
||||
case 'cooling':
|
||||
case 'power':
|
||||
return 'W';
|
||||
case 'power_consumed':
|
||||
return 'kWh';
|
||||
case 'pressure':
|
||||
return 'kPa';
|
||||
case 'runtime':
|
||||
|
1965
mibs/schleifenbauer/SCHLEIFENBAUER-DATABUS-MIB
Normal file
1965
mibs/schleifenbauer/SCHLEIFENBAUER-DATABUS-MIB
Normal file
File diff suppressed because it is too large
Load Diff
51
mibs/schleifenbauer/SCHLEIFENBAUER-PRODUCTS-MIB
Normal file
51
mibs/schleifenbauer/SCHLEIFENBAUER-PRODUCTS-MIB
Normal file
@ -0,0 +1,51 @@
|
||||
-------------------------------------------------------------------------------
|
||||
--
|
||||
-- SCHLEIFENBAUER-PRODUCTS-MIB.txt: Schleifenbauer Product Object Identifier Assignments
|
||||
--
|
||||
-- October 2015, Marco Veeneman
|
||||
--
|
||||
-- Copyright (c) 2015 by Schleifenbauer Holding BV
|
||||
-- All rights reserved.
|
||||
--
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
SCHLEIFENBAUER-PRODUCTS-MIB DEFINITIONS ::= BEGIN
|
||||
|
||||
IMPORTS
|
||||
MODULE-IDENTITY
|
||||
FROM SNMPv2-SMI
|
||||
schleifenbauerProducts,
|
||||
schleifenbauerModules
|
||||
FROM SCHLEIFENBAUER-SMI;
|
||||
|
||||
schleifenbauerProductsMIB MODULE-IDENTITY
|
||||
LAST-UPDATED
|
||||
"201510230000Z" -- October 23th, 2015
|
||||
ORGANIZATION
|
||||
"Schleifenbauer Engineering"
|
||||
CONTACT-INFO
|
||||
"Schleifenbauer Engineering
|
||||
Alain Schuermans
|
||||
Chief Technology Officer
|
||||
Turnhoutseweg 22
|
||||
5541 NX Reusel
|
||||
The Netherlands
|
||||
t. +31 73 5230256
|
||||
f. +31 73 5212383
|
||||
alain@schleifenbauer.eu
|
||||
www.schleifenbauer.eu"
|
||||
DESCRIPTION
|
||||
"TODO: description.
|
||||
|
||||
Copyright (c) 2015 by Schleifenbauer Products BV
|
||||
"
|
||||
REVISION
|
||||
"201510230000Z" -- October 23th, 2015
|
||||
DESCRIPTION
|
||||
"The initial revision of this MIB module"
|
||||
::= { schleifenbauerModules 2}
|
||||
|
||||
hpdu OBJECT IDENTIFIER ::= { schleifenbauerProducts 1 }
|
||||
dpm3 OBJECT IDENTIFIER ::= { schleifenbauerProducts 2 }
|
||||
|
||||
END
|
68
mibs/schleifenbauer/SCHLEIFENBAUER-SMI
Normal file
68
mibs/schleifenbauer/SCHLEIFENBAUER-SMI
Normal file
@ -0,0 +1,68 @@
|
||||
-------------------------------------------------------------------------------
|
||||
--
|
||||
-- SCHLEIFENBAUER-DATABUS-MIB.txt: Schleifenbauer Enterprise Structure of Management Information
|
||||
--
|
||||
-- October 2015, Marco Veeneman
|
||||
--
|
||||
-- Copyright (c) 2015 by Schleifenbauer Holding BV
|
||||
-- All rights reserved.
|
||||
--
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
SCHLEIFENBAUER-SMI DEFINITIONS ::= BEGIN
|
||||
|
||||
IMPORTS
|
||||
MODULE-IDENTITY,
|
||||
OBJECT-IDENTITY,
|
||||
enterprises
|
||||
FROM SNMPv2-SMI;
|
||||
|
||||
schleifenbauer MODULE-IDENTITY
|
||||
LAST-UPDATED
|
||||
"201510230000Z" -- October 23th, 2015
|
||||
ORGANIZATION
|
||||
"Schleifenbauer Engineering"
|
||||
CONTACT-INFO
|
||||
"Schleifenbauer Engineering
|
||||
Alain Schuermans
|
||||
Chief Technology Officer
|
||||
Turnhoutseweg 22
|
||||
5541 NX Reusel
|
||||
The Netherlands
|
||||
t. +31 73 5230256
|
||||
f. +31 73 5212383
|
||||
alain@schleifenbauer.eu
|
||||
www.schleifenbauer.eu"
|
||||
DESCRIPTION
|
||||
"The Structure of Management Information for the Schleifenbauer
|
||||
enterprise.
|
||||
|
||||
Copyright (c) 2015 by Schleifenbauer Products BV"
|
||||
REVISION
|
||||
"201510230000Z" -- October 23th, 2015
|
||||
DESCRIPTION
|
||||
"The initial revision of this MIB module"
|
||||
::= { enterprises 31034 }
|
||||
|
||||
schleifenbauerProducts OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"schleifenbauerProducts is the root OBJECT IDENTIFIER from which
|
||||
sysObjectId values are assigned. Acutal values are defined in
|
||||
SCHLEIFENBAUER-PRODUCTS-MIB."
|
||||
::= { schleifenbauer 11 }
|
||||
|
||||
schleifenbauerMgmt OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"schleifenbauerMgmt is the main subtree for new mib development."
|
||||
::= { schleifenbauer 12 }
|
||||
|
||||
schleifenbauerModules OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"schleifenbauerModules provides a root object identifier from which
|
||||
MODULE-IDENTITY values may be assigned."
|
||||
::= { schleifenbauer 13 }
|
||||
|
||||
END
|
@ -215,6 +215,12 @@
|
||||
"string",
|
||||
"array"
|
||||
]
|
||||
},
|
||||
"entPhysicalIndex": {
|
||||
"type": ["integer", "string"]
|
||||
},
|
||||
"entPhysicalIndex_measured": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"additionalProperties": false,
|
||||
@ -382,7 +388,7 @@
|
||||
]
|
||||
},
|
||||
"entPhysicalIndex": {
|
||||
"type": "string"
|
||||
"type": ["integer", "string"]
|
||||
},
|
||||
"entPhysicalIndex_measured": {
|
||||
"type": "string"
|
||||
|
715
tests/data/schleifenbauer.json
Normal file
715
tests/data/schleifenbauer.json
Normal file
@ -0,0 +1,715 @@
|
||||
{
|
||||
"os": {
|
||||
"discovery": {
|
||||
"devices": [
|
||||
{
|
||||
"sysName": "<private>",
|
||||
"sysObjectID": ".1.3.6.1.4.1.31034.11.1",
|
||||
"sysDescr": "Schleifenbauer",
|
||||
"sysContact": null,
|
||||
"version": null,
|
||||
"hardware": null,
|
||||
"features": null,
|
||||
"os": "schleifenbauer",
|
||||
"type": "power",
|
||||
"serial": null,
|
||||
"icon": "schleifenbauer.svg",
|
||||
"location": null
|
||||
}
|
||||
]
|
||||
},
|
||||
"poller": {
|
||||
"devices": [
|
||||
{
|
||||
"sysName": "<private>",
|
||||
"sysObjectID": ".1.3.6.1.4.1.31034.11.1",
|
||||
"sysDescr": "Schleifenbauer",
|
||||
"sysContact": "<private>",
|
||||
"version": "- version 250, build 180821PL1736",
|
||||
"hardware": "SSDCHIN1307-002",
|
||||
"features": null,
|
||||
"os": "schleifenbauer",
|
||||
"type": "power",
|
||||
"serial": "SVNL00056319",
|
||||
"icon": "schleifenbauer.svg",
|
||||
"location": "<private>"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"ports": {
|
||||
"discovery": {
|
||||
"ports": [
|
||||
{
|
||||
"port_descr_type": null,
|
||||
"port_descr_descr": null,
|
||||
"port_descr_circuit": null,
|
||||
"port_descr_speed": null,
|
||||
"port_descr_notes": null,
|
||||
"ifDescr": "en",
|
||||
"ifName": "en",
|
||||
"portName": null,
|
||||
"ifIndex": 1,
|
||||
"ifSpeed": null,
|
||||
"ifConnectorPresent": null,
|
||||
"ifPromiscuousMode": null,
|
||||
"ifHighSpeed": null,
|
||||
"ifOperStatus": null,
|
||||
"ifOperStatus_prev": null,
|
||||
"ifAdminStatus": null,
|
||||
"ifAdminStatus_prev": null,
|
||||
"ifDuplex": null,
|
||||
"ifMtu": null,
|
||||
"ifType": "ethernetCsmacd",
|
||||
"ifAlias": "en",
|
||||
"ifPhysAddress": null,
|
||||
"ifHardType": null,
|
||||
"ifLastChange": 0,
|
||||
"ifVlan": "",
|
||||
"ifTrunk": null,
|
||||
"counter_in": null,
|
||||
"counter_out": null,
|
||||
"ignore": 0,
|
||||
"disabled": 0,
|
||||
"detailed": 0,
|
||||
"deleted": 0,
|
||||
"pagpOperationMode": null,
|
||||
"pagpPortState": null,
|
||||
"pagpPartnerDeviceId": null,
|
||||
"pagpPartnerLearnMethod": null,
|
||||
"pagpPartnerIfIndex": null,
|
||||
"pagpPartnerGroupIfIndex": null,
|
||||
"pagpPartnerDeviceName": null,
|
||||
"pagpEthcOperationMode": null,
|
||||
"pagpDeviceId": null,
|
||||
"pagpGroupIfIndex": null,
|
||||
"ifInUcastPkts": null,
|
||||
"ifInUcastPkts_prev": null,
|
||||
"ifInUcastPkts_delta": null,
|
||||
"ifInUcastPkts_rate": null,
|
||||
"ifOutUcastPkts": null,
|
||||
"ifOutUcastPkts_prev": null,
|
||||
"ifOutUcastPkts_delta": null,
|
||||
"ifOutUcastPkts_rate": null,
|
||||
"ifInErrors": null,
|
||||
"ifInErrors_prev": null,
|
||||
"ifInErrors_delta": null,
|
||||
"ifInErrors_rate": null,
|
||||
"ifOutErrors": null,
|
||||
"ifOutErrors_prev": null,
|
||||
"ifOutErrors_delta": null,
|
||||
"ifOutErrors_rate": null,
|
||||
"ifInOctets": null,
|
||||
"ifInOctets_prev": null,
|
||||
"ifInOctets_delta": null,
|
||||
"ifInOctets_rate": null,
|
||||
"ifOutOctets": null,
|
||||
"ifOutOctets_prev": null,
|
||||
"ifOutOctets_delta": null,
|
||||
"ifOutOctets_rate": null,
|
||||
"poll_prev": null,
|
||||
"ifInNUcastPkts": null,
|
||||
"ifInNUcastPkts_prev": null,
|
||||
"ifInNUcastPkts_delta": null,
|
||||
"ifInNUcastPkts_rate": null,
|
||||
"ifOutNUcastPkts": null,
|
||||
"ifOutNUcastPkts_prev": null,
|
||||
"ifOutNUcastPkts_delta": null,
|
||||
"ifOutNUcastPkts_rate": null,
|
||||
"ifInDiscards": null,
|
||||
"ifInDiscards_prev": null,
|
||||
"ifInDiscards_delta": null,
|
||||
"ifInDiscards_rate": null,
|
||||
"ifOutDiscards": null,
|
||||
"ifOutDiscards_prev": null,
|
||||
"ifOutDiscards_delta": null,
|
||||
"ifOutDiscards_rate": null,
|
||||
"ifInUnknownProtos": null,
|
||||
"ifInUnknownProtos_prev": null,
|
||||
"ifInUnknownProtos_delta": null,
|
||||
"ifInUnknownProtos_rate": null,
|
||||
"ifInBroadcastPkts": null,
|
||||
"ifInBroadcastPkts_prev": null,
|
||||
"ifInBroadcastPkts_delta": null,
|
||||
"ifInBroadcastPkts_rate": null,
|
||||
"ifOutBroadcastPkts": null,
|
||||
"ifOutBroadcastPkts_prev": null,
|
||||
"ifOutBroadcastPkts_delta": null,
|
||||
"ifOutBroadcastPkts_rate": null,
|
||||
"ifInMulticastPkts": null,
|
||||
"ifInMulticastPkts_prev": null,
|
||||
"ifInMulticastPkts_delta": null,
|
||||
"ifInMulticastPkts_rate": null,
|
||||
"ifOutMulticastPkts": null,
|
||||
"ifOutMulticastPkts_prev": null,
|
||||
"ifOutMulticastPkts_delta": null,
|
||||
"ifOutMulticastPkts_rate": null
|
||||
}
|
||||
]
|
||||
},
|
||||
"poller": {
|
||||
"ports": [
|
||||
{
|
||||
"port_descr_type": null,
|
||||
"port_descr_descr": null,
|
||||
"port_descr_circuit": null,
|
||||
"port_descr_speed": null,
|
||||
"port_descr_notes": null,
|
||||
"ifDescr": "en",
|
||||
"ifName": "en",
|
||||
"portName": null,
|
||||
"ifIndex": 1,
|
||||
"ifSpeed": 100000000,
|
||||
"ifConnectorPresent": null,
|
||||
"ifPromiscuousMode": null,
|
||||
"ifHighSpeed": null,
|
||||
"ifOperStatus": "up",
|
||||
"ifOperStatus_prev": null,
|
||||
"ifAdminStatus": "up",
|
||||
"ifAdminStatus_prev": null,
|
||||
"ifDuplex": null,
|
||||
"ifMtu": 1500,
|
||||
"ifType": "ethernetCsmacd",
|
||||
"ifAlias": "en",
|
||||
"ifPhysAddress": "d02212b07a57",
|
||||
"ifHardType": null,
|
||||
"ifLastChange": 204,
|
||||
"ifVlan": "",
|
||||
"ifTrunk": null,
|
||||
"counter_in": null,
|
||||
"counter_out": null,
|
||||
"ignore": 0,
|
||||
"disabled": 0,
|
||||
"detailed": 0,
|
||||
"deleted": 0,
|
||||
"pagpOperationMode": null,
|
||||
"pagpPortState": null,
|
||||
"pagpPartnerDeviceId": null,
|
||||
"pagpPartnerLearnMethod": null,
|
||||
"pagpPartnerIfIndex": null,
|
||||
"pagpPartnerGroupIfIndex": null,
|
||||
"pagpPartnerDeviceName": null,
|
||||
"pagpEthcOperationMode": null,
|
||||
"pagpDeviceId": null,
|
||||
"pagpGroupIfIndex": null,
|
||||
"ifInUcastPkts": 136133,
|
||||
"ifInUcastPkts_prev": 0,
|
||||
"ifInUcastPkts_delta": null,
|
||||
"ifInUcastPkts_rate": null,
|
||||
"ifOutUcastPkts": 126378,
|
||||
"ifOutUcastPkts_prev": 0,
|
||||
"ifOutUcastPkts_delta": null,
|
||||
"ifOutUcastPkts_rate": null,
|
||||
"ifInErrors": 0,
|
||||
"ifInErrors_prev": 0,
|
||||
"ifInErrors_delta": null,
|
||||
"ifInErrors_rate": null,
|
||||
"ifOutErrors": 0,
|
||||
"ifOutErrors_prev": 0,
|
||||
"ifOutErrors_delta": null,
|
||||
"ifOutErrors_rate": null,
|
||||
"ifInOctets": 23559478,
|
||||
"ifInOctets_prev": 0,
|
||||
"ifInOctets_delta": null,
|
||||
"ifInOctets_rate": null,
|
||||
"ifOutOctets": 23203132,
|
||||
"ifOutOctets_prev": 0,
|
||||
"ifOutOctets_delta": null,
|
||||
"ifOutOctets_rate": null,
|
||||
"poll_prev": null,
|
||||
"ifInNUcastPkts": 47308,
|
||||
"ifInNUcastPkts_prev": 0,
|
||||
"ifInNUcastPkts_delta": null,
|
||||
"ifInNUcastPkts_rate": null,
|
||||
"ifOutNUcastPkts": 1563,
|
||||
"ifOutNUcastPkts_prev": 0,
|
||||
"ifOutNUcastPkts_delta": null,
|
||||
"ifOutNUcastPkts_rate": null,
|
||||
"ifInDiscards": 0,
|
||||
"ifInDiscards_prev": 0,
|
||||
"ifInDiscards_delta": null,
|
||||
"ifInDiscards_rate": null,
|
||||
"ifOutDiscards": 0,
|
||||
"ifOutDiscards_prev": 0,
|
||||
"ifOutDiscards_delta": null,
|
||||
"ifOutDiscards_rate": null,
|
||||
"ifInUnknownProtos": 54771,
|
||||
"ifInUnknownProtos_prev": 0,
|
||||
"ifInUnknownProtos_delta": null,
|
||||
"ifInUnknownProtos_rate": null,
|
||||
"ifInBroadcastPkts": 0,
|
||||
"ifInBroadcastPkts_prev": 0,
|
||||
"ifInBroadcastPkts_delta": null,
|
||||
"ifInBroadcastPkts_rate": null,
|
||||
"ifOutBroadcastPkts": 0,
|
||||
"ifOutBroadcastPkts_prev": 0,
|
||||
"ifOutBroadcastPkts_delta": null,
|
||||
"ifOutBroadcastPkts_rate": null,
|
||||
"ifInMulticastPkts": 0,
|
||||
"ifInMulticastPkts_prev": 0,
|
||||
"ifInMulticastPkts_delta": null,
|
||||
"ifInMulticastPkts_rate": null,
|
||||
"ifOutMulticastPkts": 0,
|
||||
"ifOutMulticastPkts_prev": 0,
|
||||
"ifOutMulticastPkts_delta": null,
|
||||
"ifOutMulticastPkts_rate": null
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"sensors": {
|
||||
"discovery": {
|
||||
"sensors": [
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "count",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.1.1.4.0",
|
||||
"sensor_index": "sdbMgmtStsDuplicateDevices.0",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "Duplicate Device Addresses",
|
||||
"group": "",
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0,
|
||||
"sensor_limit": 1,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "3",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "count",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.1.1.3.0",
|
||||
"sensor_index": "sdbMgmtStsNewDevices.0",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "New Devices",
|
||||
"group": "",
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0,
|
||||
"sensor_limit": 2,
|
||||
"sensor_limit_warn": 1,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "4",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "current",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5.210.1",
|
||||
"sensor_index": "SVNL00056319-L1",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L1 RMS Current",
|
||||
"group": null,
|
||||
"sensor_divisor": 100,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0.32,
|
||||
"sensor_limit": 32,
|
||||
"sensor_limit_warn": 28,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1101120",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "current",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5.210.2",
|
||||
"sensor_index": "SVNL00056319-L2",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L2 RMS Current",
|
||||
"group": null,
|
||||
"sensor_divisor": 100,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0,
|
||||
"sensor_limit": 32,
|
||||
"sensor_limit_warn": 28,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1102120",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "current",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5.210.3",
|
||||
"sensor_index": "SVNL00056319-L3",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L3 RMS Current",
|
||||
"group": null,
|
||||
"sensor_divisor": 100,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0.32,
|
||||
"sensor_limit": 32,
|
||||
"sensor_limit_warn": 28,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1103120",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9.210.1",
|
||||
"sensor_index": "SVNL00056319-L1",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L1 Apparent Power",
|
||||
"group": null,
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 70,
|
||||
"sensor_limit": 105,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1101130",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9.210.2",
|
||||
"sensor_index": "SVNL00056319-L2",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L2 Apparent Power",
|
||||
"group": null,
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0,
|
||||
"sensor_limit": 0,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1102130",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9.210.3",
|
||||
"sensor_index": "SVNL00056319-L3",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L3 Apparent Power",
|
||||
"group": null,
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 70,
|
||||
"sensor_limit": 105,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1103130",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power_consumed",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2.210.1",
|
||||
"sensor_index": "SVNL00056319-L1",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L1 Lifetime kWh Total",
|
||||
"group": null,
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 66,
|
||||
"sensor_limit": 16777215,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 0,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1101140",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power_consumed",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2.210.2",
|
||||
"sensor_index": "SVNL00056319-L2",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L2 Lifetime kWh Total",
|
||||
"group": null,
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0,
|
||||
"sensor_limit": 16777215,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 0,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1102140",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power_consumed",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2.210.3",
|
||||
"sensor_index": "SVNL00056319-L3",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L3 Lifetime kWh Total",
|
||||
"group": null,
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 66,
|
||||
"sensor_limit": 16777215,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 0,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1103140",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power_factor",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4.210.1",
|
||||
"sensor_index": "SVNL00056319-L1",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L1 Power Factor",
|
||||
"group": null,
|
||||
"sensor_divisor": 10000,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0.4594,
|
||||
"sensor_limit": 1,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 0,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1101150",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power_factor",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4.210.2",
|
||||
"sensor_index": "SVNL00056319-L2",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L2 Power Factor",
|
||||
"group": null,
|
||||
"sensor_divisor": 10000,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 1,
|
||||
"sensor_limit": 1,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 0,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1102150",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "power_factor",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4.210.3",
|
||||
"sensor_index": "SVNL00056319-L3",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L3 Power Factor",
|
||||
"group": null,
|
||||
"sensor_divisor": 10000,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 0.4706,
|
||||
"sensor_limit": 1,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 0,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1103150",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "state",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.1.1.5.0",
|
||||
"sensor_index": "sdbMgmtStsRingState.0",
|
||||
"sensor_type": "sdbMgmtStsRingState",
|
||||
"sensor_descr": "Databus Ring State",
|
||||
"group": "",
|
||||
"sensor_divisor": 1,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 1,
|
||||
"sensor_limit": null,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": null,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "2",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": "sdbMgmtStsRingState"
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "voltage",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7.210.1",
|
||||
"sensor_index": "SVNL00056319-L1",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L1 Voltage",
|
||||
"group": null,
|
||||
"sensor_divisor": 100,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 229,
|
||||
"sensor_limit": 263.35,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 194.65,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1101110",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "voltage",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7.210.2",
|
||||
"sensor_index": "SVNL00056319-L2",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L2 Voltage",
|
||||
"group": null,
|
||||
"sensor_divisor": 100,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 228.6,
|
||||
"sensor_limit": 262.89,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 194.31,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1102110",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
},
|
||||
{
|
||||
"sensor_deleted": 0,
|
||||
"sensor_class": "voltage",
|
||||
"poller_type": "snmp",
|
||||
"sensor_oid": ".1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7.210.3",
|
||||
"sensor_index": "SVNL00056319-L3",
|
||||
"sensor_type": "schleifenbauer",
|
||||
"sensor_descr": "SVNL00056319-L3 Voltage",
|
||||
"group": null,
|
||||
"sensor_divisor": 100,
|
||||
"sensor_multiplier": 1,
|
||||
"sensor_current": 228.78,
|
||||
"sensor_limit": 263.097,
|
||||
"sensor_limit_warn": null,
|
||||
"sensor_limit_low": 194.463,
|
||||
"sensor_limit_low_warn": null,
|
||||
"sensor_alert": 1,
|
||||
"sensor_custom": "No",
|
||||
"entPhysicalIndex": "1103110",
|
||||
"entPhysicalIndex_measured": null,
|
||||
"sensor_prev": null,
|
||||
"user_func": null,
|
||||
"state_name": null
|
||||
}
|
||||
],
|
||||
"state_indexes": [
|
||||
{
|
||||
"state_name": "sdbMgmtStsRingState",
|
||||
"state_descr": "open",
|
||||
"state_draw_graph": 0,
|
||||
"state_value": 0,
|
||||
"state_generic_value": 2
|
||||
},
|
||||
{
|
||||
"state_name": "sdbMgmtStsRingState",
|
||||
"state_descr": "closed",
|
||||
"state_draw_graph": 1,
|
||||
"state_value": 1,
|
||||
"state_generic_value": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"poller": "matches discovery"
|
||||
}
|
||||
}
|
165
tests/snmpsim/schleifenbauer.snmprec
Normal file
165
tests/snmpsim/schleifenbauer.snmprec
Normal file
@ -0,0 +1,165 @@
|
||||
1.3.6.1.2.1.1.1.0|4|Schleifenbauer
|
||||
1.3.6.1.2.1.1.2.0|6|.1.3.6.1.4.1.31034.11.1
|
||||
1.3.6.1.2.1.1.3.0|67|46996152
|
||||
1.3.6.1.2.1.1.4.0|4|<private>
|
||||
1.3.6.1.2.1.1.5.0|4|<private>
|
||||
1.3.6.1.2.1.1.6.0|4|<private>
|
||||
1.3.6.1.2.1.2.2.1.1.1|2|1
|
||||
1.3.6.1.2.1.2.2.1.2.1|4|en
|
||||
1.3.6.1.2.1.2.2.1.3.1|2|6
|
||||
1.3.6.1.2.1.2.2.1.4.1|2|1500
|
||||
1.3.6.1.2.1.2.2.1.5.1|66|100000000
|
||||
1.3.6.1.2.1.2.2.1.6.1|4x|D02212B07A57
|
||||
1.3.6.1.2.1.2.2.1.7.1|2|1
|
||||
1.3.6.1.2.1.2.2.1.8.1|2|1
|
||||
1.3.6.1.2.1.2.2.1.9.1|67|204
|
||||
1.3.6.1.2.1.2.2.1.10.1|65|23559478
|
||||
1.3.6.1.2.1.2.2.1.11.1|65|136133
|
||||
1.3.6.1.2.1.2.2.1.12.1|65|47308
|
||||
1.3.6.1.2.1.2.2.1.13.1|65|0
|
||||
1.3.6.1.2.1.2.2.1.14.1|65|0
|
||||
1.3.6.1.2.1.2.2.1.15.1|65|54771
|
||||
1.3.6.1.2.1.2.2.1.16.1|65|23203132
|
||||
1.3.6.1.2.1.2.2.1.17.1|65|126378
|
||||
1.3.6.1.2.1.2.2.1.18.1|65|1563
|
||||
1.3.6.1.2.1.2.2.1.19.1|65|0
|
||||
1.3.6.1.2.1.2.2.1.20.1|65|0
|
||||
1.3.6.1.2.1.2.2.1.21.1|66|0
|
||||
1.3.6.1.2.1.2.2.1.22.1|6|0.0
|
||||
1.3.6.1.2.1.4.3.0|65|125464
|
||||
1.3.6.1.2.1.4.4.0|65|0
|
||||
1.3.6.1.2.1.4.5.0|65|0
|
||||
1.3.6.1.2.1.4.6.0|65|0
|
||||
1.3.6.1.2.1.4.7.0|65|0
|
||||
1.3.6.1.2.1.4.8.0|65|0
|
||||
1.3.6.1.2.1.4.9.0|65|125463
|
||||
1.3.6.1.2.1.4.10.0|65|126318
|
||||
1.3.6.1.2.1.4.11.0|65|0
|
||||
1.3.6.1.2.1.4.12.0|65|0
|
||||
1.3.6.1.2.1.4.14.0|65|0
|
||||
1.3.6.1.2.1.4.15.0|65|0
|
||||
1.3.6.1.2.1.4.17.0|65|0
|
||||
1.3.6.1.2.1.4.18.0|65|0
|
||||
1.3.6.1.2.1.4.19.0|65|0
|
||||
1.3.6.1.2.1.4.20.1.2.172.31.246.4|2|1
|
||||
1.3.6.1.2.1.4.20.1.3.172.31.246.4|64|255.255.255.0
|
||||
1.3.6.1.2.1.4.22.1.2.1.172.31.246.1|4x|0010DBFF1001
|
||||
1.3.6.1.2.1.5.1.0|65|17383
|
||||
1.3.6.1.2.1.5.2.0|65|0
|
||||
1.3.6.1.2.1.5.3.0|65|2
|
||||
1.3.6.1.2.1.5.4.0|65|0
|
||||
1.3.6.1.2.1.5.5.0|65|0
|
||||
1.3.6.1.2.1.5.6.0|65|0
|
||||
1.3.6.1.2.1.5.7.0|65|0
|
||||
1.3.6.1.2.1.5.8.0|65|17381
|
||||
1.3.6.1.2.1.5.9.0|65|0
|
||||
1.3.6.1.2.1.5.10.0|65|0
|
||||
1.3.6.1.2.1.5.11.0|65|0
|
||||
1.3.6.1.2.1.5.12.0|65|0
|
||||
1.3.6.1.2.1.5.13.0|65|0
|
||||
1.3.6.1.2.1.5.14.0|65|17381
|
||||
1.3.6.1.2.1.5.15.0|65|0
|
||||
1.3.6.1.2.1.5.16.0|65|0
|
||||
1.3.6.1.2.1.5.17.0|65|0
|
||||
1.3.6.1.2.1.5.18.0|65|0
|
||||
1.3.6.1.2.1.5.19.0|65|0
|
||||
1.3.6.1.2.1.5.20.0|65|0
|
||||
1.3.6.1.2.1.5.21.0|65|0
|
||||
1.3.6.1.2.1.5.22.0|65|17381
|
||||
1.3.6.1.2.1.5.23.0|65|0
|
||||
1.3.6.1.2.1.5.24.0|65|0
|
||||
1.3.6.1.2.1.5.25.0|65|0
|
||||
1.3.6.1.2.1.5.26.0|65|0
|
||||
1.3.6.1.2.1.6.5.0|65|0
|
||||
1.3.6.1.2.1.6.6.0|65|34
|
||||
1.3.6.1.2.1.6.7.0|65|0
|
||||
1.3.6.1.2.1.6.8.0|65|33
|
||||
1.3.6.1.2.1.6.9.0|66|0
|
||||
1.3.6.1.2.1.6.10.0|65|2498
|
||||
1.3.6.1.2.1.6.11.0|65|2927
|
||||
1.3.6.1.2.1.6.12.0|65|0
|
||||
1.3.6.1.2.1.6.14.0|65|0
|
||||
1.3.6.1.2.1.6.15.0|65|9
|
||||
1.3.6.1.2.1.6.17.0|70|0
|
||||
1.3.6.1.2.1.6.18.0|70|0
|
||||
1.3.6.1.2.1.7.1.0|65|105614
|
||||
1.3.6.1.2.1.7.2.0|65|0
|
||||
1.3.6.1.2.1.7.3.0|65|0
|
||||
1.3.6.1.2.1.7.4.0|65|105616
|
||||
1.3.6.1.2.1.11.1.0|65|105598
|
||||
1.3.6.1.2.1.11.2.0|65|105599
|
||||
1.3.6.1.2.1.11.3.0|65|0
|
||||
1.3.6.1.2.1.11.4.0|65|0
|
||||
1.3.6.1.2.1.11.5.0|65|0
|
||||
1.3.6.1.2.1.11.6.0|65|0
|
||||
1.3.6.1.2.1.11.8.0|65|0
|
||||
1.3.6.1.2.1.11.9.0|65|0
|
||||
1.3.6.1.2.1.11.10.0|65|0
|
||||
1.3.6.1.2.1.11.11.0|65|0
|
||||
1.3.6.1.2.1.11.12.0|65|0
|
||||
1.3.6.1.2.1.11.13.0|65|220183
|
||||
1.3.6.1.2.1.11.14.0|65|0
|
||||
1.3.6.1.2.1.11.15.0|65|64386
|
||||
1.3.6.1.2.1.11.16.0|65|48
|
||||
1.3.6.1.2.1.11.17.0|65|0
|
||||
1.3.6.1.2.1.11.18.0|65|0
|
||||
1.3.6.1.2.1.11.19.0|65|0
|
||||
1.3.6.1.2.1.11.20.0|65|0
|
||||
1.3.6.1.2.1.11.21.0|65|0
|
||||
1.3.6.1.2.1.11.22.0|65|0
|
||||
1.3.6.1.2.1.11.24.0|65|0
|
||||
1.3.6.1.2.1.11.25.0|65|0
|
||||
1.3.6.1.2.1.11.26.0|65|0
|
||||
1.3.6.1.2.1.11.27.0|65|0
|
||||
1.3.6.1.2.1.11.28.0|65|105599
|
||||
1.3.6.1.2.1.11.29.0|65|2
|
||||
1.3.6.1.2.1.11.30.0|2|1
|
||||
1.3.6.1.2.1.11.31.0|65|0
|
||||
1.3.6.1.2.1.11.32.0|65|0
|
||||
1.3.6.1.4.1.31034.2.3.1.0|2|250
|
||||
1.3.6.1.4.1.31034.12.1.1.1.1.1.0|2|1
|
||||
1.3.6.1.4.1.31034.12.1.1.1.1.3.0|2|0
|
||||
1.3.6.1.4.1.31034.12.1.1.1.1.4.0|2|0
|
||||
1.3.6.1.4.1.31034.12.1.1.1.1.5.0|2|1
|
||||
1.3.6.1.4.1.31034.12.1.1.1.2.4.1.2.1|2|210
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.2.210|2|250
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.3.210|4|180821PL1736
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.4.210|4|2017-35126
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.5.210|4|SSDCHIN1307-002
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.6.210|4|SVNL00056319
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.10.210|4|schleiftest
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.11.210|4|s22dak
|
||||
1.3.6.1.4.1.31034.12.1.1.2.1.1.1.12.210|4|Smartdc
|
||||
1.3.6.1.4.1.31034.12.1.1.2.2.1.1.2.210|2|6
|
||||
1.3.6.1.4.1.31034.12.1.1.2.2.1.1.5.210|2|1
|
||||
1.3.6.1.4.1.31034.12.1.1.2.2.1.1.6.210|2|32
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2.210.1|2|66
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2.210.2|2|0
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.2.210.3|2|66
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4.210.1|2|4594
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4.210.2|2|10000
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.4.210.3|2|4706
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5.210.1|2|32
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5.210.2|2|0
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.5.210.3|2|32
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7.210.1|2|22900
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7.210.2|2|22860
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.7.210.3|2|22878
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9.210.1|2|70
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9.210.2|2|0
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.9.210.3|2|70
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.11.210.1|2|2800
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.11.210.2|2|2800
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.11.210.3|2|2800
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.13.210.1|4|t=master
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.13.210.2|4|t=slave2
|
||||
1.3.6.1.4.1.31034.12.1.1.2.6.1.1.13.210.3|4|t=slave3
|
||||
1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2.210.1|4|blaat
|
||||
1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2.210.2|4|mekker
|
||||
1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2.210.3|4|kwaak
|
||||
1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2.210.4|4|tok
|
||||
1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2.210.5|4|knor
|
||||
1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2.210.6|4|mooh
|
||||
1.3.6.1.4.1.31034.12.1.1.2.8.2.1.2.210.1|4|I
|
||||
1.3.6.1.4.1.31034.12.1.1.2.8.2.1.4.210.1|4|
|
||||
1.3.6.1.6.3.10.2.1.3.0|2|469961
|
Loading…
Reference in New Issue
Block a user