mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
newdevice: Epmp utilization calculation and graphing for Cambium devices
This commit is contained in:
committed by
Neil Lathwood
parent
c5c560328b
commit
4176379ae3
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
/*
|
||||
* LibreNMS
|
||||
*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
require 'includes/graphs/common.inc.php';
|
||||
$rrdfilename = rrd_name($device['hostname'], 'cambium-epmp-frameUtilization');
|
||||
if (file_exists($rrdfilename)) {
|
||||
$rrd_options .= " COMMENT:'% Now Ave Max \\n'";
|
||||
$rrd_options .= ' DEF:dlwlanframeutilization='.$rrdfilename.':dlwlanfrut:AVERAGE ';
|
||||
$rrd_options .= ' DEF:ulwlanframeutilization='.$rrdfilename.':ulwlanfrut:AVERAGE ';
|
||||
$rrd_options .= " LINE2:dlwlanframeutilization#FF0000:'Downlink Frame Utilization ' ";
|
||||
$rrd_options .= ' GPRINT:dlwlanframeutilization:LAST:%0.2lf%s ';
|
||||
$rrd_options .= ' GPRINT:dlwlanframeutilization:MIN:%0.2lf%s ';
|
||||
$rrd_options .= ' GPRINT:dlwlanframeutilization:MAX:%0.2lf%s\\\l ';
|
||||
$rrd_options .= " LINE2:ulwlanframeutilization#003EFF:'Uplink Frame Utilization ' ";
|
||||
$rrd_options .= ' GPRINT:ulwlanframeutilization:LAST:%0.2lf%s ';
|
||||
$rrd_options .= ' GPRINT:ulwlanframeutilization:MIN:%0.2lf%s ';
|
||||
$rrd_options .= ' GPRINT:ulwlanframeutilization:MAX:%0.2lf%s\\\l ';
|
||||
}
|
||||
@@ -333,6 +333,9 @@ $config['graph_types']['device']['cambium_epmp_gpsSync']['descr'] = 'GPS Sync
|
||||
$config['graph_types']['device']['cambium_epmp_freq']['section'] = 'wireless';
|
||||
$config['graph_types']['device']['cambium_epmp_freq']['order'] = '6';
|
||||
$config['graph_types']['device']['cambium_epmp_freq']['descr'] = 'Frequency';
|
||||
$config['graph_types']['device']['cambium-epmp-frameUtilization']['section'] = 'wireless';
|
||||
$config['graph_types']['device']['ccambium-epmp-frameUtilization']['order'] = '7';
|
||||
$config['graph_types']['device']['cambium-epmp-frameUtilization']['descr'] = 'Frame Utilization';
|
||||
|
||||
$config['graph_types']['device']['wifi_clients']['section'] = 'wireless';
|
||||
$config['graph_types']['device']['wifi_clients']['order'] = '0';
|
||||
|
||||
@@ -105,3 +105,29 @@ if (is_numeric($freq)) {
|
||||
data_update($device, 'cambium-epmp-freq', $tags, $fields);
|
||||
$graphs['cambium_epmp_freq'] = true;
|
||||
}
|
||||
|
||||
$multi_get_array = snmp_get_multi($device, "ulWLanTotalAvailableFrameTimePerSecond.0 ulWLanTotalUsedFrameTimePerSecond.0 dlWLanTotalAvailableFrameTimePerSecond.0 dlWLanTotalUsedFrameTimePerSecond.0", "-OQU", "CAMBIUM-PMP80211-MIB");
|
||||
|
||||
$ulWLanTotalAvailableFrameTimePerSecond = $multi_get_array[0]["CAMBIUM-PMP80211-MIB::ulWLanTotalAvailableFrameTimePerSecond"];
|
||||
$ulWLanTotalUsedFrameTimePerSecond = $multi_get_array[0]["CAMBIUM-PMP80211-MIB::ulWLanTotalUsedFrameTimePerSecond"];
|
||||
$dlWLanTotalAvailableFrameTimePerSecond = $multi_get_array[0]["CAMBIUM-PMP80211-MIB::dlWLanTotalAvailableFrameTimePerSecond"];
|
||||
$dlWLanTotalUsedFrameTimePerSecond = $multi_get_array[0]["CAMBIUM-PMP80211-MIB::dlWLanTotalUsedFrameTimePerSecond"];
|
||||
|
||||
if (is_numeric($ulWLanTotalAvailableFrameTimePerSecond) && is_numeric($ulWLanTotalUsedFrameTimePerSecond) && is_numeric($ulWLanTotalAvailableFrameTimePerSecond) && is_numeric($ulWLanTotalUsedFrameTimePerSecond)) {
|
||||
$ulWlanFrameUtilization = round((($ulWLanTotalUsedFrameTimePerSecond/$ulWLanTotalAvailableFrameTimePerSecond)*100), 2);
|
||||
$dlWlanFrameUtilization = round((($dlWLanTotalUsedFrameTimePerSecond/$dlWLanTotalAvailableFrameTimePerSecond)*100), 2);
|
||||
d_echo($dlWlanFrameUtilization);
|
||||
d_echo($ulWlanFrameUtilization);
|
||||
$rrd_def = array(
|
||||
'DS:ulwlanfrut:GAUGE:600:0:100000',
|
||||
'DS:dlwlanfrut:GAUGE:600:0:100000'
|
||||
);
|
||||
$fields = array(
|
||||
'ulwlanframeutilization' => $ulWlanFrameUtilization,
|
||||
'dlwlanframeutilization' => $dlWlanFrameUtilization
|
||||
);
|
||||
$tags = compact('rrd_def');
|
||||
data_update($device, 'cambium-epmp-frameUtilization', $tags, $fields);
|
||||
$graphs['cambium-epmp-frameUtilization'] = true;
|
||||
}
|
||||
unset($multi_get_array, $ulWlanFrameUtilization, $ulWLanTotalAvailableFrameTimePerSecond, $ulWLanTotalUsedFrameTimePerSecond, $dlWlanFrameUtilization, $dlWLanTotalAvailableFrameTimePerSecond, $dlWLanTotalUsedFrameTimePerSecond);
|
||||
|
||||
Reference in New Issue
Block a user