- ret = subprocess.Popen(cmd, stdout=args.logfd, stderr=args.logfd,
- cwd=working_dir)
- logging.debug("New background process: pid={}, output=background".format(ret.pid))
- return ret
+ proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE,
+ cwd=working_dir)
+ threading.Thread(target=forward_stream, args=(proc.stdout, logging.DEBUG), daemon=True).start()
+ threading.Thread(target=forward_stream, args=(proc.stderr, logging.DEBUG), daemon=True).start()
+ logging.debug("New background process: pid={}, output=background".format(proc.pid))
+ return proc