[Nagiosplug-devel] [ nagiosplug-Support Requests-1043798 ] check_citrix issues

Stanley Hopcroft Stanley.Hopcroft at IPAustralia.Gov.AU
Mon Oct 11 17:35:41 CEST 2004


Dear Resistor,

I am writing to thank you for your letter and say,

On Sat, Oct 09, 2004 at 06:28:33PM -0700, SourceForge.net wrote:
> 
> Category: None
> Group: None
> Status: Open
> Priority: 5
> Submitted By: resistor3672 (resistor3672)
> Assigned to: Nobody/Anonymous (nobody)
> Summary: check_citrix issues
> 
> Initial Comment:
> I ran into these issues using the check_citrix plugin, so 
> I'll share them here in the hopes that they will allow the 
> continued development of the plugin and of the 
> excellent Nagios package. 
> 
> Issue 1) Lots of applications to look for
> 
> If one has a large number of apps to look for, one should 
> split the seach into multiple services and have each 
> service look for a subset. The danger is that the buffer 
> used to hold all the search string will overflow, and 
> Nagios 1.2 will seg fault. One can alternatively try 
> increasing the buffer size in the plugin, and use the -L 
> option, but even so I still hit the seg fault after a couple 
> of dozen apps. 
>

There are a number of issues here. 

1 It would be good to fix the SEGV in Nag 1.2

If you know gdb, inducing the fault and then getting a backtrace would 
help the developers fix the problem.

The backtrace can be posted to me, nag-developers or here (pref 
nag-developers).

If you don't know gdb, but you are willing to help, please contact me 
privately for some instructions.

2 Thanks for pointing out the problem.

Would you mind posting an example of inducing it (the search string you 
are using).

Unfortunately, I have no access to a huge number of published apps but 
other check_citrix users may.


FWIW, this plugin has been made obsolescent by Citrix Metaframe XP which 
uses a completely different (XML browse service) method of locating the 
application serers.

> Issue 2) Lots of apps in the list
> 
> The plugin returns the application list on errors. If this 
> list exceeds the default nagios return buffer, the plugin 
> will behave strangely. I had it returning an OK status in 
> nagios (green) and showing the "Failed: " string in 
> status information.  I assume this is due to a lack of 
> buffer error checking in Nagios (can that be fixed?).  I 
> simply removed the print statements that show the list 
> on errors, and while it is less informative, it still tells me 
> when an application is missing from the list. 
> 
>

Good idea. Maybe an acceptable mod is 

1 first .. last application

2 first 100 characters of application list.

Which would suit better ?

For other reasons, I run Nag patched with MAX_PLUGIN_OUTPUTLENGTH (in 
common/objects.h) increased, and this helps with verbose plugins.

Actually, re-reading what you have said, it sounds more like plugin 
failure since Nag simply truncates excessive plugin output (for all 
plugins [so option 2 shouldn't be necessary] - the plugin output in 
base/checks.c is either copied with strncpy or an fgets(), of the size 
of the output buffer).

It might be good to wrap the plugin in a shell script (that appends 
the output to a file as well as writing to STDOUT) and see what it's up 
to.

Does the plugin respond the same way (when it reports an error) from the 
CLI ?

Yours sincerely.

-- 
Stanley Hopcroft

Network specialist, IT Infrastructure
IP Australia
Ph: (02) 6283 3189  Fax: (02) 6281 1353
PO Box 200 Woden  ACT 2606
http://www.ipaustralia.gov.au




More information about the Devel mailing list