Как печатаются журналы, когда обработчик последней инстанции деактивирован?Python

Программы на Python
Anonymous
Как печатаются журналы, когда обработчик последней инстанции деактивирован?

Сообщение Anonymous »

В документации Python указано, что logging.lastResort является

"обработчиком последней инстанции" [...] записи в sys.stderr с уровнем WARNING и используется для обработки событий журналирования при отсутствии какой-либо конфигурации журналирования. Конечный результат — просто напечатать сообщение в sys.stderr. Это заменяет более раннее сообщение об ошибке, в котором говорилось, что «не удалось найти обработчики для регистратора XYZ». Если по какой-то причине вам нужно предыдущее поведение, для параметра LastResort можно установить значение None.

Теперь рассмотрим следующие команды Python, выполненные в REPL CPython 3.13.11:

Код: Выделить всё

>>> import logging
>>> logging.info("hello")
>>> logging.warning("hello")
WARNING:root:hello
>>> logging.lastResort=None
>>> logging.warning("hello")
WARNING:root:hello
Я ожидал, что последняя команда ничего не напечатает, потому что обработчик последней инстанции был деактивирован.
Но я неправильно понимаю?

Подробнее здесь: https://stackoverflow.com/questions/798 ... eactivated

Вернуться в «Python»