device: Added further support for Zynos / Zyxell devices #5292 (#5814)

* device: Added further support for Zynos / Zyxell devices #5292

* correct year
This commit is contained in:
Neil Lathwood
2017-02-09 08:12:10 +00:00
committed by GitHub
parent 59fc5ffcbf
commit c3a9bcc1b3
5 changed files with 131 additions and 2 deletions

View File

@@ -1,5 +1,4 @@
<?php
/*
* LibreNMS
*

View File

@@ -0,0 +1,40 @@
<?php
/**
* zyxel.inc.php
*
* LibreNMS mempools discovery module for Zyxel devices
*
* 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.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link http://librenms.org
* @copyright 2017 Neil Lathwood
* @author Neil Lathwood <neil@lathwood.co.uk>
*/
if ($device['group'] == 'zyxel') {
echo 'Zyxel : ';
$oid = '.1.3.6.1.4.1.890.1.15.3.2.5.0';
$usage = snmp_get($device, $oid, '-Ovq');
$descr = 'Memory';
if (is_numeric($usage)) {
discover_mempool($valid_mempool, $device, '0', 'zyxel', $descr, '1', null, null);
}
}
unset(
$oid,
$usage,
$descr
);

View File

@@ -10,7 +10,7 @@
* the source code distribution for details.
*/
if ($device['os'] == 'zyxel') {
if ($device['group'] == 'zyxel') {
echo 'Zyxel : ';
$oid = '.1.3.6.1.4.1.890.1.5.8.55.12.7.0';
@@ -19,5 +19,19 @@ if ($device['os'] == 'zyxel') {
if (is_numeric($usage)) {
discover_processor($valid['processor'], $device, $oid, '0', 'zyxel', $descr, '1', $usage);
} else {
$oid = '.1.3.6.1.4.1.890.1.15.3.2.7.0';
$descr = 'Processor';
$usage = snmp_get($device, $oid, '-Ovqn');
if (is_numeric($usage)) {
discover_processor($valid['processor'], $device, $oid, '0', 'zyxel', $descr, '1', $usage);
}
}
}
unset(
$oid,
$descr,
$usage
);

View File

@@ -0,0 +1,41 @@
<?php
/**
* zyxel.inc.php
*
* LibreNMS mempools poller module for Zyxel devices
*
* 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.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link http://librenms.org
* @copyright 2017 Neil Lathwood
* @author Neil Lathwood <neil@lathwood.co.uk>
*/
if ($device['group'] == 'zyxel') {
echo 'Zyxel: ';
$oid = '.1.3.6.1.4.1.890.1.15.3.2.5.0';
$perc = snmp_get($device, $oid, '-OvQ');
if (is_numeric($perc)) {
$mempool['perc'] = $perc;
$mempool['used'] = $perc;
$mempool['total'] = 100;
$mempool['free'] = 100 - $perc;
}
}
unset(
$oid,
$perc
);

View File

@@ -0,0 +1,35 @@
<?php
/**
* zyxel.inc.php
*
* LibreNMS os poller module for Zyxel devices
*
* 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.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link http://librenms.org
* @copyright 2016 Neil Lathwood
* @author Neil Lathwood <neil@lathwood.co.uk>
*/
$oids = array('.1.3.6.1.4.1.890.1.15.3.1.11.0', '.1.3.6.1.4.1.890.1.15.3.1.6.0', '.1.3.6.1.4.1.890.1.15.3.1.12.0');
$zyxel = snmp_get_multi_oid($device, $oids, '-OUQnt');
$hardware = $zyxel['.1.3.6.1.4.1.890.1.15.3.1.11.0'];
list($version,) = explode(' | ', $zyxel['.1.3.6.1.4.1.890.1.15.3.1.6.0']);
$serial = $zyxel['.1.3.6.1.4.1.890.1.15.3.1.12.0'];
unset(
$zyxel
);