From ea3eedf3f0a32b2ab8437f8d2cb73a65dd78da4b Mon Sep 17 00:00:00 2001 From: Tony Murray Date: Mon, 22 Feb 2016 23:07:37 -0600 Subject: [PATCH] Netonix Update Add copyright header Add support for CPU and memory Fix version display for 1.3.9 Improve fan description --- includes/discovery/mempools/netonix.inc.php | 22 +++++++++++++++++++ includes/discovery/os/netonix.inc.php | 12 ++++++++++ includes/discovery/processors/netonix.inc.php | 12 ++++++++++ .../sensors/fanspeeds/netonix.inc.php | 13 ++++++++++- .../sensors/temperatures/netonix.inc.php | 11 ++++++++++ .../sensors/voltages/netonix.inc.php | 11 ++++++++++ includes/polling/mempools/netonix.inc.php | 22 +++++++++++++++++++ includes/polling/os/netonix.inc.php | 13 +++++++++++ 8 files changed, 115 insertions(+), 1 deletion(-) create mode 100644 includes/discovery/mempools/netonix.inc.php create mode 100644 includes/discovery/processors/netonix.inc.php create mode 100644 includes/polling/mempools/netonix.inc.php diff --git a/includes/discovery/mempools/netonix.inc.php b/includes/discovery/mempools/netonix.inc.php new file mode 100644 index 000000000..eccfb3e54 --- /dev/null +++ b/includes/discovery/mempools/netonix.inc.php @@ -0,0 +1,22 @@ + + * + * 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. + */ + +if ($device['os'] == 'netonix') { + echo 'NETONIX : '; + + $free = str_replace('"', "", snmp_get($device, 'UCD-SNMP-MIB::memTotalFree.0', '-OvQU')); + + if (is_numeric($free)) { + discover_mempool($valid_mempool, $device, 0, 'netonix', 'Memory', '1'); + } +} diff --git a/includes/discovery/os/netonix.inc.php b/includes/discovery/os/netonix.inc.php index 46ee5b89e..c31f16a71 100644 --- a/includes/discovery/os/netonix.inc.php +++ b/includes/discovery/os/netonix.inc.php @@ -1,4 +1,16 @@ + * + * 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. + */ + if (!$os) { if (strstr($sysObjectId, '.1.3.6.1.4.1.46242')) { $os = 'netonix'; diff --git a/includes/discovery/processors/netonix.inc.php b/includes/discovery/processors/netonix.inc.php new file mode 100644 index 000000000..5a66753c6 --- /dev/null +++ b/includes/discovery/processors/netonix.inc.php @@ -0,0 +1,12 @@ + + * + * 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. + */ // Netonix Fan Speeds if ($device['os'] == 'netonix') { @@ -7,7 +18,7 @@ if ($device['os'] == 'netonix') { if (is_array($oids)) { foreach ($oids as $index => $entry) { if (is_numeric($entry['fanSpeed']) && is_numeric($index)) { - $descr = $index; + $descr = "Fan ".$index; $oid = '.1.3.6.1.4.1.46242.2.1.2.'.$index; $current = $entry['fanSpeed']; discover_sensor($valid['sensor'], 'fanspeed', $device, $oid, $index, $device['os'], $descr, '1', '1', '0', '0', null, null, $current); diff --git a/includes/discovery/sensors/temperatures/netonix.inc.php b/includes/discovery/sensors/temperatures/netonix.inc.php index fbaf910ec..ad2dd0b07 100644 --- a/includes/discovery/sensors/temperatures/netonix.inc.php +++ b/includes/discovery/sensors/temperatures/netonix.inc.php @@ -1,4 +1,15 @@ + * + * 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. + */ // Netonix Temperatures if ($device['os'] == 'netonix') { diff --git a/includes/discovery/sensors/voltages/netonix.inc.php b/includes/discovery/sensors/voltages/netonix.inc.php index f800df6e9..4b7b1dd1a 100644 --- a/includes/discovery/sensors/voltages/netonix.inc.php +++ b/includes/discovery/sensors/voltages/netonix.inc.php @@ -1,4 +1,15 @@ + * + * 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. + */ // Netonix Voltages if ($device['os'] == 'netonix') { diff --git a/includes/polling/mempools/netonix.inc.php b/includes/polling/mempools/netonix.inc.php new file mode 100644 index 000000000..6b0f35798 --- /dev/null +++ b/includes/polling/mempools/netonix.inc.php @@ -0,0 +1,22 @@ + + * + * 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. + */ + +if ($device['os'] == 'netonix') { + $total = snmp_get($device, "UCD-SNMP-MIB::memTotalReal.0", "-OvQU"); + $free = snmp_get($device, "UCD-SNMP-MIB::memAvailReal.0", "-OvQU"); + + $mempool['total'] = $total; + $mempool['free'] = $free; + $mempool['used'] = $total - $free; + +} diff --git a/includes/polling/os/netonix.inc.php b/includes/polling/os/netonix.inc.php index 3b58eb81c..3cdbb3d2c 100644 --- a/includes/polling/os/netonix.inc.php +++ b/includes/polling/os/netonix.inc.php @@ -1,3 +1,16 @@ + * + * 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. + */ + $version = snmp_get($device, 'firmwareVersion.0', '-OQv', 'NETONIX-SWITCH-MIB', $config['mibdir'].':'.$config['mibdir'].'/netonix'); +$version = str_replace('.n.........', '', $version); // version display bug in 1.3.9 $hardware = $poll_device['sysDescr'];