浏览代码

events dumper: flush stdout so output can be piped

Ask Solem 11 年之前
父节点
当前提交
3fa1b2bf86
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      celery/events/dumper.py

+ 5 - 0
celery/events/dumper.py

@@ -45,6 +45,11 @@ class Dumper(object):
 
 
     def say(self, msg):
     def say(self, msg):
         print(msg, file=self.out)
         print(msg, file=self.out)
+        # need to flush so that output can be piped.
+        try:
+            self.out.flush()
+        except AttributeError:
+            pass
 
 
     def on_event(self, ev):
     def on_event(self, ev):
         timestamp = datetime.utcfromtimestamp(ev.pop('timestamp'))
         timestamp = datetime.utcfromtimestamp(ev.pop('timestamp'))