On Wed, Apr 05, 2000 at 05:04:44PM +0200, Balazs Scheidler wrote:
I have following lines in syslog-ng.conf
filter aaa { match ("aaa"); }; destination aaa { program ("/usr/bin/mail -s WARN user"); }; log { source(src); filter (aaa); destination(aaa); };
When I run logger: # logger aaaIIII in messages file I have: Apr 5 13:06:26 src@host syslog-ng[1627]: io.c: do_write: write() failed (errno 32), Broken pipe
What does it mean ? It happen from time to time, not always.
probably the mail program exits for some reason... you may try to write a wrapper script sending logs in a batch, e.g.:
repeat while something is available: read 100 lines, mail it loop
maybe mail can't read messages exceeding some limit in size.
When I run: # logger aaa I can see (ps ax), that mail is waiting for something. # strace -p <pid of mail> read(0, <CTRL>C # It looks like mail is waiting for something to finish (<CTRL>C means pressing CTRL+C). przemol