[Nagiosplug-devel] Working on testcases

sean finney seanius at seanius.net
Sun Nov 13 11:57:56 CET 2005


hi,

just to throw another $0.02 into the bucket...

On Fri, Nov 11, 2005 at 12:51:48AM +0000, Ton Voon wrote:
> "UNKNOWN is for invalid command args or any other failure before the  
> requested check can be performed - with the only exception being  
> hostname lookups which should return CRITICAL."

given the example you listed below, i don't think this is a good idea.
rather, i think something like:

"UNKNOWN is for invalid command args or other failures preventing
the plugin from performing the specified operation."

about dns: i think there are two specific and very different kinds
of failure.  there is "general resolution failure", and there is a
"host does not exist failure".  i would say that the former ought
to remain as an UNKNOWN, as it parallels similar failures in other
system calls such as malloc.  however, if the plugin gets a "no such
host" response, then it definitely should be CRITICAL--as you could
implicitly divine that the hostname is supposed to resolve.  similarly,
i feel that remote service check connection failures should remain
CRITICAL. 



> (2) check_http -H webserver -w 2
> 
> This returns OK if can connect to webserver and returns data within 2  
> seconds. If it cannot connect, then this returns UNKNOWN because it  
> is not the metric that is being requested to check against (currently  
> returns CRITICAL).

i'd say it should still return CRITICAL.

> (3) check_http -H webserver -r 'string_to_find'
> 
> This returns OK if it can find the server and return data with the  
> string. If it cannot connect to the server (currently CRITICAL), or  
> gets a 302 redirection (currently OK (?) ), this should be an UNKNOWN.

again, i think things such as "connection refused" should still result
in states indicative of a problem.  the big difference in my
view is that some problems prevent the plugin from doing its job,
while other problems signify that there really is a problem.

wrt the 302 redirections, i haven't even looked at what we're currently
doing but feel we ought to follow the redirection (or provide
a cmdline toggle) if we want to be good user-agents :)

for example, malloc or name resolution failing means that the plugin
could not tell you the service status regardless of what it was,
whereas a "host does not exist" or "connection refused" mean that
something is in fact wrong (and that other people would probably
be having the same problem).


	sean
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://nagios-plugins.org/archive/devel/attachments/20051113/d1b185db/attachment.sig>


More information about the Devel mailing list