[Nagiosplug-devel] Perf Data

Ethan Galstad nagios at nagios.org
Wed Feb 19 21:50:07 CET 2003


On 19 Feb 2003 at 13:16, Richard Colley wrote:

> It would seem to me that relying on something like atomic write sizes is
> something of a hack.

Agreed, but its simple. :-)

> 
> Maybe it is time to wrap the named external command pipe with an API that
> serialises messages into the pipe.

That could get pretty ugly and you would loose the benefit of a 
simple interface for external apps to use.  A better solution would 
probably be to implement it as a unix domain socket instead of a 
FIFO.

> 
> Also, a simpler way of fixing this issue for the internal non-named pipes
> from Nagios to children would be to have one pipe per child.  Given the
> number of children that would normally be active simultaneously, this
> shouldn't be a major issue.

Yep, I'll take a look at implementing this in 2.0


> 
> Richard
> 
> 
> -----Original Message-----
> From: Ethan Galstad [mailto:nagios at nagios.org] 
> Sent: Wednesday, 19 February 2003 12:45 PM
> To: nagiosPlug Devel
> Subject: Re: [Nagiosplug-devel] Perf Data
> 
> 
> On 18 Feb 2003 at 20:40, Subhendu Ghosh wrote:
> 
> > On Tue, 18 Feb 2003, Ethan Galstad wrote:
> > <snip>
> > >
> > > There are two pipes of interest.  One is the external command file,
> > > which is implemented as a FIFO and is restricted by the PIPE_BUF 
> > > limit (512 bytes minimum for POSIX).  Passive checks have to deal 
> > > with this limit, but not active checks.
> > > 
> > > The other pipe is used for IPC between the main (parent) Nagios
> > > process and the child processes.  Each child writes the results of a 
> > > plugin check (along with host/service name) to the pipe, at which 
> > > point the parent reads it and process it.  This pipe is also 
> > > restricted by the PIPE_BUF limit.  With host/service name overhead, 
> > > you're left with about 350 bytes useable for plugin output+perfdata.  
> > > It should be noted that *both* active and passive checks have results 
> > > sent through this pipe.  Passive checks enter through the FIFO and 
> > > then get dumped into this pipe.
> > > 
> > > If the size of the pipe becomes a real issue, we can probably break
> > > with POSIX compliance on most systems.  The POSIX standard states a 
> > > minimum of 512 bytes, but Linux has a 4K atomic write limit, while 
> > > Solaris may have an 8K limit (I don't recall offhand).  I guess I'll 
> > > have to deal with it if and when it comes up.
> > > 
> > 
> > The second pipe - is that a single pipe per running install from the
> > temp_file var in the config file?
> > 
> 
> Its a single pipe, although its not implemented as a FIFO, so it 
> doesn't exist anywhere in the filesystem - just in memory.  You can 
> think of it as a very limited type of socket that you would 
> read/write from/to for network apps.  It has one reader (the parent 
> process) and multiple writers (the child processes).  Its implemented 
> with a call to pipe(2).
> 
> 
> 
> Ethan Galstad,
> Nagios Developer
> ---
> Email: nagios at nagios.org
> Website: http://www.nagios.org
> 
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: SlickEdit Inc. Develop an edge.
> The most comprehensive and flexible code editor you can use.
> Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial.
> www.slickedit.com/sourceforge
> _______________________________________________
> Nagiosplug-devel mailing list
> Nagiosplug-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nagiosplug-devel
> ::: Please include plugins version (-v) and OS when reporting any issue. 
> ::: Messages without supporting info will risk being sent to /dev/null
> 
> ---
> Incoming mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.443 / Virus Database: 248 - Release Date: 10/01/2003
>  
> 
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.443 / Virus Database: 248 - Release Date: 10/01/2003
>  
> 



Ethan Galstad,
Nagios Developer
---
Email: nagios at nagios.org
Website: http://www.nagios.org





More information about the Devel mailing list