Home Directory Plugins Hardware Network Gear Cisco Check Cisco WLC Access Points

Search Exchange

Search All Sites

Nagios Live Webinars

Let our experts show you how Nagios can help your organization.

Contact Us

Phone: 1-888-NAGIOS-1
Email: sales@nagios.com

Login

Remember Me

Check Cisco WLC Access Points

Rating
0 votes
Favoured:
0
Current Version
1.1
Last Release Date
2013-10-11
Compatible With
  • Nagios 3.x
Owner
License
GPL
Hits
34131
Files:
FileDescription
check_wlc_ap.pyThe script
Network Monitoring Software - Download Nagios XI
Log Management Software - Nagios Log Server - Download
Netflow Analysis Software - Nagios Network Analyzer - Download
A plugin to monitor the currently associated Access Points on a Cisco Wireless Lan Controller. It throws an 'Critical' alert if an AP is not found, and e-mails you the name of the AP (or AP's) that were not found associated to the WLC.
If it finds an AP that was on the WLC that it was not expecting to find, it throws a 'warning'.
It's customizable, but I chose this method, since what typically happens when there is a WLC problem is AP's begin roaming around to various WLC's that are all part of the same mobility group. This can yield a lot of alerts, if you specify 'Critical' for both AP's missing AND AP's found unexpectedly.

I wrote it in Python. The usage is fairly simple, just populate a file in your conf.d directory called "wlc--aps_expected.
Note, this relies on netsnmp and the correct mibs to be installed. This is currently for AirOS WLC's only.

usage: check_wlc_ap.py -H -f
/etc/nagios3/commands.cfg:
define command{
command_name check_wlc_ap
command_line /usr/lib/nagios/plugins/check_wlc_ap.py -H $HOSTADDRESS$ -f $ARG1$
}

Note, in order for me to get the correct email output I needed to modify the "service macro" to include "long" output...meaning, instead of a single line in the result email it will include all the lines that are put to stdout (in my case all the ap's that are missing)
vi /etc/nagios3/commands.cfg:
under 'notify-service-by-email' I added "LONGSERVICEOUTPUT" directly after " "SERVICEOUTPUT". Resulting command is as follows:
# 'notify-service-by-email' command definition
define command{
command_name notify-service-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****nnNotification Type: $NOTIFICATIONTYPE$nnService: $SERVICEDESC$nHost: $HOSTALIAS$nAddress: $HOSTADDRESS$nState: $SERVICESTATE$nnDate/Time: $LONGDATETIME$nnAdditional Info:n$SERVICEOUTPUT$n$LONGSERVICEOUTPUT$" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
}