From 4dd56bc72e32ddada1450cd4a4d132d37c4fc66d Mon Sep 17 00:00:00 2001 From: Tony Murray Date: Thu, 2 Nov 2017 16:07:58 -0500 Subject: [PATCH] refactor: Wifi cleanup (#7607) * refactor: remove duplicated data collection in old wifi module Still a bit more work before we can fully remove it * remove unused graphs update overview graphs for some wireless os --- LibreNMS/OS/Unifi.php | 10 ++ LibreNMS/OS/XirrusAos.php | 26 ++++ doc/Developing/os/Initial-Detection.md | 1 - .../graphs/device/saf_modemCapacity.inc.php | 23 --- .../graphs/device/saf_modemRadialMSE.inc.php | 16 -- .../graphs/device/saf_radioRxLevel.inc.php | 15 -- .../graphs/device/saf_radioTxPower.inc.php | 15 -- .../graphs/device/siklu_rfAverageCinr.inc.php | 14 -- .../graphs/device/siklu_rfAverageRssi.inc.php | 14 -- .../siklu_rfOperationalFrequency.inc.php | 14 -- .../device/ubnt_airmax_AirMaxCapacity.inc.php | 18 --- .../device/ubnt_airmax_AirMaxQuality.inc.php | 18 --- .../device/ubnt_airmax_RadioDistance.inc.php | 15 -- .../device/ubnt_airmax_RadioFreq.inc.php | 16 -- .../device/ubnt_airmax_RadioRssi_0.inc.php | 15 -- .../device/ubnt_airmax_RadioRssi_1.inc.php | 15 -- .../device/ubnt_airmax_RadioTxPower.inc.php | 19 --- .../device/ubnt_airmax_WlStatCcq.inc.php | 19 --- .../ubnt_airmax_WlStatNoiseFloor.inc.php | 18 --- .../device/ubnt_airmax_WlStatRssi.inc.php | 15 -- .../device/ubnt_airmax_WlStatRxRate.inc.php | 16 -- .../device/ubnt_airmax_WlStatSignal.inc.php | 19 --- .../device/ubnt_airmax_WlStatStaCount.inc.php | 16 -- .../device/ubnt_airmax_WlStatTxRate.inc.php | 16 -- .../device/ubnt_unifi_RadioCu_0.inc.php | 35 ----- .../device/ubnt_unifi_RadioCu_1.inc.php | 35 ----- .../graphs/device/xirrus_dataRates.inc.php | 44 ------ .../graphs/device/xirrus_noiseFloor.inc.php | 44 ------ .../graphs/device/xirrus_rssi.inc.php | 44 ------ includes/definitions.inc.php | 107 ------------- includes/definitions/airos-af.yaml | 5 +- includes/definitions/airos.yaml | 5 +- includes/definitions/saf.yaml | 4 +- includes/definitions/siklu.yaml | 2 + includes/definitions/unifi.yaml | 4 +- includes/definitions/xirrus_aos.yaml | 2 +- includes/polling/mib/saf-mib.inc.php | 47 ------ includes/polling/mib/siklu-mib.inc.php | 31 ---- .../polling/mib/ubnt-airfiber-mib.inc.php | 30 +--- includes/polling/mib/ubnt-airmax-mib.inc.php | 140 ------------------ includes/polling/mib/ubnt-unifi-mib.inc.php | 69 --------- includes/polling/wifi.inc.php | 38 ++--- includes/polling/wireless/xirrus.inc.php | 32 +--- 43 files changed, 65 insertions(+), 1036 deletions(-) delete mode 100644 html/includes/graphs/device/saf_modemCapacity.inc.php delete mode 100644 html/includes/graphs/device/saf_modemRadialMSE.inc.php delete mode 100644 html/includes/graphs/device/saf_radioRxLevel.inc.php delete mode 100644 html/includes/graphs/device/saf_radioTxPower.inc.php delete mode 100644 html/includes/graphs/device/siklu_rfAverageCinr.inc.php delete mode 100644 html/includes/graphs/device/siklu_rfAverageRssi.inc.php delete mode 100644 html/includes/graphs/device/siklu_rfOperationalFrequency.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_AirMaxCapacity.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_AirMaxQuality.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_RadioDistance.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_RadioFreq.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_RadioRssi_0.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_RadioRssi_1.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_RadioTxPower.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_WlStatCcq.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_WlStatNoiseFloor.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_WlStatRssi.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_WlStatRxRate.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_WlStatSignal.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_WlStatStaCount.inc.php delete mode 100644 html/includes/graphs/device/ubnt_airmax_WlStatTxRate.inc.php delete mode 100644 html/includes/graphs/device/ubnt_unifi_RadioCu_0.inc.php delete mode 100644 html/includes/graphs/device/ubnt_unifi_RadioCu_1.inc.php delete mode 100644 html/includes/graphs/device/xirrus_dataRates.inc.php delete mode 100644 html/includes/graphs/device/xirrus_noiseFloor.inc.php delete mode 100644 html/includes/graphs/device/xirrus_rssi.inc.php delete mode 100644 includes/polling/mib/saf-mib.inc.php delete mode 100644 includes/polling/mib/ubnt-airmax-mib.inc.php delete mode 100644 includes/polling/mib/ubnt-unifi-mib.inc.php diff --git a/LibreNMS/OS/Unifi.php b/LibreNMS/OS/Unifi.php index fa6f7ea71c..3c6826a000 100644 --- a/LibreNMS/OS/Unifi.php +++ b/LibreNMS/OS/Unifi.php @@ -273,6 +273,7 @@ class Unifi extends OS implements } $util_oids = snmpwalk_cache_oid($this->getDevice(), 'unifiRadioCuSelfRx', $util_oids, 'UBNT-UniFi-MIB'); $util_oids = snmpwalk_cache_oid($this->getDevice(), 'unifiRadioCuSelfTx', $util_oids, 'UBNT-UniFi-MIB'); + $util_oids = snmpwalk_cache_oid($this->getDevice(), 'unifiRadioOtherBss', $util_oids, 'UBNT-UniFi-MIB'); $radio_names = $this->getCacheByIndex('unifiRadioRadio', 'UBNT-UniFi-MIB'); $sensors = array(); @@ -304,6 +305,15 @@ class Unifi extends OS implements "Self Tx Util ($name)", $util_oids[$index]['unifiRadioCuSelfTx'] ); + $sensors[] = new WirelessSensor( + 'utilization', + $this->getDeviceId(), + '.1.3.6.1.4.1.41112.1.6.1.1.1.9.' . $index, + 'unifi-other', + $index, + "Other BSS Util ($name)", + $util_oids[$index]['unifiRadioOtherBss'] + ); } return $sensors; diff --git a/LibreNMS/OS/XirrusAos.php b/LibreNMS/OS/XirrusAos.php index c7ea328570..f403ead380 100644 --- a/LibreNMS/OS/XirrusAos.php +++ b/LibreNMS/OS/XirrusAos.php @@ -29,6 +29,8 @@ use LibreNMS\Device\WirelessSensor; use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessFrequencyDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessNoiseFloorDiscovery; +use LibreNMS\Interfaces\Discovery\Sensors\WirelessRateDiscovery; +use LibreNMS\Interfaces\Discovery\Sensors\WirelessRssiDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessSnrDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessUtilizationDiscovery; use LibreNMS\Interfaces\Polling\Sensors\WirelessFrequencyPolling; @@ -40,6 +42,8 @@ class XirrusAos extends OS implements WirelessFrequencyPolling, WirelessNoiseFloorDiscovery, WirelessUtilizationDiscovery, + WirelessRateDiscovery, + WirelessRssiDiscovery, WirelessSnrDiscovery { @@ -89,6 +93,28 @@ class XirrusAos extends OS implements return $this->discoverSensor('noise-floor', 'realtimeMonitorNoiseFloor', '.1.3.6.1.4.1.21013.1.2.24.7.1.10.'); } + /** + * Discover wireless rate. This is in bps. Type is rate. + * Returns an array of LibreNMS\Device\Sensor objects that have been discovered + * + * @return array + */ + public function discoverWirelessRate() + { + return $this->discoverSensor('rate', 'realtimeMonitorAverageDataRate', '.1.3.6.1.4.1.21013.1.2.24.7.1.7.'); + } + + /** + * Discover wireless RSSI (Received Signal Strength Indicator). This is in dBm. Type is rssi. + * Returns an array of LibreNMS\Device\Sensor objects that have been discovered + * + * @return array + */ + public function discoverWirelessRssi() + { + return $this->discoverSensor('rssi', 'realtimeMonitorAverageRSSI', '.1.3.6.1.4.1.21013.1.2.24.7.1.8.'); + } + /** * Discover wireless SNR. This is in dB. Type is snr. * Formula: SNR = Signal or Rx Power - Noise Floor diff --git a/doc/Developing/os/Initial-Detection.md b/doc/Developing/os/Initial-Detection.md index 31a032504a..4bba581ad4 100644 --- a/doc/Developing/os/Initial-Detection.md +++ b/doc/Developing/os/Initial-Detection.md @@ -68,7 +68,6 @@ mib_dir: ```yaml poller_modules: - wifi: 1 cisco-ace-serverfarms: 0 cisco-ace-loadbalancer: 0 ``` diff --git a/html/includes/graphs/device/saf_modemCapacity.inc.php b/html/includes/graphs/device/saf_modemCapacity.inc.php deleted file mode 100644 index 1d975ca03c..0000000000 --- a/html/includes/graphs/device/saf_modemCapacity.inc.php +++ /dev/null @@ -1,23 +0,0 @@ - 'Radio0OtherBss', - 'filename' => $rrd_filename, - 'descr' => 'Radio0 Others', - ), - array( - 'ds' => 'Radio0CuSelfRx', - 'filename' => $rrd_filename, - 'descr' => 'Radio0 RX', - ), - array( - 'ds' => 'Radio0CuSelfTx', - 'filename' => $rrd_filename, - 'descr' => 'Radio0 TX', - ), - ); -} else { - echo "file missing: $rrd_filename"; -} - -require 'includes/graphs/generic_multi.inc.php'; diff --git a/html/includes/graphs/device/ubnt_unifi_RadioCu_1.inc.php b/html/includes/graphs/device/ubnt_unifi_RadioCu_1.inc.php deleted file mode 100644 index 58532bc12f..0000000000 --- a/html/includes/graphs/device/ubnt_unifi_RadioCu_1.inc.php +++ /dev/null @@ -1,35 +0,0 @@ - 'Radio1OtherBss', - 'filename' => $rrd_filename, - 'descr' => 'Radio1 Others', - ), - array( - 'ds' => 'Radio1CuSelfRx', - 'filename' => $rrd_filename, - 'descr' => 'Radio1 RX', - ), - array( - 'ds' => 'Radio1CuSelfTx', - 'filename' => $rrd_filename, - 'descr' => 'Radio1 TX', - ), - ); -} else { - echo "file missing: $rrd_filename"; -} - -require 'includes/graphs/generic_multi.inc.php'; diff --git a/html/includes/graphs/device/xirrus_dataRates.inc.php b/html/includes/graphs/device/xirrus_dataRates.inc.php deleted file mode 100644 index e46e256d51..0000000000 --- a/html/includes/graphs/device/xirrus_dataRates.inc.php +++ /dev/null @@ -1,44 +0,0 @@ - 'FF0000', - 2 => '0000FF', - 3 => '00FF00', - 4 => 'FF00FF', - 5 => '000000', - 6 => 'FFFF00', - 7 => 'C0C0C0', - 8 => '800000', - 9 => '808000', - 10 => '008000', - 11 => '00FFFF', - 12 => '008080', - 13 => '000080', - 14 => '800080', - 15 => 'FF69B4', - 16 => '006400' -); - -$rrd_options .= ' -l 0 -E '; -$rrd_options .= " COMMENT:'Average Data Rate Cur Min Max\\n'"; -$radioId=1; -foreach (glob(rrd_name($device['hostname'], 'xirrus_stats-', '*.rrd')) as $rrd) { - // get radio name - preg_match("/xirrus_stats-iap([0-9]{1,2}).rrd/", $rrd, $out); - list(,$radioId)=$out; - - // build graph - $color=$pallette[$radioId]; - - $descr = "iap$radioId "; - - $rrd_options .= " DEF:rate$radioId=$rrd:dataRate:AVERAGE"; - $rrd_options .= " LINE2:rate$radioId#".$color.":'".$descr."'"; - $rrd_options .= " GPRINT:rate$radioId:LAST:'%5.0lf'"; - $rrd_options .= " GPRINT:rate$radioId:MIN:'%5.0lf'"; - $rrd_options .= " GPRINT:rate$radioId:MAX:'%5.0lf'\\l"; - - $radioId++; -}//end foreach diff --git a/html/includes/graphs/device/xirrus_noiseFloor.inc.php b/html/includes/graphs/device/xirrus_noiseFloor.inc.php deleted file mode 100644 index 5fca2c028a..0000000000 --- a/html/includes/graphs/device/xirrus_noiseFloor.inc.php +++ /dev/null @@ -1,44 +0,0 @@ - 'FF0000', - 2 => '0000FF', - 3 => '00FF00', - 4 => 'FF00FF', - 5 => '000000', - 6 => 'FFFF00', - 7 => 'C0C0C0', - 8 => '800000', - 9 => '808000', - 10 => '008000', - 11 => '00FFFF', - 12 => '008080', - 13 => '000080', - 14 => '800080', - 15 => 'FF69B4', - 16 => '006400' -); - -$rrd_options .= ' -E '; -$rrd_options .= " COMMENT:'Noisefloor Cur Min Max\\n'"; -$radioId=1; -foreach (glob(rrd_name($device['hostname'], 'xirrus_stats-', '*.rrd')) as $rrd) { - // get radio name - preg_match("/xirrus_stats-iap([0-9]{1,2}).rrd/", $rrd, $out); - list(,$radioId)=$out; - - // build graph - $color=$pallette[$radioId]; - - $descr = "iap$radioId "; - - $rrd_options .= " DEF:noise$radioId=$rrd:noiseFloor:AVERAGE"; - $rrd_options .= " LINE2:noise$radioId#".$color.":'".$descr."'"; - $rrd_options .= " GPRINT:noise$radioId:LAST:'%5.0lf'"; - $rrd_options .= " GPRINT:noise$radioId:MIN:'%5.0lf'"; - $rrd_options .= " GPRINT:noise$radioId:MAX:'%5.0lf'\\l"; - - $radioId++; -}//end foreach diff --git a/html/includes/graphs/device/xirrus_rssi.inc.php b/html/includes/graphs/device/xirrus_rssi.inc.php deleted file mode 100644 index 3fec1d7736..0000000000 --- a/html/includes/graphs/device/xirrus_rssi.inc.php +++ /dev/null @@ -1,44 +0,0 @@ - 'FF0000', - 2 => '0000FF', - 3 => '00FF00', - 4 => 'FF00FF', - 5 => '000000', - 6 => 'FFFF00', - 7 => 'C0C0C0', - 8 => '800000', - 9 => '808000', - 10 => '008000', - 11 => '00FFFF', - 12 => '008080', - 13 => '000080', - 14 => '800080', - 15 => 'FF69B4', - 16 => '006400' -); - -$rrd_options .= ' -E '; -$rrd_options .= " COMMENT:'Signal RSSI Cur Min Max\\n'"; -$radioId=1; -foreach (glob(rrd_name($device['hostname'], 'xirrus_stats-', '*.rrd')) as $rrd) { - // get radio name - preg_match("/xirrus_stats-iap([0-9]{1,2}).rrd/", $rrd, $out); - list(,$radioId)=$out; - - // build graph - $color=$pallette[$radioId]; - - $descr = "iap$radioId "; - - $rrd_options .= " DEF:rssi$radioId=$rrd:rssi:AVERAGE"; - $rrd_options .= " LINE2:rssi$radioId#".$color.":'".$descr."'"; - $rrd_options .= " GPRINT:rssi$radioId:LAST:'%5.0lf'"; - $rrd_options .= " GPRINT:rssi$radioId:MIN:'%5.0lf'"; - $rrd_options .= " GPRINT:rssi$radioId:MAX:'%5.0lf'\\l"; - - $radioId++; -}//end foreach diff --git a/includes/definitions.inc.php b/includes/definitions.inc.php index eb505fe105..7abff8c065 100644 --- a/includes/definitions.inc.php +++ b/includes/definitions.inc.php @@ -20,62 +20,6 @@ $config['os_group'][$os_group]['over'][0]['text'] = 'Processor Usage'; $config['os_group'][$os_group]['over'][1]['graph'] = 'device_ucd_memory'; $config['os_group'][$os_group]['over'][1]['text'] = 'Memory Usage'; -// Device - Wireless - AirMAX -$config['graph_types']['device']['ubnt_airmax_WlStatStaCount']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_WlStatStaCount']['order'] = '0'; -$config['graph_types']['device']['ubnt_airmax_WlStatStaCount']['descr'] = 'Wireless Clients'; - -$config['graph_types']['device']['ubnt_airmax_RadioDistance']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_RadioDistance']['order'] = '1'; -$config['graph_types']['device']['ubnt_airmax_RadioDistance']['descr'] = 'Radio Distance'; - -$config['graph_types']['device']['ubnt_airmax_RadioFreq']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_RadioFreq']['order'] = '2'; -$config['graph_types']['device']['ubnt_airmax_RadioFreq']['descr'] = 'Radio Frequency'; - -$config['graph_types']['device']['ubnt_airmax_RadioTxPower']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_RadioTxPower']['order'] = '3'; -$config['graph_types']['device']['ubnt_airmax_RadioTxPower']['descr'] = 'Radio Tx Power'; - -$config['graph_types']['device']['ubnt_airmax_RadioRssi_0']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_RadioRssi_0']['order'] = '4'; -$config['graph_types']['device']['ubnt_airmax_RadioRssi_0']['descr'] = 'Radio Rssi Chain 0'; - -$config['graph_types']['device']['ubnt_airmax_RadioRssi_1']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_RadioRssi_1']['order'] = '5'; -$config['graph_types']['device']['ubnt_airmax_RadioRssi_1']['descr'] = 'Radio Rssi Chain 1'; - -$config['graph_types']['device']['ubnt_airmax_WlStatSignal']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_WlStatSignal']['order'] = '6'; -$config['graph_types']['device']['ubnt_airmax_WlStatSignal']['descr'] = 'Radio Signal'; - -$config['graph_types']['device']['ubnt_airmax_WlStatRssi']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_WlStatRssi']['order'] = '7'; -$config['graph_types']['device']['ubnt_airmax_WlStatRssi']['descr'] = 'Radio Overall RSSI'; - -$config['graph_types']['device']['ubnt_airmax_WlStatCcq']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_WlStatCcq']['order'] = '8'; -$config['graph_types']['device']['ubnt_airmax_WlStatCcq']['descr'] = 'Radio CCQ'; - -$config['graph_types']['device']['ubnt_airmax_WlStatNoiseFloor']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_WlStatNoiseFloor']['order'] = '10'; -$config['graph_types']['device']['ubnt_airmax_WlStatNoiseFloor']['descr'] = 'Radio Noise Floor'; - -$config['graph_types']['device']['ubnt_airmax_WlStatTxRate']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_WlStatTxRate']['order'] = '11'; -$config['graph_types']['device']['ubnt_airmax_WlStatTxRate']['descr'] = 'Radio Tx Rate'; - -$config['graph_types']['device']['ubnt_airmax_WlStatRxRate']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_WlStatRxRate']['order'] = '12'; -$config['graph_types']['device']['ubnt_airmax_WlStatRxRate']['descr'] = 'Radio Rx Rate'; - -$config['graph_types']['device']['ubnt_airmax_AirMaxQuality']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_AirMaxQuality']['order'] = '13'; -$config['graph_types']['device']['ubnt_airmax_AirMaxQuality']['descr'] = 'AirMax Quality'; - -$config['graph_types']['device']['ubnt_airmax_AirMaxCapacity']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_airmax_AirMaxCapacity']['order'] = '14'; -$config['graph_types']['device']['ubnt_airmax_AirMaxCapacity']['descr'] = 'AirMax Capacity'; // Device - AirFIBER $config['graph_types']['device']['ubnt_airfiber_RadioFreqs']['section'] = 'wireless'; @@ -118,28 +62,7 @@ $config['graph_types']['device']['ubnt_airfiber_RxPower']['section'] = 'wireless $config['graph_types']['device']['ubnt_airfiber_RxPower']['order'] = '8'; $config['graph_types']['device']['ubnt_airfiber_RxPower']['descr'] = 'Radio Rx Power'; -// Unifi Support -$config['graph_types']['device']['ubnt_unifi_RadioCu_0']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_unifi_RadioCu_0']['order'] = '0'; -$config['graph_types']['device']['ubnt_unifi_RadioCu_0']['descr'] = 'Radio0 Capacity Used'; - -$config['graph_types']['device']['ubnt_unifi_RadioCu_1']['section'] = 'wireless'; -$config['graph_types']['device']['ubnt_unifi_RadioCu_1']['order'] = '1'; -$config['graph_types']['device']['ubnt_unifi_RadioCu_1']['descr'] = 'Radio1 Capacity Used'; - // Siklu support -$config['graph_types']['device']['siklu_rfAverageRssi']['section'] = 'wireless'; -$config['graph_types']['device']['siklu_rfAverageRssi']['order'] = '0'; -$config['graph_types']['device']['siklu_rfAverageRssi']['descr'] = 'Radio Average RSSI'; - -$config['graph_types']['device']['siklu_rfAverageCinr']['section'] = 'wireless'; -$config['graph_types']['device']['siklu_rfAverageCinr']['order'] = '1'; -$config['graph_types']['device']['siklu_rfAverageCinr']['descr'] = 'Radio Average CINR'; - -$config['graph_types']['device']['siklu_rfOperationalFrequency']['section'] = 'wireless'; -$config['graph_types']['device']['siklu_rfOperationalFrequency']['order'] = '2'; -$config['graph_types']['device']['siklu_rfOperationalFrequency']['descr'] = 'Operational Frequency'; - $config['graph_types']['device']['siklu_rfinterfacePkts']['section'] = 'wireless'; $config['graph_types']['device']['siklu_rfinterfacePkts']['order'] = '3'; $config['graph_types']['device']['siklu_rfinterfacePkts']['descr'] = 'Packets'; @@ -156,23 +79,6 @@ $config['graph_types']['device']['siklu_rfinterfaceOtherOctets']['section'] = 'w $config['graph_types']['device']['siklu_rfinterfaceOtherOctets']['order'] = '6'; $config['graph_types']['device']['siklu_rfinterfaceOtherOctets']['descr'] = 'Other Octets'; -// SAF support -$config['graph_types']['device']['saf_radioRxLevel']['section'] = 'wireless'; -$config['graph_types']['device']['saf_radioRxLevel']['order'] = '0'; -$config['graph_types']['device']['saf_radioRxLevel']['descr'] = 'RX Level'; - -$config['graph_types']['device']['saf_radioTxPower']['section'] = 'wireless'; -$config['graph_types']['device']['saf_radioTxPower']['order'] = '1'; -$config['graph_types']['device']['saf_radioTxPower']['descr'] = 'TX Power'; - -$config['graph_types']['device']['saf_modemRadialMSE']['section'] = 'wireless'; -$config['graph_types']['device']['saf_modemRadialMSE']['order'] = '2'; -$config['graph_types']['device']['saf_modemRadialMSE']['descr'] = 'Radial MSE'; - -$config['graph_types']['device']['saf_modemCapacity']['section'] = 'wireless'; -$config['graph_types']['device']['saf_modemCapacity']['order'] = '3'; -$config['graph_types']['device']['saf_modemCapacity']['descr'] = 'Capacity'; - // Ceragon Ceraos support $config['graph_types']['device']['ceraos_RxLevel']['section'] = 'wireless'; $config['graph_types']['device']['ceraos_RxLevel']['order'] = '0'; @@ -343,10 +249,6 @@ $config['graph_types']['device']['cambium-epmp-frameUtilization']['section'] = ' $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'; -$config['graph_types']['device']['wifi_clients']['descr'] = 'Wireless Clients'; - $config['graph_types']['device']['agent']['section'] = 'poller'; $config['graph_types']['device']['agent']['order'] = '0'; $config['graph_types']['device']['agent']['descr'] = 'Agent Execution Time'; @@ -584,15 +486,6 @@ $config['graph_types']['device']['cisco_wwan_mnc']['section'] = 'wireless'; $config['graph_types']['device']['cisco_wwan_mnc']['order'] = '1'; $config['graph_types']['device']['cisco_wwan_mnc']['descr'] = 'MNC'; -$config['graph_types']['device']['xirrus_rssi']['section'] = 'wireless'; -$config['graph_types']['device']['xirrus_rssi']['order'] = '0'; -$config['graph_types']['device']['xirrus_rssi']['descr'] = 'Signal Rssi'; -$config['graph_types']['device']['xirrus_dataRates']['section'] = 'wireless'; -$config['graph_types']['device']['xirrus_dataRates']['order'] = '0'; -$config['graph_types']['device']['xirrus_dataRates']['descr'] = 'Average DataRates'; -$config['graph_types']['device']['xirrus_noiseFloor']['section'] = 'wireless'; -$config['graph_types']['device']['xirrus_noiseFloor']['order'] = '0'; -$config['graph_types']['device']['xirrus_noiseFloor']['descr'] = 'Noise Floor'; $config['graph_types']['device']['xirrus_stations']['section'] = 'wireless'; $config['graph_types']['device']['xirrus_stations']['order'] = '0'; $config['graph_types']['device']['xirrus_stations']['descr'] = 'Associated Stations'; diff --git a/includes/definitions/airos-af.yaml b/includes/definitions/airos-af.yaml index 096eefa8d0..3964a17610 100644 --- a/includes/definitions/airos-af.yaml +++ b/includes/definitions/airos-af.yaml @@ -5,7 +5,8 @@ icon: ubiquiti nobulk: 1 group: ubnt over: - - { graph: device_bits } - - { graph: device_processor } + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_rate, text: 'Wireless Rate' } + - { graph: device_processor, text: 'CPU Usage' } poller_modules: wifi: 1 diff --git a/includes/definitions/airos.yaml b/includes/definitions/airos.yaml index 330bc967f6..e932d3bf2a 100644 --- a/includes/definitions/airos.yaml +++ b/includes/definitions/airos.yaml @@ -5,5 +5,6 @@ icon: ubiquiti nobulk: 1 group: ubnt over: - - { graph: device_bits } - - { graph: device_processor } + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_clients, text: 'Connected Clients' } + - { graph: device_wireless_ccq, text: 'Connection Quality' } diff --git a/includes/definitions/saf.yaml b/includes/definitions/saf.yaml index 054c2bf39f..66639fa619 100644 --- a/includes/definitions/saf.yaml +++ b/includes/definitions/saf.yaml @@ -4,10 +4,8 @@ type: wireless icon: saf over: - { graph: device_bits, text: Traffic } - - { graph: device_saf_radioRxLevel, text: 'Rx Level' } + - { graph: device_wireless_power, text: 'Power Levels' } - { graph: device_ping_perf, text: 'Ping Times' } discovery: - sysObjectId: - .1.3.6.1.4.1.7571.100.1.1.5 -poller_modules: - wifi: 1 diff --git a/includes/definitions/siklu.yaml b/includes/definitions/siklu.yaml index dba1e7adf3..0f84b2c2fe 100644 --- a/includes/definitions/siklu.yaml +++ b/includes/definitions/siklu.yaml @@ -4,6 +4,8 @@ type: wireless icon: siklu over: - { graph: device_bits, text: Traffic } + - { graph: device_wireless_rssi, text: RSSI } + - { graph: device_wireless_snr, text: CINR } poller_modules: wifi: 1 discovery: diff --git a/includes/definitions/unifi.yaml b/includes/definitions/unifi.yaml index 340786e838..ebe7527c72 100644 --- a/includes/definitions/unifi.yaml +++ b/includes/definitions/unifi.yaml @@ -6,5 +6,5 @@ nobulk: 1 group: ubnt over: - { graph: device_bits, text: 'Device Traffic' } - - { graph: device_processor, text: 'Processor Usage' } - - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_wireless_clients, text: 'Connected Clients' } + - { graph: device_wireless_ccq, text: 'Connection Quality' } diff --git a/includes/definitions/xirrus_aos.yaml b/includes/definitions/xirrus_aos.yaml index 99da7e08fe..aec93073df 100644 --- a/includes/definitions/xirrus_aos.yaml +++ b/includes/definitions/xirrus_aos.yaml @@ -5,7 +5,7 @@ icon: xirrus over: - { graph: device_bits, text: 'Device Traffic' } - { graph: device_xirrus_stations, text: 'Wifi Clients' } - - { graph: device_xirrus_rssi, text: 'Signal RSSI' } + - { graph: device_wireless_rssi, text: 'Signal RSSI' } discovery: - sysDescr: - Xirrus diff --git a/includes/polling/mib/saf-mib.inc.php b/includes/polling/mib/saf-mib.inc.php deleted file mode 100644 index 9537d8d50e..0000000000 --- a/includes/polling/mib/saf-mib.inc.php +++ /dev/null @@ -1,47 +0,0 @@ - array( - 'local', - 'radioRxLevel', - 'RX Power', - 'GAUGE', - ), - 'radioTxPower' => array( - 'local', - 'radioTxPower', - 'TX Power', - 'GAUGE', - ), - 'modemRadialMSE' => array( - 'local', - 'modemRadialMSE', - 'Radial MSE', - 'GAUGE', - ), - 'modemACMtotalCapacity' => array( - 'local', - 'modemACMCapacity', - 'ACM Capacity', - 'GAUGE', - ), - 'modemTotalCapacity' => array( - 'local', - 'modemTotalCapacity', - 'Capacity', - 'GAUGE', - ), -); - -$mib_graphs = array( - 'saf_radioRxLevel', - 'saf_radioTxPower', - 'saf_modemRadialMSE', - 'saf_modemCapacity', -); - -unset($graph, $oids, $oid); - -poll_mib_def($device, 'SAF-IPRADIO:saf-modem-radio', 'saf', $mib_oids, $mib_graphs, $graphs); diff --git a/includes/polling/mib/siklu-mib.inc.php b/includes/polling/mib/siklu-mib.inc.php index ef14e15eaf..202b553c60 100644 --- a/includes/polling/mib/siklu-mib.inc.php +++ b/includes/polling/mib/siklu-mib.inc.php @@ -2,37 +2,6 @@ echo ' Siklu Wireless '; -$mib_oids = array( - 'rfAverageRssi' => array( - '1', - 'rfAverageRssi', - 'Signal Strength', - 'GAUGE', - ), - 'rfAverageCinr' => array( - '1', - 'rfAverageCinr', - 'Signal to noise ratio', - 'GAUGE', - ), - 'rfOperationalFrequency' => array( - '1', - 'rfOperFreq', - 'Operational Frequency', - 'GAUGE', - ), -); - -$mib_graphs = array( - 'siklu_rfAverageRssi', - 'siklu_rfAverageCinr', - 'siklu_rfOperationalFrequency', -); - -unset($graph, $oids, $oid); - -poll_mib_def($device, 'RADIO-BRIDGE-MIB:siklu-wireless', 'siklu', $mib_oids, $mib_graphs, $graphs); - // Poll interface statistics $mib_oids = array( 'rfInPkts' => array( diff --git a/includes/polling/mib/ubnt-airfiber-mib.inc.php b/includes/polling/mib/ubnt-airfiber-mib.inc.php index e650bcda58..1ed0453442 100644 --- a/includes/polling/mib/ubnt-airfiber-mib.inc.php +++ b/includes/polling/mib/ubnt-airfiber-mib.inc.php @@ -59,6 +59,7 @@ $mib_oids = array( 'Radio 1 Temp', 'GAUGE', ), + // above here is duplicated in wireless 'txOctetsOK' => array( '1', 'txOctetsOK', @@ -208,32 +209,3 @@ $mib_graphs = array( unset($graph, $oids, $oid); poll_mib_def($device, 'UBNT-AirFIBER-MIB:UBNT', 'ubiquiti', $mib_oids, $mib_graphs, $graphs); - - -echo ' UBNT-AirFIBER-MIB Rx levels '; - -// $mib_oids (oidindex,dsname,dsdescription,dstype) -$mib_oids = array( - 'rxPower0' => array( - '1', - 'rxPower0', - 'Rx Chain0 Power', - 'GAUGE', - ), - 'rxPower1' => array( - '1', - 'rxPower1', - 'Rx Chain1 Power', - 'GAUGE', - ), -); - -$mib_graphs = array( - 'ubnt_airfiber_RxPower', -); - -unset($graph, $oids, $oid); - -poll_mib_def($device, 'UBNT-AirFIBER-MIB:UBNT', 'ubiquiti', $mib_oids, $mib_graphs, $graphs, 'ubnt-airfibre-mib-rx'); - -// EOF diff --git a/includes/polling/mib/ubnt-airmax-mib.inc.php b/includes/polling/mib/ubnt-airmax-mib.inc.php deleted file mode 100644 index 85a5858077..0000000000 --- a/includes/polling/mib/ubnt-airmax-mib.inc.php +++ /dev/null @@ -1,140 +0,0 @@ - array( - '1', - 'RadioFreq', - 'Frequency', - 'GAUGE', - ), - 'ubntRadioTxPower' => array( - '1', - 'RadioTxPower', - 'Tx Power', - 'GAUGE', - ), - 'ubntRadioDistance' => array( - '1', - 'RadioDistance', - 'Distance', - 'GAUGE', - ), - 'ubntRadioRssi.1.1' => array( - '', - 'RadioRssi_0', - 'RSSI Chain 0', - 'GAUGE', - ), - 'ubntRadioRssi.1.2' => array( - '', - 'RadioRssi_1', - 'RSSI Chain 1', - 'GAUGE', - ), - 'ubntWlStatSignal' => array( - '1', - 'WlStatSignal', - 'Signal', - 'GAUGE', - ), - 'ubntWlStatRssi' => array( - '1', - 'WlStatRssi', - 'Overall RSSI', - 'GAUGE', - ), - 'ubntWlStatCcq' => array( - '1', - 'WlStatCcq', - 'Transmit CCQ', - 'GAUGE', - ), - 'ubntWlStatNoiseFloor' => array( - '1', - 'WlStatNoiseFloor', - 'Noise Floor', - 'GAUGE', - ), - 'ubntWlStatTxRate' => array( - '1', - 'WlStatTxRate', - 'Tx Rate', - 'GAUGE', - ), - 'ubntWlStatRxRate' => array( - '1', - 'WlStatRxRate', - 'Rx Rate', - 'GAUGE', - ), - 'ubntWlStatStaCount' => array( - '1', - 'WlStatStaCount', - 'Sta Count', - 'GAUGE', - ), - 'ubntAirMaxQuality' => array( - '1', - 'AirMaxQuality', - 'AirMax Quality', - 'GAUGE', - ), - 'ubntAirMaxCapacity' => array( - '1', - 'AirMaxCapacity', - 'AirMax Capacity', - 'GAUGE', - ), - ); - - $mib_graphs = array(); - - // Build Graph List Array - if (1 == 1) { - // Is It An AP - if (stristr(snmp_get($device, 'ubntRadioMode.1', '-OUqnv', 'UBNT-AirMAX-MIB'), 'ap')) { - // Yes - Add Station Count Graph - array_push($mib_graphs, 'ubnt_airmax_WlStatStaCount'); - } - - // Add Common Graphs - array_push( - $mib_graphs, - 'ubnt_airmax_RadioFreq', - 'ubnt_airmax_RadioTxPower', - 'ubnt_airmax_RadioDistance', - 'ubnt_airmax_RadioRssi_0', - 'ubnt_airmax_RadioRssi_1', - 'ubnt_airmax_WlStatSignal', - 'ubnt_airmax_WlStatRssi', - 'ubnt_airmax_WlStatCcq', - 'ubnt_airmax_WlStatNoiseFloor', - 'ubnt_airmax_WlStatTxRate', - 'ubnt_airmax_WlStatRxRate' - ); - // Is Airmax Enabled? - if (snmp_get($device, 'ubntAirMaxEnabled.1', '-OUqnv', 'UBNT-AirMAX-MIB') == 'true') { - // Check To See If It Is An AC Device - Returns Airmax Capacity of 0 - if (snmp_get($device, 'ubntAirMaxCapacity.1', '-OUqnv', 'UBNT-AirMAX-MIB') != 0) { - // No - Not AC - add AirMax Graphs - array_push($mib_graphs, 'ubnt_airmax_AirMaxQuality', 'ubnt_airmax_AirMaxCapacity'); - } - } - }//end if - - unset($graph, $oids, $oid); - poll_mib_def($device, 'UBNT-AirMAX-MIB:UBNT', 'ubiquiti', $mib_oids, $mib_graphs, $graphs); -}//end if diff --git a/includes/polling/mib/ubnt-unifi-mib.inc.php b/includes/polling/mib/ubnt-unifi-mib.inc.php deleted file mode 100644 index 503a487a5b..0000000000 --- a/includes/polling/mib/ubnt-unifi-mib.inc.php +++ /dev/null @@ -1,69 +0,0 @@ - array( - '', - 'Radio0CuTotal', - 'Radio0 Channel Utilized', - 'GAUGE', - ), - 'unifiRadioCuTotal.1' => array( - '', - 'Radio1CuTotal', - 'Radio1 Channel Utilized', - 'GAUGE', - ), - 'unifiRadioCuSelfRx.0' => array( - '', - 'Radio0CuSelfRx', - 'Radio0 Channel Utilized Rx', - 'GAUGE', - ), - 'unifiRadioCuSelfRx.1' => array( - '', - 'Radio1CuSelfRx', - 'Radio1 Channel Utilized Rx', - 'GAUGE', - ), - 'unifiRadioCuSelfTx.0' => array( - '', - 'Radio0CuSelfTx', - 'Radio0 Channel Utilized Tx', - 'GAUGE', - ), - 'unifiRadioCuSelfTx.1' => array( - '', - 'Radio1CuSelfTx', - 'Radio1 Channel Utilized Tx', - 'GAUGE', - ), - 'unifiRadioOtherBss.0' => array( - '', - 'Radio0OtherBss', - 'Radio0 Channel Utilized by Others', - 'GAUGE', - ), - 'unifiRadioOtherBss.1' => array( - '', - 'Radio1OtherBss', - 'Radio1 Channel Utilized by Others', - 'GAUGE', - ), -); - - -$mib_graphs = array( - 'ubnt_unifi_RadioCu_0', - 'ubnt_unifi_RadioCu_1', -); - -unset($graph, $oids, $oid); - -poll_mib_def($device, 'UBNT-UniFi-MIB:UBNT', 'ubiquiti', $mib_oids, $mib_graphs, $graphs); -// EOF diff --git a/includes/polling/wifi.inc.php b/includes/polling/wifi.inc.php index d0a508c9ae..9d0bc95b47 100644 --- a/includes/polling/wifi.inc.php +++ b/includes/polling/wifi.inc.php @@ -1,27 +1,17 @@ $radio) { - $radioName = $radio['realtimeMonitorIfaceName']; - $associations[$radioName]=0; - - $measurement = 'xirrus_stats'; - $rrd_name = array($measurement, $radioName); - $rrd_def = RrdDefinition::make() - ->addDataset('rssi', 'GAUGE', -150, 0) - ->addDataset('dataRate', 'GAUGE', 0, 1400) - ->addDataset('noiseFloor', 'GAUGE', -150, 0); - $fields = array( - 'rssi' => $rssi[$idx]['realtimeMonitorAverageRSSI'], - 'dataRate' => $dataRate[$idx]['realtimeMonitorAverageDataRate'], - 'noiseFloor' => $noiseFloor[$idx]['realtimeMonitorNoiseFloor'] - ); - $tags = compact('radioName', 'rrd_name', 'rrd_def'); - data_update($device, $measurement, $tags, $fields); -} - // if this config flag is true, don't poll for stations // this in case of large APs which may have many stations // to prevent causing long polling times @@ -35,7 +12,7 @@ if ($config['xirrus_disable_stations']!=true) { $assoc = snmpwalk_cache_oid($device, 'XIRRUS-MIB::stationAssociationIAP', array(), 'XIRRUS-MIB'); foreach ($assoc as $s) { $radio = array_pop($s); - $associations[$radio]++; + $associations[$radio] = (int)$associations[$radio] + 1; } unset($radio); unset($assoc); @@ -55,10 +32,5 @@ if ($config['xirrus_disable_stations']!=true) { $graphs['xirrus_stations'] = false; } -$graphs['xirrus_rssi'] = true; -$graphs['xirrus_dataRates'] = true; -$graphs['xirrus_noiseFloor'] = true; -$graphs['xirrus_stations'] = true; - // cleanup -unset($rrd_def, $radios, $rssi, $radioName, $associations, $tags, $fields, $measurement); +unset($rrd_def, $associations, $tags, $fields, $measurement);