mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
Added graphs for number of APs and number of Clients attached to the APs
This commit is contained in:
20
html/includes/graphs/device/ciscowlc_numaps.inc.php
Normal file
20
html/includes/graphs/device/ciscowlc_numaps.inc.php
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
$rrd_filename = $config['rrd_dir'].'/'.$device['hostname'].'/ciscowlc.rrd';
|
||||||
|
|
||||||
|
$rrd_list[0]['filename'] = $rrd_filename;
|
||||||
|
$rrd_list[0]['descr'] = 'Number of APs';
|
||||||
|
$rrd_list[0]['ds'] = 'NUMAPS';
|
||||||
|
|
||||||
|
$unit_text = 'APs';
|
||||||
|
$units = '';
|
||||||
|
$total_units = '';
|
||||||
|
$colours = 'mixed';
|
||||||
|
|
||||||
|
$scale_min = '0';
|
||||||
|
$nototal = 1;
|
||||||
|
|
||||||
|
|
||||||
|
if ($rrd_list) {
|
||||||
|
include 'includes/graphs/generic_multi_line.inc.php';
|
||||||
|
}
|
21
html/includes/graphs/device/ciscowlc_numclients.inc.php
Normal file
21
html/includes/graphs/device/ciscowlc_numclients.inc.php
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
$rrd_filename = $config['rrd_dir'].'/'.$device['hostname'].'/ciscowlc.rrd';
|
||||||
|
|
||||||
|
$rrd_list[0]['filename'] = $rrd_filename;
|
||||||
|
$rrd_list[0]['descr'] = 'Clients';
|
||||||
|
$rrd_list[0]['ds'] = 'NUMCLIENTS';
|
||||||
|
|
||||||
|
$unit_text = 'Clients';
|
||||||
|
|
||||||
|
$units = '';
|
||||||
|
$total_units = '';
|
||||||
|
$colours = 'mixed';
|
||||||
|
|
||||||
|
$scale_min = '0';
|
||||||
|
|
||||||
|
$nototal = 1;
|
||||||
|
|
||||||
|
if ($rrd_list) {
|
||||||
|
include 'includes/graphs/generic_multi_line.inc.php';
|
||||||
|
}
|
@@ -413,6 +413,10 @@ $config['os'][$os]['over'][1]['graph'] = 'device_processor';
|
|||||||
$config['os'][$os]['over'][1]['text'] = 'CPU Usage';
|
$config['os'][$os]['over'][1]['text'] = 'CPU Usage';
|
||||||
$config['os'][$os]['over'][2]['graph'] = 'device_mempool';
|
$config['os'][$os]['over'][2]['graph'] = 'device_mempool';
|
||||||
$config['os'][$os]['over'][2]['text'] = 'Memory Usage';
|
$config['os'][$os]['over'][2]['text'] = 'Memory Usage';
|
||||||
|
$config['os'][$os]['over'][3]['graph'] = 'device_ciscowlc_numaps';
|
||||||
|
$config['os'][$os]['over'][3]['text'] = 'Number of APs';
|
||||||
|
$config['os'][$os]['over'][4]['graph'] = 'device_ciscowlc_numclients';
|
||||||
|
$config['os'][$os]['over'][4]['text'] = 'Number of Clients';
|
||||||
$config['os'][$os]['icon'] = 'cisco';
|
$config['os'][$os]['icon'] = 'cisco';
|
||||||
|
|
||||||
// Brocade NOS
|
// Brocade NOS
|
||||||
|
@@ -10,6 +10,8 @@
|
|||||||
* the source code distribution for details.
|
* the source code distribution for details.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
global $config;
|
||||||
|
|
||||||
$oids = 'entPhysicalModelName.1 entPhysicalSoftwareRev.1 entPhysicalSerialNum.1';
|
$oids = 'entPhysicalModelName.1 entPhysicalSoftwareRev.1 entPhysicalSerialNum.1';
|
||||||
|
|
||||||
$data = snmp_get_multi($device, $oids, '-OQUs', 'ENTITY-MIB');
|
$data = snmp_get_multi($device, $oids, '-OQUs', 'ENTITY-MIB');
|
||||||
@@ -29,3 +31,52 @@ if (isset($data[1]['entPhysicalModelName']) && $data[1]['entPhysicalModelName']
|
|||||||
if (empty($hardware)) {
|
if (empty($hardware)) {
|
||||||
$hardware = snmp_get($device, 'sysObjectID.0', '-Osqv', 'SNMPv2-MIB:CISCO-PRODUCTS-MIB');
|
$hardware = snmp_get($device, 'sysObjectID.0', '-Osqv', 'SNMPv2-MIB:CISCO-PRODUCTS-MIB');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$oids_AP_Name = array(
|
||||||
|
'bsnAPName',
|
||||||
|
);
|
||||||
|
|
||||||
|
$oids_AP_Users = array(
|
||||||
|
'bsnApIfNoOfUsers',
|
||||||
|
);
|
||||||
|
|
||||||
|
foreach ($oids_AP_Name as $oid) {
|
||||||
|
$stats = snmpwalk_cache_oid($device, $oid, $stats, 'AIRESPACE-WIRELESS-MIB', null, '-OQUsxb');
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($oids_AP_Users as $oid) {
|
||||||
|
$APstats = snmpwalk_cache_oid($device, $oid, $APstats, 'AIRESPACE-WIRELESS-MIB', null, '-OQUsxb');
|
||||||
|
}
|
||||||
|
|
||||||
|
$numAccessPoints = count($stats);
|
||||||
|
$numClients = 0;
|
||||||
|
|
||||||
|
foreach ($APstats as $key => $value) {
|
||||||
|
$numClients += $value['bsnApIfNoOfUsers'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$rrdfile = $host_rrd.'/ciscowlc'.safename('.rrd');
|
||||||
|
if (!is_file($rrdfile)) {
|
||||||
|
rrdtool_create($rrdfile, ' --step 300 DS:NUMAPS:GAUGE:600:0:12500000000 DS:NUMCLIENTS:GAUGE:600:0:12500000000 '.$config['rrd_rra']);
|
||||||
|
}
|
||||||
|
|
||||||
|
$fields = array(
|
||||||
|
'NUMAPS' => $numAccessPoints,
|
||||||
|
'NUMCLIENTS' => $numClients
|
||||||
|
);
|
||||||
|
$ret = rrdtool_update($rrdfile, $fields);
|
||||||
|
|
||||||
|
// also save the info about how many clients in the same place as the wireless module
|
||||||
|
$wificlientsrrd = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('wificlients-radio1.rrd');
|
||||||
|
|
||||||
|
if (!is_file($wificlientsrrd)) {
|
||||||
|
rrdtool_create($wificlientsrrd, '--step 300 DS:wificlients:GAUGE:600:-273:10000 '.$config['rrd_rra']);
|
||||||
|
}
|
||||||
|
|
||||||
|
$fields = array(
|
||||||
|
'wificlients' => $numClients
|
||||||
|
);
|
||||||
|
|
||||||
|
rrdtool_update($wificlientsrrd, $fields);
|
||||||
|
$graphs['wifi_clients'] = true;
|
||||||
|
Reference in New Issue
Block a user