Build precise queries to find exactly what you need
Press ESC to close
Your review has been submitted and is pending approval.
check_snmp_brocade is a Nagios plugin to monitor the status of a single fc-port on a Brocade (labeled or original) fibre-channel switch. It is (in my opinion) the most complete plugin for brocades. I needs the MIBs from Brocade.By Martin Fuerstenau
Current Version
2.1.0
Last Release Date
2012-05-21
Owner
Martin Fuerstenau
License
Other
Compatible With
<p> It monitors all the given port or the systeminfo (gobal and sensors like fan, temp etc.). If a Fabric watch license is installed it is possible to monitor the temperature of the SFPs.</p><p> Be aware that a nonused port should be disabled. Otherwise a plugin can't determine wether a ports partner is dead or a port is simply unused</p><p> Output from --help:</p><p> <span style="font-family:courier new,courier,monospace;">./check_snmp_brocade --help<br /> This monitoring plugin is free software, and comes with ABSOLUTELY NO WARRANTY.<br /> It may be used, redistributed and/or modified under the terms of the GNU<br /> General Public Licence (see http://www.fsf.org/licensing/licenses/gpl.txt).<br /> <br /> Usage: check_snmp_brocade [ -H <host> ] [ -t <timeout> ] [ -C|--community=<community> ] [ -v|--snmpversion=<1|2c> ] [--port=<SNMP portnumber>] [ -P|--fc-port=<fcport-number>] | [-s|--systeminfo [ --sensor ]] | [[ --sfptemp ] [--sfptemp_warn=<offset>] [--maxsfptemp=<temperature>] [--allports]] [ -p|--performancedata ] [--multiline]<br /> <br /> This plugin check the selected FC-port of a Brocade (branded or unbranded) fibrechannel switch<br /> <br /> -h, --help Print detailed help screen<br /> -V, --version Print version information<br /> -H, --hostname=STRING Hostname/IP-Adress to use for the check.<br /> -C, --community=STRING SNMP community that should be used to access the switch.<br /> -v, --snmpversion=STRING Possible values are 1 or 2c. Version 3 is not supported.<br /> --port=INTEGER If other than 161 (default) is used)<br /> -P, --fc-port=INTEGER Port number as shown in the output of `switchshow`.Can't combine with -s<br /> <br /> -s, --systeminfo Get global data like boot date, overall status, reachability etc.<br /> --sensor Additional to -s. Status of powersupply, fans and temp sensors.<br /> --global Global data like boot date, overall status etc.<br /> <br /> -p, --performancedata Print performance data of the selected FC port.<br /> -t, --timeout=INTEGER Seconds before plugin times out (default: 15)<br /> --sfptemp Checks the temperature of all SFPs.<br /> --sfptemp_warn=INT This is the warning offset the critical temperature as delivered<br /> by the system. Default is 10 Celsius.<br /> MUST be used with --sfptemp.<br /> --maxsfttemp Maximum temperature for SFPs. If not set it will be taken from<br /> your switch.<br /> --allports Default is only to show ports which are too hot. With this flag all ports<br /> will be shown. MUST be used with --sfptemp.<br /> --multiline Multiline output in overview. This mean technically that a multiline<br /> output uses a HTML <br> for the GUI instead of<br /> Be aware that your messing connections (email, SMS...) must use<br /> a filter to file out the <br>. A sed oneliner will do the job.</span><br /> </p><p> History:</p><ul> <li> 15 Sep 2011 Version 1 <ul> <li> First released version. Versions before number 1 were derived from the work of Christian Heim. But now the complete code was rewritten.</li> </ul> </li> <li> 17 Sep 2011 Version 1.1 <ul> <li> Switched from net-snmp-perl to perl-Net-SNMP. Although the coding is a little bit more complex we have the abibility to get complete tables tables with one request which makes getting sensor data (temp, fan, power) more easy.</li> <li> SNMP version no longer hard coded. Default is 1 but 2c can be handeled over.</li> <li> If 161 can't be used an alternative port can be given.</li> </ul> </li></ul><p> </p><ul> <li> 22 Sep 2011 Version 1.2 <ul> <li> Removed subroutine check_port_status because it was only used once. so it doesn't mad sense.</li> <li> Try to get partner WWN if possible</li> </ul> </li></ul><p> </p><ul> <li> 20 Mar 2012 Version 1.3 <ul> <li> Added an "offset" for the fc port. In GUI and from the commandline port numbering starts with 0. SNMP starts with 1. Here we have we hava an offset which can lead to misunderstandings and confusion. Fixed.</li> <li> Detects Fabric Watch license. If Fabric Watch is enabled we are able to get a lot more information.</li> <li> Kicked out some subroutines. <ul> <li> snmpget - This was not effective. Before every get a new session was established. Data had to be handled over and passed back. Thee effective code where to lines. It was a nice at a first look but it was more effective to place the code in the main function</li> <li> The same for the perfdata. The routine was only used once. So it doesn't make sense to have a subroutine.</li> </ul> </li> </ul> </li> <li> 21 Apr 2012 Version 2.0.0 <ul> <li> Bugfix: If a SNMP session can't be established the program exits with an error message. The next line was a session close. this caused un unwanted error message because there was no session. Fixed.</li> <li> The program part for getting port data was part of the main code. Moved to a subroutine.</li> <li> The program part checking for an enabled Fabric Watch license was part of the getting port data code. Moved to a subroutine.</li> <li> New flag --multiline. Multiline output in overview. This mean technically that a multiline output uses a HTML <br> for the GUI instead of the default ( ). Be aware that your messing connections (email, SMS...) must use a filter to file out the <br>. A sed oneliner like the following will do the job: sed 's/<[^<>]*>//g'</li> <li> New flag -s|--systeminfo. Get global data like boot date, overall status, reachability etc</li> <li> New flags --sfptemp, --sfptemp_warn and --allports. Checks the temperature of all SFPs. --sfptemp_warn=INT will set the warrning offset to the critical temperature as delivered by the system. Default is $SPF_TempHighWarn_def in Celsius. --allports will show all ports. Default is only to show ports which are too hot.--sfptemp_warn and --allports MUST be used with --sfptemp.</li> </ul> </li> <li> 21 May 2012 Version 2.0.1 <ul> <li> New flag --maxsfptemp.</li> <li> Little bugfix. The SFP temperatures delivered by the system may be kinda bullshit. So on 5300 min. is reported around -30 degrees celsius and max. is +90 degrees celsius. Because the lower is scrap we have used 0 degrees Celsius as the lowest when designing this plugin. But late we reckognized that 90 degrees is also too high. flexoptics for example say 0 - 70 degrees. Therefore we changed some things. If $SFP_TempHigh is no set via commandline the temperature from the system will be taken.</li> </ul> </li></ul><ul> <li> 30 May 2012 Version 2.1.0 <ul> <li> First publically available version</li> <li> New flag --sensor Additional flag to -s. Delivers the values of the onboard sensors for temperature, fans and power.</li> </ul> </li></ul><ul> <li> 5 Jun 2013 Version 3.2.0 <ul> <li> Implemented the changes of Rene Koch, ovido gmbh (r.koch_at_ovido.at) <ul> <li> 26 April 2013 Version 3.0.0 <ul> <li> Added support for SNMPv3 (Rene Koch)</li> <li> Changed exit code to 3 (UNKNOWN) if input validation fails</li> </ul> </li> </ul> </li> <li> Not implemented because of a possible misunderstanding. Perhaps later. <ul> <li> 06 May 2013 Version 3.1.0 <ul> <li> Added warning and critical checks (Rene Koch)</li> </ul> </li> </ul> </li> <li> Changed exit code for failed input validation back to 1. Why? 3 means UNKNOWN. UNKNOWN is a state returned from the plugin if the plugin receives data (or nothing) from the checked item where it is not possible to determine a correct error state. But wrong input validation is a minor error. Therefore WARNING is the correct state.</li> <li> Did some cosmetics. Like many people Rene uses the opening curly brace in the same line as the if statement. I always prefer both curly braces in the same column for better readability.</li> <li> Cleaned up the code</li> <li> Replaced tabs with blanks in formatting. Why? Different editors -> different tab stops -> rotten format in editor</li> <li> Rewritten session establishing section. No need for elsif.<br /> </li> </ul> </li></ul>
Hello! I would need a parameter where only CRC errors can be monitored. I couldn't find such an option among the current possibilities. Thank you.
Hi All, It works great if SAM is fully equipped but how to take care if it is partially equipped, As it is in warning state always : In my case : SLOT-2/TEMP-2: Sensor absent SLOT-3/TEMP-3: Sensor absent
I only use it to monitor the system health and for that use case it works fine. Although I figured out, that the performance data is in an incorrect format. Between several counters you'll need to have a space to seperate. So by default the output is like this: |SLOT-0/TEMP-1=38;;;SLOT-0/TEMP-2=26;;;SLOT-0/TEMP-3=38;;;SLOT-0/TEMP-4=23;;;FAN-1=9926;;;FAN-2=9782;;; Correct would be: |SLOT-0/TEMP-1=38;;; SLOT-0/TEMP-2=26;;; SLOT-0/TEMP-3=38;;; SLOT-0/TEMP-4=23;;; FAN-1=9926;;; FAN-2=9782;;; Here's a patch, that fixed it for me: https://github.com/pashol/nagios-checks/blob/master/check_snmp_brocade.patch
I manage to monitor the overall system status anf the FC ports, which is good. I don't have FabricWatch as I think it is too expensive. Is there a way to monitor FC port temp without FW? Do you plan to release fcport monitor pnp4nagios template too?
Works like a charm!
Thanks you for this very nice plugin. We are making good use of it and untill now did not have any problems with it. Configuration is easy and already had some nice results.
Its a nice overall plugin. But it's performance data is incorrect. The plugins check's via SNMP the Words RX & TX. These are absolute numbers (they increase over time, they are not delta values!). The script has no logic in it to calculate the delta. So the Graph's for Throughput are misleading, this is the total that the port has put through, since the counter was resettet. Because of that error the graphs constantly rise although in reality the throughput is not. Once the counter is resettet (you can do this with the Brocade GUI Reset Counters), the throughout graphs drop...
I know that the counters are deltas. Therefore there is no alert mechanism for traffic with this plugin. But for history pnp4nagios uses rrdtool and rrdtool gets the actual counter with its timestamp and calculates the delta. I use the plugin for over one year now and I can't reproduce the problem. A counter reset is also handled by rrdtool. The plugin is used in a lot of installations and I got a lot of feedback. But nobody told me about such a problem. Maybe something other is wrong. Yours - Martin
You must be logged in to submit a review.
To:
From: