New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ruckus Wireless updates (ZD/SZ/Unleashed/Hotzone) #9727
Changes from 2 commits
2497fc4
26bd825
540f616
84e747a
1566656
87d8826
7d4aba0
131de10
72e2a3d
854373d
c4e6202
b207885
b5138a1
3c39567
56827b5
f545d44
0fef065
1399aa6
4fe54e1
0a03594
f420992
bac9a47
d95dce4
14a1a85
c97f69c
ffff66b
8ea21ba
1cf6f2f
a653082
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
<?php | ||
namespace LibreNMS\OS; | ||
|
||
use LibreNMS\Device\WirelessSensor; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessUtilizationDiscovery; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessNoiseFloorDiscovery; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessErrorsDiscovery; | ||
use LibreNMS\OS; | ||
|
||
class RuckuswirelessHotzone extends OS implements | ||
WirelessClientsDiscovery, | ||
WirelessUtilizationDiscovery, | ||
WirelessNoiseFloorDiscovery, | ||
WirelessErrorsDiscovery | ||
{ | ||
public function discoverWirelessClients() | ||
{ | ||
$clients_2 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.3.1.2.1'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
$clients_5 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.3.1.2.2'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
return array( | ||
new WirelessSensor('clients', $this->getDeviceId(), $clients_2, 'ruckuswireless-hotzone', 1, 'Clients: 2.4G'), | ||
new WirelessSensor('clients', $this->getDeviceId(), $clients_5, 'ruckuswireless-hotzone', 2, 'Clients: 5G'), | ||
); | ||
} | ||
public function discoverWirelessUtilization() | ||
{ | ||
$utilization_2 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.3.1.50.1'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
$utilization_5 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.3.1.50.2'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
return array( | ||
new WirelessSensor('utilization', $this->getDeviceId(), $utilization_2, 'ruckuswireless-hotzone', 1, 'Utilization: 2.4G'), | ||
new WirelessSensor('utilization', $this->getDeviceId(), $utelization_5, 'ruckuswireless-hotzone', 2, 'Utilization: 5G'), | ||
); | ||
} | ||
public function discoverWirelessNoiseFloor() | ||
{ | ||
$noise_floor_2 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.2.1.8.1'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
$noise_floor_5 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.2.1.8.2'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
return array( | ||
new WirelessSensor('noise-floor', $this->getDeviceId(), $noise_floor_2, 'ruckuswireless-hotzone', 1, 'Noise-floor: 2.4G'), | ||
new WirelessSensor('noise-floor', $this->getDeviceId(), $noise_floor_5, 'ruckuswireless-hotzone', 2, 'Noise-floor: 5G'), | ||
); | ||
} | ||
public function discoverWirelessErrors() | ||
{ | ||
$errors_2 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.3.1.21.1'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
$errors_5 = '.1.3.6.1.4.1.25053.1.1.12.1.1.1.3.1.21.2'; //RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumSta.0 | ||
return array( | ||
new WirelessSensor('errors', $this->getDeviceId(), $errors_2, 'ruckuswireless-hotzone', 1, 'Received errors: 2.4G'), | ||
new WirelessSensor('errors', $this->getDeviceId(), $errors_5, 'ruckuswireless-hotzone', 2, 'Received errors: 5G'), | ||
); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
<?php | ||
namespace LibreNMS\OS; | ||
|
||
use LibreNMS\Device\WirelessSensor; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessApCountDiscovery; | ||
use LibreNMS\OS; | ||
|
||
class RuckuswirelessSz extends OS implements | ||
WirelessClientsDiscovery, | ||
WirelessApCountDiscovery | ||
{ | ||
public function discoverWirelessClients() | ||
{ | ||
|
||
// Find Per SSID Client Count | ||
$sensors = array(); | ||
$ssids = $this->getCacheByIndex('ruckusSZWLANSSID', 'RUCKUS-SZ-WLAN-MIB'); | ||
$counts = $this->getCacheByIndex('ruckusSZWLANNumSta', 'RUCKUS-SZ-WLAN-MIB'); | ||
|
||
$total_oids = array(); | ||
$total = 0; | ||
foreach ($counts as $index => $count) { | ||
$oid = '.1.3.6.1.4.1.25053.1.4.2.1.1.1.2.1.12.' . $index; | ||
$total_oids[] = $oid; | ||
$total += $count; | ||
|
||
$sensors[] = new WirelessSensor( | ||
'clients', | ||
$this->getDeviceId(), | ||
$oid, | ||
'ruckuswireless-sz', | ||
$index, | ||
'SSID: ' . $ssids[$index], | ||
$count | ||
); | ||
} | ||
|
||
// Find Total Client Count | ||
|
||
$oid = '.1.3.6.1.4.1.25053.1.4.1.1.1.15.2.0'; //RUCKUS-SZ-SYSTEM-MIB::ruckusSZSystemStatsNumSta.0 | ||
array_push($sensors, new WirelessSensor('clients', $this->getDeviceId(), $oid, 'ruckuswireless-sz', ($index + 1), 'System Total:')); | ||
return $sensors; | ||
} | ||
|
||
// Find Total AP Count | ||
|
||
public function discoverWirelessApCount() | ||
{ | ||
$oid = '.1.3.6.1.4.1.25053.1.4.1.1.1.15.1.0'; //RUCKUS-SZ-SYSTEM-MIB::ruckusSZSystemStatsNumAP.0 | ||
return array( | ||
new WirelessSensor('ap-count', $this->getDeviceId(), $oid, 'ruckuswireless-sz', 1, 'Connected APs') | ||
); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
<?php | ||
namespace LibreNMS\OS; | ||
|
||
use LibreNMS\Device\WirelessSensor; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; | ||
use LibreNMS\Interfaces\Discovery\Sensors\WirelessApCountDiscovery; | ||
use LibreNMS\OS; | ||
|
||
class RuckuswirelessUnleashed extends OS implements | ||
WirelessClientsDiscovery, | ||
WirelessApCountDiscovery | ||
{ | ||
public function discoverWirelessClients() | ||
{ | ||
$oid = '.1.3.6.1.4.1.25053.1.15.1.1.1.15.2.0'; //RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemStatsNumSta.0 | ||
return array( | ||
new WirelessSensor('clients', $this->getDeviceId(), $oid, 'ruckuswireless-unleashed', 1, 'Clients: Total') | ||
); | ||
} | ||
public function discoverWirelessApCount() | ||
{ | ||
$oid = '.1.3.6.1.4.1.25053.1.15.1.1.1.15.1.0'; //RUCKUS-UNLEASHED-SYSTEM-MIB:: ruckusUnleashedSystemStatsNumAP.0 | ||
return array( | ||
new WirelessSensor('ap-count', $this->getDeviceId(), $oid, 'ruckuswireless-unleashed', 1, 'Connected APs') | ||
); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
mib: RUCKUS-SYSTEM-MIB | ||
modules: | ||
processors: | ||
data: | ||
- | ||
oid: ruckusSystemCPUUtil | ||
num_oid: '.1.3.6.1.4.1.25053.1.1.11.1.1.1.1.0' | ||
type: ruckuswireless |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
mib: RUCKUS-UNLEASHED-SYSTEM-MIB | ||
modules: | ||
processors: | ||
data: | ||
- | ||
oid: ruckusUnleashedSystemStatsCPUUtil | ||
num_oid: '.1.3.6.1.4.1.25053.1.15.1.1.1.15.13.0' | ||
type: ruckuswireless |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
os: ruckuswireless-hotzone | ||
text: 'Ruckus Wireless HotZone' | ||
type: wireless | ||
icon: ruckus | ||
mib_dir: | ||
- ruckus | ||
over: | ||
- { graph: device_bits, text: Traffic } | ||
- { graph: device_wireless_clients, text: 'Number of Clients' } | ||
register_mibs: | ||
ruckusSZSystemStats: RUCKUS-SZ-SYSTEM-MIB | ||
ruckusSZWLANTable: RUCKUS-SZ-WLAN-MIB | ||
ruckusSZAPTable: RUCKUS-SZ-WLAN-MIB | ||
discovery: | ||
- sysObjectID: | ||
- .1.3.6.1.4.1.25053.3.1.4 | ||
poller_modules: | ||
wireless: true | ||
discovery_modules: | ||
wireless: true |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
os: ruckuswireless-sz | ||
text: 'Ruckus Wireless SmartZone' | ||
type: wireless | ||
icon: ruckus | ||
mib_dir: | ||
- ruckus | ||
over: | ||
- { graph: device_bits, text: Traffic } | ||
- { graph: device_wireless_ap-count, text: 'Connected APs' } | ||
- { graph: device_wireless_clients, text: 'Number of Clients' } | ||
register_mibs: | ||
ruckusSZSystemStats: RUCKUS-SZ-SYSTEM-MIB | ||
ruckusSZWLANTable: RUCKUS-SZ-WLAN-MIB | ||
ruckusSZAPTable: RUCKUS-SZ-WLAN-MIB | ||
discovery: | ||
- sysObjectID: | ||
- .1.3.6.1.4.1.25053.3.1.11.1 | ||
ignore_mount_string: | ||
- ruckuswireles | ||
- etc | ||
- var | ||
- java | ||
- cassandra | ||
poller_modules: | ||
wireless: true | ||
discovery_modules: | ||
wireless: true |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
os: ruckuswireless-unleashed | ||
text: 'Ruckus Wireless Unleashed' | ||
type: wireless | ||
icon: ruckus | ||
mib_dir: | ||
- ruckus | ||
over: | ||
- { graph: device_bits, text: Traffic } | ||
- { graph: device_wireless_ap-count, text: 'Connected APs' } | ||
- { graph: device_wireless_clients, text: 'Number of Clients' } | ||
register_mibs: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. You can remove the register_mibs on the new OS. It is only on the existing one for legacy reasons. |
||
ruckusZDSystemStats: RUCKUS-ZD-SYSTEM-MIB | ||
ruckusUnleashedSystemStats: RUCKUS-UNLEASHED-SYSTEM-MIB | ||
ruckusUnleashedWLANTable: RUCKUS-UNLEASHED-WLAN-MIB | ||
ruckusUnleashedWLANAPTable: RUCKUS-UNLEASHED-WLAN-MIB | ||
discovery: | ||
- | ||
sysObjectID: .1.3.6.1.4.1.25053.3.1.5.15 | ||
snmpget_except: | ||
oid: 'RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemModel.0' | ||
op: contains | ||
value: [ ZD, zd ] | ||
poller_modules: | ||
wireless: true | ||
discovery_modules: | ||
wireless: true |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
os: ruckuswireless | ||
text: 'Ruckus Wireless' | ||
text: 'Ruckus Wireless ZoneDirector' | ||
type: wireless | ||
icon: ruckus | ||
mib_dir: | ||
|
@@ -14,5 +14,12 @@ register_mibs: | |
ruckusZDWLANAPTable: RUCKUS-ZD-WLAN-MIB | ||
ruckusZDWLANAPRadioStatsTable: RUCKUS-ZD-WLAN-MIB | ||
discovery: | ||
- sysObjectID: | ||
- .1.3.6.1.4.1.25053.3.1 | ||
- sysObjectID: .1.3.6.1.4.1.25053.3.1.5 | ||
snmpget: | ||
oid: '.1.3.6.1.4.1.25053.1.2.1.1.1.1.9.0' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This snmpget should probably be symmetric with the exclusion above. |
||
op: starts | ||
value: [ ZD, zd ] | ||
poller_modules: | ||
wireless: true | ||
discovery_modules: | ||
wireless: true |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<?php | ||
|
||
if ($device['os'] === 'ruckuswireless-hotzone') { | ||
echo 'Ruckus Hotzone: '; | ||
|
||
$usage = snmp_get($device, '.1.3.6.1.4.1.25053.1.1.11.1.1.1.2.0', '-OvQ'); | ||
|
||
if (is_numeric($usage)) { | ||
discover_mempool($valid_mempool, $device, 0, 'ruckuswireless-hotzone', 'System Memory', '100', null, null); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<?php | ||
|
||
if ($device['os'] === 'ruckuswireless-unleashed') { | ||
echo 'Ruckus Unleashed: '; | ||
|
||
$usage = snmp_get($device, '.1.3.6.1.4.1.25053.1.15.1.1.1.15.14.0', '-OvQ'); | ||
|
||
if (is_numeric($usage)) { | ||
discover_mempool($valid_mempool, $device, 0, 'ruckuswireless-unleashed', 'System Memory', '100', null, null); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<?php | ||
|
||
if ($device['os'] === 'ruckuswireless') { | ||
echo 'Ruckus Zone Director: '; | ||
|
||
$usage = snmp_get($device, '.1.3.6.1.4.1.25053.1.2.1.1.1.5.59.0', '-OvQ'); | ||
|
||
if (is_numeric($usage)) { | ||
discover_mempool($valid_mempool, $device, '0', 'ruckuswireless', 'System Memory', '100', null, null); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<?php | ||
|
||
echo 'Ruckus Wireless: '; | ||
$perc = snmp_get($device, ".1.3.6.1.4.1.25053.1.1.11.1.1.1.2.0", '-OvQ'); | ||
|
||
if (is_numeric($perc)) { | ||
$mempool['perc'] = $perc; | ||
$mempool['used'] = $perc; | ||
$mempool['total'] = 100; | ||
$mempool['free'] = 100 - $perc; | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<?php | ||
|
||
echo 'Ruckus Wireless: '; | ||
$perc = snmp_get($device, ".1.3.6.1.4.1.25053.1.15.1.1.1.15.14.0", '-OvQ'); | ||
|
||
if (is_numeric($perc)) { | ||
$mempool['perc'] = $perc; | ||
$mempool['used'] = $perc; | ||
$mempool['total'] = 100; | ||
$mempool['free'] = 100 - $perc; | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<?php | ||
|
||
echo 'Ruckus Wireless'; | ||
|
||
$perc = snmp_get($device, "ruckusZDSystemMemoryUtil.0", '-OvQ', 'RUCKUS-ZD-SYSTEM-MIB'); | ||
|
||
if (is_numeric($perc)) { | ||
$mempool['perc'] = $perc; | ||
$mempool['used'] = $perc; | ||
$mempool['total'] = 100; | ||
$mempool['free'] = 100 - $perc; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changing this will cause loss of history data.