[syslog-ng]Full pipe as destination
Balazs Scheidler
bazsi@balabit.hu
Tue, 14 Aug 2001 13:26:17 +0200
On Tue, Aug 14, 2001 at 08:45:35AM +0200, Peter Draexler wrote:
> Hi,
>
> We are using syslog-ng on our logserver with multifunctional
> logforwarding.
> As a special type of destination we are using pipes as a special
> interface to commercial applications.
>
> Here is our question:
> What happens with the log events, if the pipe becomes
> temp. unavailable (e.g. the reading end is dead or
> the pipe is full)?
>
> IMHO you have to open() the pipe nonblocking, to avoid your
> syslog stucks in-active, in the case one destination is broken.
> I think this is true. Correct?
it's true.
>
> What happens with your internal log buffers, if write() returns -1
> and errno set to EAGAIN?
> You implement an internal buffering/queue and try to write the
> outstanding log events some times later or you simply discard
> the buffers as long as one destination is unreachable?
messages are queued up to the value of log_fifo_size, which IIRC can be set
on a per-destination basis. if the fifo is full, messages are discarded.
>
> A Hint for syslog-ng.1.5.8 on Solaris 8:
> $DATE in destination templates returns nothing.
> But $FULL|ISODATE works fine.
this seems to be fixed in my CVS tree, though it's not yet released.
--
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1