Python Glossary English

все Python 3multiprocessingфункция

multiprocessing.log_to_stderr()

журналирование

Включает вывод внутреннего лога multiprocessing в stderr в формате [УРОВЕНЬ/ИмяПроцесса] сообщение и возвращает этот логгер.

Синтаксис

logger = multiprocessing.log_to_stderr(level=None)

Каждый вызов добавляет ещё один обработчик, не проверяя, был ли он: два вызова — и каждая строка печатается дважды. Вывод идёт в stderr, а не в stdout, так что перенаправление > его не поймает. С уровнем logging.INFO видно, как дети стартуют и завершаются; при spawn уровень передаётся детям, и они тоже начинают писать в stderr.

Примеры

import logging
import multiprocessing as mp
if __name__ == '__main__':
    lg = mp.log_to_stderr(logging.INFO)
    lg.info('hello')  # в stderr: [INFO/MainProcess] hello
    print(len(lg.handlers))  # → 1
    mp.log_to_stderr()
    print(len(lg.handlers))  # → 2 — теперь каждая строка дважды

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности