НЕмитап Golang#1 Алексей Мичурин – Логирование как в Авито: go + slog

 

Всем привет! Это новый формат на канале avito.tech — НЕмитап. Наши инженеры рассказывают про инструменты и подходы, которые используют в работе, и отвечают на ваши вопросы. Алексей Мичурин расскажет про логирование и подход к нему, который выбрали в Авито. Обсудим, что такое структурированное логирование, поговорим о его возможностях и подходах. Расскажем, почему мы остановились именно на своём подходе, и какие у этого есть плюсы и подводные камни. Тезисы: • Что такое структурированное логирование. • Какие есть подходы и какие из них иcпользует Авито. • Пример реализации авитовского подхода на основе стандартного log/slog. • Логирование ошибок с полным контекстом. • Бенифиты подхода Авито. • Подводные камни и опасности: и как от них подстраховаться. • Кратко о возможностях log/slog, которые мы в Авито не используем, но вам они могут понравиться. Подборка ресурсов: • Демо-проект Алексея:
• Логгер Golang:
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 | Финал и ответы на вопросы в чате AvitoTech — это команда инженеров Авито. Подпишитесь на наш канал, соцсети и блоги, чтобы узнавать больше о технологиях Авито ВК: https://vk.com/avitotech
Телеграм:
Хабр:
Медиум (eng):
Гитхаб:
RuTube:
Дзен:
Сайт:
#golang #немитап