mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
This commit is contained in:
@@ -2,6 +2,8 @@ os: jetstream
|
|||||||
text: 'TP-Link JetStream'
|
text: 'TP-Link JetStream'
|
||||||
type: network
|
type: network
|
||||||
icon: tplink
|
icon: tplink
|
||||||
|
mib_dir:
|
||||||
|
- tplink
|
||||||
discovery:
|
discovery:
|
||||||
- sysObjectId:
|
- sysObjectId:
|
||||||
- .1.3.6.1.4.1.11863.5.34
|
- .1.3.6.1.4.1.11863.5.34
|
||||||
|
41
includes/discovery/mempools/jetstream.inc.php
Normal file
41
includes/discovery/mempools/jetstream.inc.php
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* jetstream.inc.php
|
||||||
|
*
|
||||||
|
* LibreNMS mempool discovery module for jetstream
|
||||||
|
*
|
||||||
|
* 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['os'] === 'jetstream') {
|
||||||
|
$data = snmpwalk_cache_oid($device, 'tpSysMonitorMemoryTable', array(), 'TPLINK-SYSMONITOR-MIB', 'hp');
|
||||||
|
foreach ($data as $index => $item) {
|
||||||
|
if (is_numeric($item['tpSysMonitorMemoryUtilization'])) {
|
||||||
|
$descr = "Memory #$index";
|
||||||
|
discover_mempool($valid_mempool, $device, $index, 'jetstream', $descr, '1');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
unset(
|
||||||
|
$data,
|
||||||
|
$descr,
|
||||||
|
$index,
|
||||||
|
$item
|
||||||
|
);
|
45
includes/discovery/processors/jetstream.inc.php
Normal file
45
includes/discovery/processors/jetstream.inc.php
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* jetstream.inc.php
|
||||||
|
*
|
||||||
|
* LibreNMS processor discovery module for jetstream
|
||||||
|
*
|
||||||
|
* 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['os'] === 'jetstream') {
|
||||||
|
$data = snmpwalk_cache_oid($device, 'tpSysMonitorCpuTable', array(), 'TPLINK-SYSMONITOR-MIB', 'hp');
|
||||||
|
foreach ($data as $index => $item) {
|
||||||
|
if (is_numeric($item['tpSysMonitorCpu5Seconds'])) {
|
||||||
|
$descr = "Proc #$index";
|
||||||
|
$oid = '.1.3.6.1.4.1.11863.6.4.1.1.1.1.2.' . $index;
|
||||||
|
$usage = $item['tpSysMonitorCpu5Seconds'];
|
||||||
|
discover_processor($valid['processor'], $device, $oid, $index, 'jetstream', $descr, 1, $usage);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
unset(
|
||||||
|
$data,
|
||||||
|
$descr,
|
||||||
|
$index,
|
||||||
|
$oid,
|
||||||
|
$item,
|
||||||
|
$usage
|
||||||
|
);
|
37
includes/polling/mempools/jetstream.inc.php
Normal file
37
includes/polling/mempools/jetstream.inc.php
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* jetstream.inc.php
|
||||||
|
*
|
||||||
|
* LibreNMS mempool poller module for jetstream
|
||||||
|
*
|
||||||
|
* 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['os'] === 'jetstream') {
|
||||||
|
$oid = '.1.3.6.1.4.1.11863.6.4.1.2.1.1.2.' . $mempool['mempool_index'];
|
||||||
|
$used = snmp_get($device, $oid, '-OvQ');
|
||||||
|
$mempool['total'] = 100;
|
||||||
|
$mempool['free'] = ($mempool['total'] - $used);
|
||||||
|
$mempool['used'] = $used;
|
||||||
|
}
|
||||||
|
|
||||||
|
unset(
|
||||||
|
$oid,
|
||||||
|
$used
|
||||||
|
);
|
40
mibs/tplink/TPLINK-MIB
Normal file
40
mibs/tplink/TPLINK-MIB
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
TPLINK-MIB DEFINITIONS ::= BEGIN
|
||||||
|
|
||||||
|
--iso OBJECT IDENTIFIER ::= { 1 }
|
||||||
|
--org OBJECT IDENTIFIER ::= { iso 3 }
|
||||||
|
--dod OBJECT IDENTIFIER ::= { org 6 }
|
||||||
|
--internet OBJECT IDENTIFIER ::= { dod 1 }
|
||||||
|
--private OBJECT IDENTIFIER ::= { internet 4 }
|
||||||
|
--enterprises OBJECT IDENTIFIER ::= { private 1 }
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
enterprises
|
||||||
|
FROM RFC1155-SMI
|
||||||
|
OBJECT-IDENTITY
|
||||||
|
FROM SNMPv2-SMI;
|
||||||
|
|
||||||
|
tplink OBJECT IDENTIFIER ::= { enterprises 11863 }
|
||||||
|
|
||||||
|
switch OBJECT IDENTIFIER ::= { tplink 1 }
|
||||||
|
router OBJECT IDENTIFIER ::= { tplink 2 }
|
||||||
|
wireless OBJECT IDENTIFIER ::= { tplink 3 }
|
||||||
|
adsl OBJECT IDENTIFIER ::= { tplink 4 }
|
||||||
|
|
||||||
|
|
||||||
|
tplinkProducts OBJECT-IDENTITY
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"tplinkProducts is the root OBJECT IDENTIFIER from
|
||||||
|
which sysObjectID values are assigned. Actual
|
||||||
|
values are defined in TPLINK-PRODUCTS-MIB."
|
||||||
|
::= { tplink 5 }
|
||||||
|
|
||||||
|
tplinkMgmt OBJECT-IDENTITY
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"tplinkMgmt is the main subtree for new mib development."
|
||||||
|
|
||||||
|
::= { tplink 6 }
|
||||||
|
|
||||||
|
END
|
||||||
|
|
185
mibs/tplink/TPLINK-SYSMONITOR-MIB
Normal file
185
mibs/tplink/TPLINK-SYSMONITOR-MIB
Normal file
@@ -0,0 +1,185 @@
|
|||||||
|
-- ============================================================================
|
||||||
|
-- Copyright(c) 2008-2012 Shenzhen TP-LINK Technologies Co.,Ltd.
|
||||||
|
--
|
||||||
|
-- FileName : tplink-sysMonitor.mib
|
||||||
|
-- Description :
|
||||||
|
-- Reference :
|
||||||
|
-- Version : 1.0
|
||||||
|
-- History :
|
||||||
|
-- V1.0 11Dec12 Created by dengjianjun
|
||||||
|
-- Original version.
|
||||||
|
-- ============================================================================
|
||||||
|
|
||||||
|
TPLINK-SYSMONITOR-MIB DEFINITIONS ::= BEGIN
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
MODULE-IDENTITY
|
||||||
|
FROM SNMPv2-SMI
|
||||||
|
OBJECT-TYPE
|
||||||
|
FROM SNMPv2-SMI
|
||||||
|
NOTIFICATION-TYPE
|
||||||
|
FROM SNMPv2-SMI
|
||||||
|
tplinkMgmt
|
||||||
|
FROM TPLINK-MIB;
|
||||||
|
|
||||||
|
tplinkSysMonitorMIB MODULE-IDENTITY
|
||||||
|
LAST-UPDATED
|
||||||
|
"201212110930Z"
|
||||||
|
ORGANIZATION
|
||||||
|
"TPLINK"
|
||||||
|
CONTACT-INFO
|
||||||
|
"www.tplink.com.cn"
|
||||||
|
DESCRIPTION
|
||||||
|
"Private MIB for System Monitor."
|
||||||
|
::= { tplinkMgmt 4 }
|
||||||
|
|
||||||
|
tplinkSysMonitorMIBObjects OBJECT IDENTIFIER ::= { tplinkSysMonitorMIB 1 }
|
||||||
|
tpSysMonitorCpu OBJECT IDENTIFIER ::= { tplinkSysMonitorMIBObjects 1 }
|
||||||
|
tpSysMonitorCpuTable OBJECT-TYPE
|
||||||
|
SYNTAX SEQUENCE OF TPSYSMONITORCPUENTRY
|
||||||
|
MAX-ACCESS
|
||||||
|
not-accessible
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the CPU utilization of all UNITs."
|
||||||
|
::= { tpSysMonitorCpu 1 }
|
||||||
|
|
||||||
|
tpSysMonitorCpuEntry OBJECT-TYPE
|
||||||
|
SYNTAX TPSYSMONITORCPUENTRY
|
||||||
|
MAX-ACCESS
|
||||||
|
not-accessible
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"An entry contains of the information of CPU utilization."
|
||||||
|
INDEX
|
||||||
|
{ tpSysMonitorCpuUnitNumber }
|
||||||
|
::= { tpSysMonitorCpuTable 1 }
|
||||||
|
|
||||||
|
TPSYSMONITORCPUENTRY ::=
|
||||||
|
SEQUENCE
|
||||||
|
{
|
||||||
|
tpSysMonitorCpuUnitNumber
|
||||||
|
INTEGER,
|
||||||
|
tpSysMonitorCpu5Seconds
|
||||||
|
INTEGER,
|
||||||
|
tpSysMonitorCpu1Minute
|
||||||
|
INTEGER,
|
||||||
|
tpSysMonitorCpu5Minutes
|
||||||
|
INTEGER
|
||||||
|
}
|
||||||
|
|
||||||
|
tpSysMonitorCpuUnitNumber OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER
|
||||||
|
MAX-ACCESS
|
||||||
|
read-only
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the UNIT number."
|
||||||
|
::= { tpSysMonitorCpuEntry 1 }
|
||||||
|
|
||||||
|
tpSysMonitorCpu5Seconds OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER
|
||||||
|
(0..100)
|
||||||
|
MAX-ACCESS
|
||||||
|
read-only
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the CPU utilization in 5 seconds."
|
||||||
|
::= { tpSysMonitorCpuEntry 2 }
|
||||||
|
|
||||||
|
tpSysMonitorCpu1Minute OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER
|
||||||
|
(0..100)
|
||||||
|
MAX-ACCESS
|
||||||
|
read-only
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the CPU utilization in 1 minute."
|
||||||
|
::= { tpSysMonitorCpuEntry 3 }
|
||||||
|
|
||||||
|
tpSysMonitorCpu5Minutes OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER
|
||||||
|
(0..100)
|
||||||
|
MAX-ACCESS
|
||||||
|
read-only
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the CPU utilization in 5 minutes."
|
||||||
|
::= { tpSysMonitorCpuEntry 4 }
|
||||||
|
|
||||||
|
|
||||||
|
tpSysMonitorMemory OBJECT IDENTIFIER ::= { tplinkSysMonitorMIBObjects 2 }
|
||||||
|
tpSysMonitorMemoryTable OBJECT-TYPE
|
||||||
|
SYNTAX SEQUENCE OF TPSYSMONITORMEMORYENTRY
|
||||||
|
MAX-ACCESS
|
||||||
|
not-accessible
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the memory utilization of all UNITs."
|
||||||
|
::= { tpSysMonitorMemory 1 }
|
||||||
|
|
||||||
|
tpSysMonitorMemoryEntry OBJECT-TYPE
|
||||||
|
SYNTAX TPSYSMONITORMEMORYENTRY
|
||||||
|
MAX-ACCESS
|
||||||
|
not-accessible
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"An entry contains of the information of memory utilization."
|
||||||
|
INDEX
|
||||||
|
{ tpSysMonitorMemoryUnitNumber }
|
||||||
|
::= { tpSysMonitorMemoryTable 1 }
|
||||||
|
|
||||||
|
TPSYSMONITORMEMORYENTRY ::=
|
||||||
|
SEQUENCE
|
||||||
|
{
|
||||||
|
tpSysMonitorMemoryUnitNumber
|
||||||
|
INTEGER,
|
||||||
|
tpSysMonitorMemoryUtilization
|
||||||
|
INTEGER
|
||||||
|
}
|
||||||
|
|
||||||
|
tpSysMonitorMemoryUnitNumber OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER
|
||||||
|
MAX-ACCESS
|
||||||
|
read-only
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the UNIT number."
|
||||||
|
::= { tpSysMonitorMemoryEntry 1 }
|
||||||
|
|
||||||
|
tpSysMonitorMemoryUtilization OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER
|
||||||
|
(0..100)
|
||||||
|
MAX-ACCESS
|
||||||
|
read-only
|
||||||
|
STATUS
|
||||||
|
current
|
||||||
|
DESCRIPTION
|
||||||
|
"Displays the memory utilization."
|
||||||
|
::= { tpSysMonitorMemoryEntry 2 }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
tplinkSysMonitorNotifications OBJECT IDENTIFIER ::= { tplinkSysMonitorMIB 2 }
|
||||||
|
tpSysMonitorCpuOverLoading NOTIFICATION-TYPE
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"CPU utilization reached the threshold."
|
||||||
|
::= { tplinkSysMonitorNotifications 1 }
|
||||||
|
|
||||||
|
tpSysMonitorMemoryOverLoading NOTIFICATION-TYPE
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Memory utilization reached the threshold."
|
||||||
|
::= { tplinkSysMonitorNotifications 2 }
|
||||||
|
|
||||||
|
END
|
Reference in New Issue
Block a user