Чему вы научитесь
- В первой части курса вы поймете, как работает logging изнутри, и он перестанет казаться вам сложным. Вы разберетесь во взаимодействии компонентов Logger, Handler, Formatter и Filter.
- Научитесь гибко настраивать вывод для логов и освоите фильтрацию записей.
- Овладеете всеми стилями форматирования: % (printf-style), str.format и string.Template, включая кастомизацию дат и времени.
- Разберетесь в жизненном цикле LogRecord и научитесь применять микрооптимизации для улучшения производительности.
- Закрепите навыки на проекте по загрузке файлов с хранилища NASA.
- Во второй части курса вы научитесь строить системы логирования для серьезных проектов, где важно не только увидеть ошибку, но и сохранить историю.
- Научитесь управлять несколькими регистраторами и настраивать систему логирования для проектов с развитой архитектурой.
- Сможете писать логи в файлы и управлять ротацией по размеру и/или по времени.
- Будете создавать архивы логов с сжатием данных (.zip и .gz бэкапы).
- Научитесь сериализовать логи в JSON для внешних систем мониторинга.
- Создадите пользовательские уровни логирования TRACE, NOTICE и др. и научитесь их применять.
- Научитесь создавать конфигурационные файлы в формате YAML и JSON и сможете использовать их для настройки систем логирования.
- Реализуете запись логов в базы данных и внешние сервисы, а также напишете собственные форматтеры и обработчики под задачи бизнеса.
- В третьей части курса вы научитесь решать проблемы блокирующих операций логирования, используя различные стратегии буферизации и делегирование обработки логов дополнительному потоку.
О курсе
Исчерпывающее руководство по логированию в Python с помощью стандартной библиотеки logging. Создание гибкой системы логирования, настройка форматов, применение фильтров и реализация собственных обработчиков. Курс раскрывает аспекты профессионального логирования для эффективной отладки и мониторинга.
🏆 От лауреата премии Stepik Awards.
Для кого этот курс
Курс предназначен для всех, кто хочет хорошо освоить логирование.
Вы получите максимальную пользу, если вы:
- начинающий Python-разработчик: Знаете основы языка, но хотите поднять качество своего кода на новый уровень.
- Устали от print(): Понимаете, что для отладки сложных систем стандартного вывода недостаточно, и хотите научиться использовать профессиональные инструменты.
- Работаете с конкурентным кодом: Пишете многопоточные, многопроцессные или асинхронные приложения и сталкиваетесь с проблемами потери логов или блокировок.
- Цените стандартные решения: Хотите глубоко изучить встроенную библиотеку logging, чтобы не тянуть лишние зависимости в проект без необходимости.
- Специалист по работе с данными: Вам важно отслеживать длительные процессы, сбор данных и ошибки в фоновых задачах.
Начальные требования
Теория и практические задачи курса написаны с расчетом того, что учащиеся знают базовый синтаксис языка Python и знакомы с концепцией ООП.
Преподаватели курса
Как проходит обучение
Обучение включает в себя:
- Теорию в виде текста, со всеми необходимыми примерами и пояснениями.
- Разбор исходников пакета logging, чтобы понимать как все работает и почему именно так.
- Работу с практическими задачами-тренажерами, позволяющие закрепить полученные навыки и провести серию экспериментов с получением наглядных результатов.
- Решение задач на программирование с автоматической проверкой кода-решения.
- Проверочные вопросы в формате выбора готового ответа из нескольких вариантов.
- Поддержку преподавателя. Вы всегда можете получить ответ на ваш вопрос и помощь в решении задачи.
Сертификат
Успешно завершив курс, вы получите сертификат от платформы Stepik. Уже 13 учеников получили сертификат.
Что вы получите
- Вы хорошо освоите работу с logging и "набьёте руку", решая многочисленные практические задачи.
- Курс даст и укрепит необходимую базу и подготовит Вас к профессиональному использованию, созданию и настройке сложных систем логирования.
Нагрузка
7 часов в неделю