Забавно, что без логирования ни одна продакшн система не обходится, но, кажется, примерно никто толком не понимает, как logging работает:)
import logging
logger = logging.getLogger(__name__)
logger.setLevel("INFO")
logger.info("Всё нормалдыкс!")
— Выведется ли тут лог-сообщение? А хрен, не выведется!
— А сколько тут логгеров, один? А хрен, два!
— А
logger.warning("Кранты!") выведется или нет? А вот выведется! А почему? А вот так!— А сколько тут хендлеров? А ни одного! А почему тогда warning бы вывелся? А вот так!
— А если логгеру установить вместо
INFO уровень логирования NOTSET (а такой есть!), то он будет выводить все уровни? А хрен!Вот со всем этим и многим другим и разберёмся. Например, ещё как трассировки (
request_id, user_id) в логи прозрачно проставлять в одном месте вместе каждого вызова логгера. Ух есть куда закопаться!Если вас что-то особенно беспокоит в логировании, но вы боялись это спросить — самое время написать это в комментах:)




