Re: [syslog-ng] advice/assistance with parsing attempt requested
thanks for all the help ... in parser.py, i was using sys.stdin.readlines() which, i wound up changing to sys.stdin.xreadlines() to get the desired results. many thanks again! On Wed, 08 Dec 2010 16:50:37 +0100 Lars Kellogg-Stedman <lars@oddbit.com> wrote:
the issue has me really stumped. how/why would the output from
perl
make it to /opt/syslog-ng/logs/logfile in "real-time" yet, the output from python only make it to /opt/syslog-ng/logs/logfile as a batch upon stopping the service!?!?
This sort of thing typically happens because the program is using buffered IO, and output is only flushed when the buffer is full. If you were to leave things running for a while and generate a lot of log traffic, you would probably see the output show up periodically in large chunks.
This thread on Stackoverflow discusses a variety of solutions to the problem:
http://stackoverflow.com/questions/107705/python-output- buffering
The simplest is probably to run Python with the "-u" flag (or output to stderr instead of stdout).
participants (1)
-
syslog-ng2010ï¼ hushmail.com