[Nagiosplug-devel] [ nagiosplug-Bugs-870548 ] Plugin 1.4.0a1 -> /bin/ping does not terminate
SourceForge.net
noreply at sourceforge.net
Wed Feb 25 08:54:09 CET 2004
Bugs item #870548, was opened at 2004-01-04 16:55
Message generated for change (Comment added) made by kdebisschop
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=397597&aid=870548&group_id=29880
Category: Argument proccessing
Group: None
Status: Open
Resolution: Fixed
Priority: 5
Submitted By: Christian Exner (banane2000)
Assigned to: Karl DeBisschop (kdebisschop)
Summary: Plugin 1.4.0a1 -> /bin/ping does not terminate
Initial Comment:
On our system (Suse 8.1, Nagios 2.0a1, Plugins 1.4.0a1)
i've detected about 400+ /bin/ping processes going all to
only 2 IP-addresses (yes... only if the failure takes a
long time but our failures often takes the whole weekend
if the german Telekom cuts the DSL-Line of one of our
external offices...).
It seems that check_ping calls "/bin/ping -n -U -c 5
x.x.x.x" for checking. If pinged host is not
reacheable /bin/ping does not terminate for a very long
time (maybe until the failed host answers again).
check_ping terminates after 10 secs. This is also
documented in nagios web interface. But
corresponding /bin/ping process stays active.
Maybe it would help to pass "-w" (deadline) parameter
to /bin/ping to force a termination after some time in
such a case.
Chris
----------------------------------------------------------------------
>Comment By: Karl DeBisschop (kdebisschop)
Date: 2004-02-25 11:50
Message:
Logged In: YES
user_id=1671
A worthwhile thought - we pass on a timeout like this with
snmp IIRC.
I think where the native utility has a way to terminate
itself, it is preferable to use it. But modifying spopen to
handle cases where is does not sounds like a good idea.
Shouldn't be too hard since spopen does know the PID. and is
the parent process. But there should be a way to let clean
shutdowns occur - after closing the pipe on a timeout, maybe
exit immediately if the child closes, but only force it
closed after a second or two.
Ton, do you want to do this or should I?
----------------------------------------------------------------------
Comment By: Ton Voon (tonvoon)
Date: 2004-02-25 11:20
Message:
Logged In: YES
user_id=664364
Would it make more sense for the check_ping plugin to try
and kill any child processes when it exits/times out?
Potentially any command might take too long to respond and
a kill_children function would be useful across all plugins.
Ton
----------------------------------------------------------------------
Comment By: Florian Gleixner (redflo)
Date: 2004-02-25 03:03
Message:
Logged In: YES
user_id=183182
On solaris try:
ping hostname timeout
Example:
ping www.google.de 10
or if you want more accurate statistics:
ping -s -t ttl hostname packet_length number_of_packets
Example:
ping -s -t 2 www.google.de 64 5
Flo
----------------------------------------------------------------------
Comment By: Karl DeBisschop (kdebisschop)
Date: 2004-02-25 02:16
Message:
Logged In: YES
user_id=1671
It would be nicer if the '-w' option were more widely
supported than linux. I can demonstrate that it is not
available on solaris 8, so it's clear that implementing this
change requires modifications to the autoconf script.
But it's probably worth doing, even though there is a risk
that some other implementation will assign a different
meaning to '-w'
----------------------------------------------------------------------
Comment By: Matthew Kent (mattkent)
Date: 2004-02-24 19:25
Message:
Logged In: YES
user_id=983566
Nagios 1.2, Plugin 1.4.0a1, RedHat 7.3 same problem.
Compiling plugins with --with-ping-command="/bin/ping -w 10
-n -U -c %d %s" solved this.
But it would be nice to have the 10 second timeout for
check_ping kill the ping process.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=397597&aid=870548&group_id=29880
More information about the Devel
mailing list