Логирование в небольших проектах на С (Си) • Livecoding

14 подписчиков

12+
12+

4 просмотра

месяц назад

ПожаловатьсяНарушение авторских прав

14 подписчиков

12+
12+

4 просмотра

месяц назад

ПожаловатьсяНарушение авторских прав
12+
12+

4 просмотра

месяц назад

Соберём простую и гибкую систему ведения логов в небольшом C-проекте. Захотим большего и обсудим, где это большее получить. Ключевые слова лекции: модули, заголовочные файлы, препроцессор, stderr, встроенные макросы, уровни логирования, проектирование архитектуры проекта. Примерное содержание лекции: — уровни логирования; — условная компиляция при логировании; — `grep` и `tail -f` для работы с логами; — использование `stderr`; — логирование как способ спроектировать программу. Таймлайн: 00:00 — Вступление: зачем логировать поведение, отличие от отладки 01:20 — Что такое лог и какие вопросы должен покрывать 02:50 — Почему нельзя просто взять готовую библиотеку логов 04:05 — Уровни логирования: от информации до ошибок 05:15 — Пример: программа для цветного вывода текста 06:55 — Начинаем добавлять простейшее логирование 08:50 — Макрос вместо функции: почему и как 10:30 — Первый макрос логирования: запись начала и конца программы 14:00 — Разделение логов и вывода через stderr и stdout 17:00 — Логирование вызовов функций библиотеки 19:20 — Разделение логов по важности (info vs warn) 21:10 — Создание макросов с разными уровнями логирования 24:50 — Как включать и выключать уровни логов при компиляции 28:10 — Упрощение включения логов через флаги компилятора 31:00 — Автоматическое включение менее важных логов через условия 34:00 — Перенаправление логов в файл, мониторинг через `tail -f` 37:00 — Добавление информации о месте логирования: файл, строка, функция 41:30 — Отладка: исправление segmentation fault при логах 44:30 — Логи как структурированный формат: парсинг через `grep` 46:00 — Условная компиляция: полное отключение логов 48:20 — Логика через логи: наблюдение за поведением без реализации 51:10 — Принудительное перенаправление stderr внутри кода 52:40 — Заключение: когда и зачем писать собственные логи 53:20 — Вопросы, обратная связь и завершение Конспект: https://github.com/olgapavlova/lectures/tree/main/logs

Название:

Логирование в небольших проектах на С (Си) • Livecoding

Категория:

Разное