4 * New option '-a' or '--all' turns on checking of everything
5 * The manual page (POD info) is removed from the script and is now in
6 a separate file, to make check_openmanage fully ePN compatible
7 * ePN is no longer disabled by default, check_openmanage no longer has
8 an opinion on whether it should run under ePN or not
9 * The '-m' or '--man' option is no longer available
10 * The option '-v' or '--verbose' is renamed to '-d' or '--debug',
11 which makes more sense wrt. its usage
12 * The '-g' or '--global' option is removed. Checking the global health
13 status is now default if applicable
14 * Checking intrusion detection is now turned on by default
15 * The obsolete option '--snmp' is removed
16 * The option '--state' now has a shorter equivalent '-s'
17 * The basename stuff and options '--only-critical' and
18 '--only-warning' are now replaced by an option '--only'
19 * If plugin is run by Nagios, redirect stderr to stdout
20 * Added option '--omreport', that lets the user specify the full path
21 to the omreport binary
22 * Added non-8bit-legacy default search paths for omreport.exe for
24 * Minor changes to the plugin output, for consistency
25 * New blacklisting keyword 'bat_charge' disables warning messages
26 related to controller cache battery charging. Thanks to Robert
27 Heinzmann for a patch.
28 * For blacklisting, the component ID kan now be "ALL", in which all
29 components of that type is blacklisted.
34 * Fixed a bug that could cause errors and weird results when checking
35 cooling devices (fans) via SNMP. Thanks to Ken McKinlay for spotting
36 this bug and reporting it.
41 * For failed physical drives, check_openmanage will now output the
42 drive's vendor, model and size in GB or TB.
47 * The -s|--snmp option was redundant and no longer does anything. SNMP
48 is triggered automatically if the -H|--hostname option is
49 present. The -s|--snmp option is kept for compatibility, but has no
55 * Added support for performance data (temperatures) from attached
56 storage enclosures such as the MD1000
61 * Fixed a regression in the --htmlinfo option when it is not supplied
67 * New option --htmlinfo adds clickable HTML links in the plugin's
73 * Fixed a regression bug in CPU and power supply reporting that only
74 affects verbose output
75 * If blacklisting is used, the global health check (via the --global
76 option) is now negated. Checking the global health doesn't make
77 sense when one or more components is blacklisted. Thanks to Rene
78 Beaulieu for reporting this bug
79 * The PNP4Nagios template is now included in the tarball and zip
85 * Improved memory error reporting, when using omreport
86 * Collect performance data from pwrmonitoring (amperage probes) that
87 were previously ignored when using omreport
92 * Improved memory error reporting, when using SNMP
93 * Other small ehnancements
98 * The plugin is now compatible with the Nagios embedded Perl
99 interpreter (ePN) in theory. However, the plugin will not not use
100 ePN by default. We don't want any "accidents".
101 * License is now GPLv3, previously only specified as "GPL"
102 * New options --only-critical and --only-warning. With these options
103 the plugin will only print critical or warning alerts, respectively.
104 * Bugfixes and speed enhancements in the storage section, when
105 checking enclosure components via omreport
106 * The --okinfo option is now less verbose and more to the point
107 * Lots of code refactoring for readability, maintainability and
113 * Fixed a bug in the storage section, when checking controllers. This
114 is an obscure bug that only manifests itself in the odd case where a
115 server has multiple controllers, and one of the controllers are
116 missing some of the OIDs, in which case these OIDs will be missing
117 for the other controllers as well. The change is minor and only
118 includes using get_table() instead of get_entries() to collect the
119 SNMP result. Thanks to Stephan Bovet for reporting this bug.
124 * The --perfdata option can now optionally take an argument
125 "multiline", which makes the plugin produce multiline performance
126 data output in a Nagios 3.x way. Not really needed, but the plugin
128 * Added comment within the 10 first lines to disable the nagios
129 embedded perl (ePN) interpreter by default for Nagios 3.x
130 * Improvements in the performance data output. Units are now included
135 * Added --global option, which turns on checking of everything. If
136 used with SNMP, the global system health status is also probed, to
137 protect the user against bugs in the plugin. If used with omreport,
138 the overall chassis health is used.
139 * Support for SNMP version 3
140 * New check added: esmhealth. This checks the overall health of the
141 ESM log, i.e. the fill grade. More than 80% means a warning message
142 * Fixed alert log reporting to use the same format as for the ESM log
143 * Output messages are now sorted by severity
144 * Minor changes in how out-of-date controller firmware/driver is
146 * Code refactoring and cleanup
151 * Use "omreport about" to collect OMSA version. Slightly faster than
152 "omreport system version". This should give a small speedup in
153 certain configurations
154 * Fixed typo in output when a logical drive is rebuilding. Thanks to
155 Andreas Olsson for reporting
156 * Improved reporting of ESM log content
157 * Added omreport.sh as alternate omreport path
158 * Lots of other small fixes and enhancements
160 Plus: A few changes to make the plugin work with old PowerEdge models
161 (e.g. 2550, 2450) and/or old OMSA versions (e.g. version 4.5):
163 * Use the chassisModelName OID to determine if SNMP works (instead of
165 * No longer require a response when checking baseboard type via
166 SNMP. If there is no response, we assume that we're not dealing with
169 Thanks to Christian McHugh for help with testing and debugging this
175 * Use 'omreport system operatingsystem' to collect OS info, instead of
176 'omreport system' version which is incredibly slow. This should speed
177 things up in certain configurations.
178 * A few speedups, don't collect information that isn't needed
184 * New option --linebreak to specify the separator between line in case
186 * Added support for 64bit Windows. Thanks to Patrick Hemmen for a patch
187 * [Patrick Hemmen] Added install.bat for Windows installation
188 * [Patrick Hemmen] Improvements on install.sh. Will now install in
189 /usr/lib64 for x86_64
190 * RPMs are now architecture dependent, because of different libdir
195 * New option -o|--ok-info to display extra information when everything
196 is ok. The plugin can now display storage firmware and driver info,
197 DRAC and BMC firmware, and OMSA version
198 * Support for setting custom minimum temperature thresholds via the
199 -c|--critical and -w|--warning options
200 * Better and more detailed temperature error reporting
201 * Bugfix in the amperage report (including performance data). The
202 plugin now takes into account the correct unit and measurement for
203 amperage probes (other than watts)
204 * New option --port lets the user specify the remote SNMP port number
209 * Regression fix: Use the older Processor Device SNMP OIDs for older
210 PowerEdge models, that don't have the new Processor Device Status
211 OIDs. Thanks to Nicole Hähnel for reporting this bug.
212 * Default output (when there are no alerts) now shows RAC firmware,
213 BMC firmware, info about controllers and enclosures (firmware,
219 * Regression fix: Ignore unoccupied CPU slots with SNMP probing. This
220 fixes a bug introduced in versjon 3.2.1, which would output
221 something like this if one or more CPU slots were empty: CPU 1 needs
227 * Use Processor Device Status Table OIDs instead of Processor Device
228 Table when checking CPUs via SNMP
229 * Bugfix: don't report throttled CPUs as warnings when checking via
230 SNMP (same as for checking locally)
235 * New options --state and --short-state for displaying service state
237 * Lots of small fixes for code readability and maintainability
242 * Support for running natively on Windows (using omreport.exe). Thanks
243 to Peter Jestico for a patch.
244 * Support for compiled Windows version, i.e. check_openmanage.exe is
245 now a legal script name.
246 * Exit with error if script basename is illegal/unknown
247 * Various small fixes
252 * Use of alternate basenames for checking only one class of components
253 * Added support for checking the ESM log via SNMP
254 * Code refactoring for robustness and maintainability
255 * Numerous small fixes and enhancements
256 * Added install script in distribution tarball
261 * The script no longer aborts if it can't get system information via
262 SNMP. Give a warning instead, as this is not a critical error
263 * Increased robustness when checking controllers
268 * Man page fix in the 'check' section. Thanks to Ansgar Dahlen for
270 * Allow invalid command error from 'omreport chassis pwrmonitoring'
271 * Various small fixes
276 * Use unique IDs for storage components with regard to blacklisting,
277 which means that the blacklisting API has changed
278 * Added checks for storage components: connectors (channels),
279 enclosures, enclosure fans, enclosure power supplies, enclosure
280 temperature probes and enclosure management modules (EMMs)
281 * Improved verbose output
282 * New option -t|--timeout for setting the plugin timeout
283 * New option -w|--warning for setting custom temperature warning
285 * New option -c|--critical for setting custom temperature critical
287 * Option --check can no longer be specified in its short form (-c)
288 * Code cleanup and improvements
293 * The workaround for the OMSA bug introduced in OMSA 5.5.0 didn't take
294 multiple controllers into account. This has been fixed.
299 * New option -i|--info prefixes all alerts with the service tag
300 * New option -e|--extinfo gives and extra line of output in case of an
301 alert (model and service tag)
302 * New option --postmsg lets the user specify a post message string,
303 with info such as model, service tag etc.
304 * Options -b|--blacklist and -c|--check can now be specified multiple
305 times (actually quite useful)
310 * Slightly improved output for alerts on logical drives (vdisks)
311 * Now shows a rebuilding physical disk as a warning, as this is
312 usually accompanied by a degraded vdisk. Previous versions didn't
313 show this at all (omreport classifies it as "OK").
318 * Slightly improved output for charging controller batteries
323 * Bugfix for reporting physical drives with predictive failure (both
329 * Fix bug in option handling (ambiguous options)
330 * Slightly improved output if checking the storage subsystem is turned
332 * Don't complain if there are no logical drives. This is OK. Thanks to
333 Jamie Henderson for reporting this
338 * Fix bug in SNMP status level table
343 * Added workaround for a BUG introduced in OpenManage 5.5.0. OM
344 sometimes adds a newline in the controller driver version name,
345 which leads to problems parsing the output. Thanks to Hiren Patel
346 for bringing this to my attention.
351 * (snmp) Improved handling of cases where OM is not working properly
356 * Fixed issue where controller number for physical disks can't be
357 established via SNMP (now identifies as controller no. -1)
362 * Correctly identifies and reports error condition in which OpenManage
363 has stopped working (it happens)
369 * Same options for checking, blacklisting etc. supported with SNMP
370 * Same output with SNMP as with NRPE
375 * Collects performance data if the option '-p' or '--perfdata' is
377 * New blacklisting directives ctrl_fw and ctrl_driver
378 added. Suppresses the "special" warning messages concerning outdated
379 controller firmware and driver. Useful if you can't or won't
385 * Fix getting system model and serial number for newer blades
390 * Three new checks added:
391 - System battery probes (typical CMOS battery). Newer poweredge
393 - Power consumption monitoring (if the server supports it)
394 - ESM log, with same functionality as the alert log check. Disabled
400 * Internal refactoring: use ssv-formatted output from openmanage,
401 resulting in slightly faster execution and increased robustness.
402 * If /usr/bin/omreport doesn't exist, try
403 /opt/dell/srvadmin/oma/bin/omreport.
404 * Allow for no instrumented/redundant power supplies. Needed on
405 low-end poweredge models and blades.
410 * Openmanage reports non-critical warning about throttled CPUs on new
411 hardware models. Most og us use ondemand CPU frequency scaling (with
412 throttled CPUs as a result). This specific non-critical warning (CPU
413 Throttled) is ignored from now on.
414 * Remove superfluous Celcius sign when reporting temperatures.
419 * Accommodate blade systems with no fans or powersupplies, i.e. accept
420 errors from omreport when trying to check fans or powersupplies on
422 * Accommodate newer hardware with slightly different omreport
423 options. Use the newer options if they exist. Not really necessary
424 yet, but deprecated options may be removed in future versions of
430 * When everything is OK, check_openmanage now outputs the same info as
431 Gerhard Lausser's excellent check_hpasm plugin does for HP servers:
433 OK - System: 'poweredge 2850', S/N: 'XXXXXXX', ROM: 'A06
434 10/03/2006', hardware working fine, 2 logical drives, 4 physical