Олег Марков
Работа с модулем logging в Python
Введение
Логирование — важная часть разработки приложений, позволяющая отслеживать работу кода, ошибки и поведение системы в реальном времени. Модуль logging в Python предоставляет гибкие инструменты для записи сообщений разного уровня важности и форматирования их для удобного анализа. В этой статье мы разберём, как работать с модулем logging на практике.
Основы модуля logging
Для начала достаточно импортировать модуль и создать базовую конфигурацию:
import logging
logging.basicConfig(level=logging.INFO)
logging.info("Приложение запущено")basicConfig настраивает уровень логирования, формат сообщений и место их сохранения. Уровни логов включают:
DEBUG— подробная информация для диагностикиINFO— общая информация о работе программыWARNING— предупреждения о потенциальных проблемахERROR— ошибки выполненияCRITICAL— критические ошибки, требующие внимания
logging.debug("Отладочная информация")
logging.warning("Внимание, предупреждение")
logging.error("Произошла ошибка")Настройка формата логов
Можно изменить формат сообщений, включив в них время, уровень и текст:
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s'
)
logging.info("Система инициализирована")Форматтеры позволяют включать дату, имя модуля, имя функции и другие данные для более удобного анализа логов.
Сохранение логов в файл
Логи можно направлять в файл для долгосрочного хранения и анализа:
logging.basicConfig(
filename='app.log',
level=logging.WARNING,
format='%(asctime)s - %(levelname)s - %(message)s'
)
logging.warning("Это предупреждение будет записано в файл")Использование logging делает приложения более прозрачными и упрощает отладку.
Если вы хотите детальнее погрузиться в работу с Python и изучить все встроенные модули, включая logging, рекомендуем курс Основы Python. На курсе 209 уроков и 34 упражнения, AI-тренажёры для практики 24/7, живое ревью наставников и еженедельные встречи. Курс позволит закрепить навыки логирования и правильно использовать встроенные возможности Python.
Частые ошибки
- Использование
printвместо логов для анализа работы программы. - Несвоевременное задание уровня логирования, из-за чего полезные сообщения не выводятся.
- Переопределение конфигурации
basicConfigпосле создания логгеров. - Запись логов без указания формата, затрудняющая их чтение.
Частозадаваемые вопросы
Можно ли одновременно выводить логи в консоль и файл?
Да, с помощью нескольких обработчиков (StreamHandler и FileHandler).
Что делать, если логов слишком много?
Использовать ротацию файлов через RotatingFileHandler.
Может ли logging заменить print?
Для отладки лучше использовать logging, так как он позволяет гибко управлять уровнями сообщений и форматированием.
Заключение
Модуль logging — ключевой инструмент для мониторинга работы Python-приложений. Он помогает отслеживать ошибки, предупреждения и информацию о работе программы, что облегчает диагностику и поддержку проектов.
Для системного изучения ведения логов и других встроенных возможностей Python рекомендуем курс Основы Python. В первых 3 модулях доступно бесплатное содержание, что позволяет закрепить навыки работы с логами и получить практический опыт настройки и анализа сообщений.
Постройте личный план изучения Python до уровня Middle — бесплатно!
Python — часть карты развития Backend
100+ шагов развития
30 бесплатных лекций
300 бонусных рублей на счет
Все гайды по Python
Лучшие курсы по теме

Основы Python
Антон Ларичев
Nest.js с нуля
Антон Ларичев