分别为stdout和stderr调用记录器信息和错误

2024-05-13 12:13:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有个伐木工人。像这样的:

import logging

logger = logging.getLogger('myApp')
hdlr = logging.FileHandler('myApp.log')
logger.addHandler(hdlr)
logger.setLevel(logging.INFO)

我正在调用这样的外部进程:

subprocess.call("someCommand")

我想把stdout和stderr从这个过程中分离出来,这样我就可以把它们记录下来。例如

logger.info(<stdout>)
logger.error(<stderr>)

我看到了在一个流中捕获所有子流程的各种方法。但是,如果真的有错误,我想把它记录下来。有办法吗?


Tags: importinfolog进程loggingstderrstdoutlogger