refactor: Improve Cisco ASA Polling Performance #4999

Merged
merged 3 commits into from Nov 15, 2016

Projects

None yet

4 participants

@Rosiak
Contributor
Rosiak commented Nov 15, 2016
  • I went through the modules and disabled the ones not supported by the ASA platform.
  • I disabled sensor discovery for context based devices as one usually poll the admin context for that purpose, also this output is buggy for contexts on some firmware versions.

Tested on various ASA platforms and on various firmware levels.
This should yield quite a performance improvement on some installs.

asa

@Rosiak Rosiak refactor: Improve Cisco ASA Polling Performance
8ff3c40
@@ -107,7 +107,7 @@
}
// echo($descr . "|" . $index . "|" .$current . "|" . $multiplier . "|" . $divisor ."|" . $entry['entPhySensorScale'] . "|" . $entry['entPhySensorPrecision'] . "\n");
- if ($current == '-127') {
+ if ($current == '-127' || $device['os'] == 'asa' && str_contains($sysDescr, 'sc')) {
@laf
laf Nov 15, 2016 Member

Should that be (device['os'] == 'asa' && str_contains($sysDescr, 'sc'))?

@Rosiak
Rosiak Nov 15, 2016 Contributor

I actually caught that one too, but it worked as intended without so I just went ¯_(ツ)_/¯.

@laf
laf Nov 15, 2016 Member

I think it should be updated to be sure.

@@ -520,6 +520,26 @@
$config['os'][$os]['over'][0]['text'] = 'Device Traffic';
$config['os'][$os]['over'][1]['graph'] = 'device_processor';
$config['os'][$os]['over'][1]['text'] = 'CPU Usage';
+$config['os'][$os]['poller_modules']['aruba-controller'] = 0;
+$config['os'][$os]['poller_modules']['bgp-peers'] = 0;
@laf
laf Nov 15, 2016 Member

The asa can run bgp, I'm not sure if they respond back using our current bgp code but if it does (or you aren't sure) then this should be removed.

@Rosiak
Rosiak Nov 15, 2016 Contributor

I considered that too, but didn't have any running BGP so I couldn't test, however looked at ftp://ftp.cisco.com/pub/mibs/supportlists/asa/asa-supportlist.html and can't see that polling BGP info should be supported(Same goes with OSPF).

includes/definitions.inc.php
+$config['os'][$os]['poller_modules']['cisco-cbqos'] = 0;
+$config['os'][$os]['poller_modules']['cisco-cef'] = 0;
+$config['os'][$os]['poller_modules']['cisco-mac-accounting'] = 0;
+$config['os'][$os]['poller_modules']['cisco-ntp'] = 0;
@laf
laf Nov 15, 2016 Member

This isn't a poller module.

@Rosiak
Rosiak Nov 15, 2016 Contributor

Nice catch!

+$config['os'][$os]['poller_modules']['junose-atm-vp'] = 0;
+$config['os'][$os]['poller_modules']['netscaler-vsvr'] = 0;
+$config['os'][$os]['poller_modules']['ntp'] = 0;
+$config['os'][$os]['poller_modules']['ospf'] = 0;
@laf
laf Nov 15, 2016 Member

I believe the asa's can run ospf as well, again does our code for this not pick it up?

@Rosiak
Rosiak Nov 15, 2016 Contributor

Tested against a few running OSPF, nothing got picked up.
Also no OSPF related modules listed under:
ftp://ftp.cisco.com/pub/mibs/supportlists/asa/asa-supportlist.html

@laf laf added the Blocker label Nov 15, 2016
Rosiak added some commits Nov 15, 2016
@Rosiak Rosiak fix
cd51dd9
@Rosiak Rosiak one more fix
24c66fa
@laf laf removed the Blocker label Nov 15, 2016
@scrutinizer-notifier

The inspection completed: No new issues

@laf laf merged commit a0fec9e into librenms:master Nov 15, 2016

2 checks passed

Auto-Deploy Build finished.
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@Rosiak Rosiak deleted the Rosiak:cisco-asa-improvements branch Feb 5, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment