NEW Cisco Aironet - graphing wireless AP performance - v1.1

Templates, scripts for templates, scripts and requests for templates.

Moderators: Developers, Moderators

niobe
Cacti User
Posts: 228
Joined: Mon Mar 10, 2008 6:52 pm
Location: Australia

NEW Cisco Aironet - graphing wireless AP performance - v1.1

Post by niobe »

Version 1.2 (20090909)
  • Removed tcl script header to work better under Windows
  • Script must now be called with 'tclsh'
Version 1.1
  • Fixed error caused by floating point value in rate_avg (rate_avg not currently used)
  • New debug mode - use "-d" option for troubleshooting
  • New error behaviour - without debug mode the default behaviour is to return 0 for all values, but not return an actual error.
---------

Here are a couple of new graph templates for Cisco wireless APs:

1) Cisco Dot11 Associated Clients - graphs the number of associated clients on an access point. Includes an HRULE to indicate your max-associations if you are limiting number of associations.

2) Cisco Dot11 Client Rate Distribution - using the scripts queries the AP for the offered rate of each client, and draws an area/stack graph. This is a very useful way to see how well your APs are placed, since the access rate is directly proportional to the strength and quality of the signal.
Since it is an area/stack graph, this, in a way, duplicates the associated clients graph.

---------

Requirements/Caveats:

- You must have TCL installed on your cacti server (TCL is a perl-like scripting language but easier to use :) Linux users will have no problem with this, Windows users can download from ActiveState.
- Currently supports 802.11b/g rates (1Mbps - 54Mbps)
- Tested with Cisco 1210 and IOS 12.3, but should work on any Cisco AP running recent IOS.
- Tested on Cacti 0.87a/b only

Manually run the script first to see if TCL is working, then import the templates:

Code: Select all

you@cacti# tclsh ./group_dot11_client_rate.tcl <host> <community> <version>
The script returns all zeros when there is an error so it doesn't impact the cacti poller. If you see all zeros and want to know if there was an error use '-d'

Code: Select all

you@cacti# tclsh ./group_dot11_client_rate.tcl -d <host> <community> <version>
Attachments
Associated Clients
Associated Clients
copresap26.dot11.associated.clients.png (32.26 KiB) Viewed 31928 times
Clients Access Rate Distribution
Clients Access Rate Distribution
copresap26.dot11.client.rate.dist.png (82.13 KiB) Viewed 31928 times
cacti_graph_template_cisco_aironet_-_dot11_associated_clients.xml
Associated clients template
(13.38 KiB) Downloaded 2996 times
cacti_graph_template_cisco_aironet_-_dot11_client_rate_distribution.xml
Rate Distrubution template v1.2
(49.57 KiB) Downloaded 3393 times
group_dot11_client_rate.zip
Script (for data input method) v1.2
(1.95 KiB) Downloaded 3273 times
Last edited by niobe on Tue Sep 08, 2009 7:53 pm, edited 7 times in total.
Igloo
Posts: 22
Joined: Fri Dec 01, 2006 8:24 am

Post by Igloo »

I'm having some issues getting this to work, I'm running a 1200 with 12.3 IOS.

It's returning nothing but a snmpwalk returns fine.

Cheers for any help.
mcliffe
Posts: 1
Joined: Fri Oct 10, 2008 11:21 am
Location: Canada

Template for 8.6i anyone?

Post by mcliffe »

Does anyone have coresponding templates of this for a Cacti 8.6i installation?
niobe
Cacti User
Posts: 228
Joined: Mon Mar 10, 2008 6:52 pm
Location: Australia

Post by niobe »

Igloo wrote:I'm having some issues getting this to work, I'm running a 1200 with 12.3 IOS.

It's returning nothing but a snmpwalk returns fine.

Cheers for any help.
Ok, let's work this out.
- Can you try running the script manually? Use the same 3 arguments you can see in the data input method.
- What type of 1200 do you have ( 1210,1230,1240,1250 )
- What version of IOS? ( tested on 12.3(8)JE, 12.3(8)JA may not support the required SNMP MIB )
Igloo
Posts: 22
Joined: Fri Dec 01, 2006 8:24 am

Post by Igloo »

niobe wrote:
Igloo wrote:I'm having some issues getting this to work, I'm running a 1200 with 12.3 IOS.

It's returning nothing but a snmpwalk returns fine.

Cheers for any help.
Ok, let's work this out.
- Can you try running the script manually? Use the same 3 arguments you can see in the data input method.
- What type of 1200 do you have ( 1210,1230,1240,1250 )
- What version of IOS? ( tested on 12.3(8)JE, 12.3(8)JA may not support the required SNMP MIB )
Running the script manualy returns 0

I'm running IOS Version 12.3(2)JA

on a cisco AIR-AP1231G-E-K9

I could try upgrading to 12.3(8)JE

If you can send the IOS?

Regards,
niobe
Cacti User
Posts: 228
Joined: Mon Mar 10, 2008 6:52 pm
Location: Australia

Post by niobe »

Igloo wrote:
Running the script manualy returns 0

I'm running IOS Version 12.3(2)JA

on a cisco AIR-AP1231G-E-K9

I could try upgrading to 12.3(8)JE

If you can send the IOS?

Regards,
Ok, probably IOS then, I have same APs. Cisco would bust my ass if I posted the IOS, normally you can download them from cisco.com if you have a support contract of any kind (even if it's for another type of device).
Last edited by niobe on Wed Oct 15, 2008 8:14 pm, edited 1 time in total.
Igloo
Posts: 22
Joined: Fri Dec 01, 2006 8:24 am

Post by Igloo »

I know Cisco are a royal pain in the ass about theie IOS.

I'll log in and see if i can see it through another device's contract.

Cheers,
apperrault
Cacti User
Posts: 379
Joined: Fri Feb 16, 2007 11:37 am
Location: Emeryville, CA
Contact:

Post by apperrault »

when i try and run the script manually, i am getting an permission denied error. I have the script in the /cacti/scripts folder and it has the same permissions as the rest of the files in that folder (root:root)

Any thoughts as to why this is not working...

thanks much

app
[b]Cacti Version[/b] - 0.8.7b
[b]Plugin Architecture[/b] - 2.2 Beta
[b]Poller Type[/b] - CMD.php
[b]Server Info[/b] - Linux 2.6.9-78.0.1.ELsmp
[b]Web Server[/b] - Apache/2.0.52 (Red Hat)
[b]PHP[/b] - 4.3.9
[b]MySQL[/b] - 4.1.22
[b]RRDTool[/b] - 1.2.23
[b]SNMP[/b] - 5.1.2
[b]Plugins[/b][list]Global Plugin Settings (settings - v0.5)
SuperLinks (superlinks - v0.72)
Host Info (hostinfo - v0.2)
Report Creator (reports - v0.3)
Update Checker (update - v0.4)
Realtime for Cacti (realtime - v0.35)
Cacti Log View (clog - v1.1)
RRD File Cleaner (rrdclean - v0.36)
Network Discovery (discovery - v0.9)
Uptime (uptime - v0.4)[/list]
apperrault
Cacti User
Posts: 379
Joined: Fri Feb 16, 2007 11:37 am
Location: Emeryville, CA
Contact:

Post by apperrault »

OK, i got a little further, but it doesn't appear to be working properly in Cacti. I can now run the script from the shell by typing

Code: Select all

tcl group_dot11_client_rate.pub.tcl 10.1.1.5 SNMPSTRING 1
and i get the following output, which appears to be correct

Code: Select all

rate_1_cnt:0 rate_2_cnt:0 rate_5_5_cnt:0 rate_6_cnt:0 rate_9_cnt:0 rate_11_cnt:0 rate_12_cnt:0 rate_18_cnt:0 rate_24_cnt:0 rate_36_cnt:0 rate_48_cnt:1 rate_54_cnt:5 rate_avg:53.00
but I am still getting

Code: Select all

10/14/2008 02:30:20 PM - CMDPHP: Poller[0] Host[238] DS[3400] WARNING: Result from CMD not valid. Partial Result: 
for these three devices.

Does anyone have any thoughts?

app
niobe
Cacti User
Posts: 228
Joined: Mon Mar 10, 2008 6:52 pm
Location: Australia

Post by niobe »

apperrault wrote:OK, i got a little further, but it doesn't appear to be working properly in Cacti. I can now run the script from the shell by typing

Code: Select all

tcl group_dot11_client_rate.pub.tcl 10.1.1.5 SNMPSTRING 1
and i get the following output, which appears to be correct

Code: Select all

rate_1_cnt:0 rate_2_cnt:0 rate_5_5_cnt:0 rate_6_cnt:0 rate_9_cnt:0 rate_11_cnt:0 rate_12_cnt:0 rate_18_cnt:0 rate_24_cnt:0 rate_36_cnt:0 rate_48_cnt:1 rate_54_cnt:5 rate_avg:53.00
but I am still getting

Code: Select all

10/14/2008 02:30:20 PM - CMDPHP: Poller[0] Host[238] DS[3400] WARNING: Result from CMD not valid. Partial Result: 
for these three devices.

Does anyone have any thoughts?

app
Hmm is this on windows? I don't prefix the script with 'tcl' as you might for perl or php.

The error may be for the last value 'rate_avg' which is outputting a floating point number. I thought I had fixed this on the code I posted, but will repost the slightly revised code tomorrow. The graph doesn't in fact use this value, so are your graphs working despite the error?
apperrault
Cacti User
Posts: 379
Joined: Fri Feb 16, 2007 11:37 am
Location: Emeryville, CA
Contact:

Post by apperrault »

This is a RHEL 4 box. I will let you know if the new code works when you post it. THis would be a great addition to our current monitoring.

thanks

app
rojmab
Posts: 5
Joined: Thu Oct 02, 2008 9:38 pm

Post by rojmab »

I found that the Data template was set to look for internal data source names with labels that had a dot11_ before them... ex: 'dot11_rate_11_cnt'
The script returns 'rate_11_cnt' named variables. I went through the data template and removed the dot11_ from each of the variables and it started to graph without issues.
urban
Posts: 29
Joined: Thu Aug 04, 2005 6:33 am

Post by urban »

I can't use this template with cisco 1240 series.

oid: .1.3.6.1.4.1.9.9.273.1.3.1.1.1

the response from the snmpwalk command:

CISCO-DOT11-ASSOCIATION-MIB::cDot11ClientCurrentTxRateSet = No Such Instance currently exists at this OID

Is this a problem from the aironet series 1240? or a software bug?

I have version Version 12.4(10b)JA on the AP.
niobe
Cacti User
Posts: 228
Joined: Mon Mar 10, 2008 6:52 pm
Location: Australia

Post by niobe »

rojmab wrote:I found that the Data template was set to look for internal data source names with labels that had a dot11_ before them... ex: 'dot11_rate_11_cnt'
The script returns 'rate_11_cnt' named variables. I went through the data template and removed the dot11_ from each of the variables and it started to graph without issues.
Not how cacti works. If you look at the data input method, the output variables of the script are defined there, and do not include "dot11_".

There is a disconnect between these and the names in the data and graph templates since the DS are mapped via their index in the sql tables, not their name.
niobe
Cacti User
Posts: 228
Joined: Mon Mar 10, 2008 6:52 pm
Location: Australia

Post by niobe »

urban wrote:I can't use this template with cisco 1240 series.

I have version Version 12.4(10b)JA on the AP.
Very disappointing but it appears Cisco don't support the specific oid my graphs use in the newer APs. There is no reason for this that I can see except a marketing one. Cisco are pushing their new LWAPP model where you don't configure the AP directly.

Just to confirm here is the error I receive (with v.1.1):

Code: Select all

Error: No valid result received from snmpwalk: .1.3.6.1.4.1.9.9.273.1.3.1.1.1 = No Such Instance currently exists at this OID
Last edited by niobe on Wed Oct 15, 2008 8:31 pm, edited 2 times in total.
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest