# HG changeset patch # User Tero Marttila # Date 1358037818 -7200 # Node ID f35b2940b7fc70fbe5cba2b159d3d2a35024e1b5 # Parent f742c866c765ba41572f10ec20a727951a5698e8 pvl.syslog.args: implement --syslog-stdin using pvl.syslog.fifo.Pipe, lets us read from stdin without blocking diff -r f742c866c765 -r f35b2940b7fc pvl/syslog/args.py --- a/pvl/syslog/args.py Sun Jan 13 02:43:15 2013 +0200 +++ b/pvl/syslog/args.py Sun Jan 13 02:43:38 2013 +0200 @@ -26,6 +26,9 @@ syslog.add_option('--syslog-tail', metavar='FILE', help="Continuously poll syslog messages given file") + syslog.add_option('--syslog-stdin', action='store_true', + help="Read syslog messages from stdin") + syslog.add_option('--syslog-raw', action='store_true', help="Parse raw syslog lines without timestamp/etc") @@ -63,6 +66,11 @@ source = file.File(open(options.syslog_file)) poll = False # do not loop, just read up to EOF + elif options.syslog_stdin : + # read pipe + source = fifo.Pipe.file(sys.stdin) # puts stdin into non-blocking mode + poll = True # select(source) + elif optional : return None