Monitor CF using Nagios: a useful new way
Basic CF Monitoring in Nagios
First let me share that if you've not explored monitoring CF with Nagios at all, here's at least one blog entry discussing that.
Of course, you can easily use Nagios primarily to report whether CF's up or down, but you can also monitor basic statistics such as are provided via CFSTAT (also available on Windows via Perfmon, which also exposes generic stats about all processes), as demonstrated in that blog entry.
But you may have noticed that, if you run the Multiserver (multiple instances) version of CF, those CFSTAT and Windows Perfmon Stats aren't available on that version of CF.
So what to do if you wanted to monitor more about what's going on inside of CF?
FusionReactor Nagios Plug-in
If you're running FusionReactor Enterprise, you can now get that additional information via the free FusionReactor Nagios Plugin. It's a perl app that when implemented will expose certain key statistics in a way that Nagio can process them (and some are things that CFSTAT and the CF Permon stats don't report):
- Count of current running requests, and total count of all requests run
- Count of request queued by FusionReactor
- Average request runtime (since server start), and Recent request runtime (in past 60s, by default)
- Count of recent slow pages
- Memory free in bytes and percentage
- Memory Total and Max
- Instance and System CPU Use percentage
- Count of recently completed JDBC requests
Note that this is technically community-contributed feature (from an Intergral employee, David Stockton), not a supported feature.
If you're running or are interested in FusionReactor Enterprise, check it out.



- GETs an XML document
- XPath to XML value/attribute
- compare with WARN/CRIT value
- output result
As such, it can be used with FR2.2.
Having said that, a couple of things to note...
- I recommend upgrading to FR3 - it gives better performance and more features; plus if you purchased a maintenance option with your copy of FR2.2, it could be a FREE upgrade!!
- I haven't tested with FR2.2
- FR2.2 will not expose all the same XML properties; however basics like request count, CPU & memory should be available
If you're having issues with FR2.2 and the plugin then send me an email and we'll see what I can do.
Thanks for the support
D!
BTW, should anyone come along and be a little confused, I think Matt was referring to 2.0.2 (when he called it 2.2) and while Dave didn't correct him, it didn't even strike me as odd when I first read Matt's comment over the weekend. But to be clear, there was no 2.2 of FR. After 2.0.4 was 3.0 (and now 3.0.1). Anyone can correct me if I'm wrong. Just trying to avoid confusion from a future reader of these comments.
./check_fusionreactor -H localhost --port 80 --path /fusionreactor -l Administrator --password x --field /FusionReactorFederatedDataTransfer/SerializedMetrics/MemoryProbe/Total -c 90 -w 80
FusionReactorFederatedDataTransfer
500 Server closed connection without sending any data back http://www.w3.org/TR...
Handler couldn't resolve external entity at line 1, column 108, byte 108
error in processing external entity reference at line 1, column 108, byte 108:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR...">
===========================================================================================================^
<html xmlns="http://www.w3.org/19...">
<head>
at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/XML/Parser.pm line 187