os.dup2(logfile.fileno(), oso[1])
os.dup2(logfile.fileno(), ose[1])
- # Since we've remapped stdout and stderr, its safe for log messages to be printed there now
- # exec_func can nest so we have to save state
- origstdout = bb.event.useStdout
- bb.event.useStdout = True
-
# Ensure python logging goes to the logfile
handler = logging.StreamHandler(logfile)
handler.setFormatter(logformatter)
bblogger.removeHandler(handler)
- bb.event.useStdout = origstdout
-
# Restore the backup fds
os.dup2(osi[0], osi[1])
os.dup2(oso[0], oso[1])
# the runqueue forks off.
worker_pid = 0
worker_pipe = None
-useStdout = True
class Event(object):
"""Base class for events"""
def register_UIHhandler(handler):
bb.event._ui_handler_seq = bb.event._ui_handler_seq + 1
_ui_handlers[_ui_handler_seq] = handler
- bb.event.useStdout = False
return _ui_handler_seq
def unregister_UIHhandler(handlerNum):
def emit(self, record):
fire(record, None)
- if bb.event.useStdout:
- print(self.format(record))
def filter(self, record):
record.taskpid = worker_pid