Rainer Gerhards wrote:
> I think I forgot to mention an important condition: by default, ompipe works
> in nonblocking mode. So you need to set it to blocking mode for the action in
> question. This is done via
>
> $OMPipeBlockingMode on
I added that, just forgor to write it in the previous mail. The syntax
check passed ok and there are no errors generated from rsyslogd.
> in front of the action, like here:
> $OMPipeBlockingMode on
> local1.* |/opt/foo/my_named_pipe
I still have 30 second sleep in select() and there is a number of write()
calls to FIFO (checked with lsof) before that which fail with EAGAIN.
The output of "strace -f -e trace=file rsyslogd ..." shows:
25169 open("/opt/bulb/var/rsyslog/to_parser", O_RDWR|O_NONBLOCK|O_LARGEFILE) = 5
Then I negated the condition in preparePipe() to:
if(!pData->bBlocking)
mode |= O_NONBLOCK;
and now strace doesn't show O_NONBLOCK and there is no sleep in select().
I'll run more comprehensive tests just to be sure, but this looks ok.
> > I'm not aware of a repository with the newer autotools packages. I
> > didn't need them so far, so I wasn't looking.
>
> OK, thanks, so I probably need to dump the idea of working with a "normal"
> git environment there and will developed based on a release tarball.
There is rpmfind.net which will probably find the packages you want, maybe
even for a Linux distribution you want it for. But the quality of the
packages isn't always as good as it could be, so I tend to stay away from
random sources for production systems. I'd try it for the development
purposes, which is what you need.
--
.-. .-. Yes, I am an agent of Satan, but my duties are largely
(_ \ / _) ceremonial.
|
| [email protected]
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com