3

按照这个问题和答案,我正在寻找以下问题的解决方案:

我有一个 Python 程序,它应该可以在 Windows 和 Linux 上运行。

我的 python 进程产生了一个子进程,它们都应该有一个文件记录器。我希望他们每个人都登录自己的日志文件。

进程创建:

import multiprocessing
multiprocessing.Process(target=my_target, args=(my_args,))

日志创建:

import logging
logger = logging.getLogger()
fh = logging.FileHandler(log_file, mode="a+")
logger.addHandler(fh)

在 Windows 中效果很好,但在 Linux 中,我将子输出写入子日志和父日志。

处理这种情况的最佳方法是什么?

4

1 回答 1

1

在寒冷的开始执行时添加了以下代码来解决该问题:

log = logging.getLogger()
# Remove any existing handlers
for handler in log.handlers:
    log.removeHandler(handler)
于 2018-07-17T09:03:50.297 回答