Все

Логирование как в Авито: go+slog

Видео go
Алексей Мичурин расскажет про логирование и подход к нему, который выбрали в Авито. Обсудим, что такое структурированное логирование, поговорим о его возможностях и подходах. Расскажем, почему мы остановились именно на своём подходе, и какие у этого есть плюсы и подводные камни.
Тезисы:
  • то такое структурированное логирование.
  • какие есть подходы и какие из них иcпользует Авито.
  • пример реализации авитовского подхода на основе стандартного log/slog.
  • логирование ошибок с полным контекстом.
  • бенифиты подхода Авито.
  • подводные камни и опасности: и как от них подстраховаться.
  • кратко о возможностях log/slog, которые мы в Авито не используем, но вам они могут понравиться.
Подборка ресурсов:
• Демо-проект Алексея: https://clc.to/E0WXOw
• Логгер Golang: https://pkg.go.dev/log/slog
00:00 | Заставка
05:50 | Вступление
06:50 | Как выглядели логи раньше, и что сейчас
08:18 | Go 1.21: log/slog
09:35 | Пример 1: используем slog
11:19 | Пример 2: структурированные логи
13:46 | Пример 3: дидактический
20:12 | Пример 4: развиваем интерфейс
22:21 | Пример 5: перемены в логировании
23:40 | Пример 6: совершенствуем идею
25:38 | Пример 7: ошибка при отправке sms
31:36 | Пример 8: кастомная ошибка
44:31 | Вопрос от зрителей: нормально ли писать в логи номера телефонов?
46:40 | Финал и ответы на вопросы в чате