bin/pvl.irker-syslog
changeset 121 4f16bf6365f1
parent 119 40b5375d4a27
child 126 bf2555ae7d06
equal deleted inserted replaced
120:d342506c3ef3 121:4f16bf6365f1
    96             if irker and target :
    96             if irker and target :
    97                 irker[target]('[' + tag + '] ' + text)
    97                 irker[target]('[' + tag + '] ' + text)
    98             else :
    98             else :
    99                 print tag, text
    99                 print tag, text
   100 
   100 
   101         # only poll if we have something to poll
   101         # quit unless we have something to poll
   102         if syslog.poll :
   102         if not syslog.poll :
   103             # can we poll irk?
       
   104             if irker.irk.recv :
       
   105                 reading = (irker.irk, )
       
   106             else :
       
   107                 reading = ()
       
   108             
       
   109             poll = syslog.select(syslog.poll, reading=reading) or () # timeout -> ()
       
   110 
       
   111         else :
       
   112             break
   103             break
   113 
   104 
   114         # irks?
   105         # is irk pollable?
   115         try :
   106         if irker.irk.recv :
   116             for msg in irker.irk :
   107             reading = (irker.irk, )
   117                 log.info("irk: %s", msg)
   108         else :
       
   109             reading = ()
       
   110         
       
   111         poll = syslog.select(syslog.poll, reading=reading) or () # timeout -> ()
       
   112         
       
   113         if irker.irk in poll :
       
   114             # irks?
       
   115             try :
       
   116                 for msg in irker.irk :
       
   117                     log.info("irk: %s", msg)
   118 
   118 
   119         except EOFError :
   119             except EOFError :
   120             # exit
   120                 # exit
   121             log.error("irk: EOF")
   121                 log.error("irk: EOF")
   122             return 1
   122                 return 1
   123        
   123        
   124     # done
   124     # done
   125     log.info("Exiting...")
   125     log.info("Exiting...")
   126     return 0
   126     return 0
   127 
   127