Вся база по Observability
О чём курс
Курс представляет собой глубокое погружение в практики Observability (наблюдаемости), охватывающее весь спектр задач: от настройки мониторинга в небольших проектах до проектирования сложных систем в BigTech-компаниях. Программа разработана для backend-разработчиков и DevOps-инженеров уровня middle и выше, которые стремятся выйти на уровень Senior или TeamLead в вопросах эксплуатации и поддержки высоконагруженных систем. Основная цель обучения — научить студентов не просто собирать данные, а строить информативные дашборды, эффективно управлять алертингом и оперативно находить причины инцидентов, сокращая время их устранения до считанных минут.
В процессе обучения вы освоите работу с ключевыми инструментами индустрии, такими как Prometheus, Grafana, Jaeger, Loki и OpenTelemetry. Особое внимание уделяется правильной интерпретации данных: вы научитесь строить метрики, которые не перегружают систему хранения, писать структурированные логи, в которых легко ориентироваться, и использовать трейсинг для анализа сложных цепочек вызовов в микросервисной архитектуре. Курс делает упор на практическое применение знаний: примеры реализованы на языке Go, однако методологии и подходы являются универсальными и применимы к любому стеку технологий. Интеграция observability рассматривается как фундаментальная часть SRE-культуры, что позволяет выпускникам курса лучше понимать бизнес-ценность мониторинга, правильно оценивать нагрузку на новые фичи и предсказывать поведение системы под высокой нагрузкой.
Формат обучения включает 9 интенсивных уроков, насыщенных теорией и большим количеством практического кода. Вы пройдете путь от настройки базового мониторинга до автоматизации observability-стека с помощью Helm и Terraform. Курс поможет вам избавиться от «шумных» алертов, научит работать с 4 Golden Signals, RED/USE методами и даст понимание того, как эффективно балансировать между объемом собираемых данных и их реальной полезностью для бизнеса. Это идеальный выбор для тех, кто хочет перестать «тушить пожары» и начать управлять стабильностью системы на основе глубокой аналитики и профессиональных инженерных практик.
Программа обучения
Введение в Observability Теория: Основные аспекты Observability — метрики, логи, трейсы, профили Зачем нужна наблюдаемость для микросервисов Структурные отличия observability для монолитов и микросервисов Инструменты Observability: Prometheus, Graphite, Grafana, Grafana Alloy, Grafana Pyroscope, Grafana Tempo, OpenTelemetry, Loki, Jaeger, Clickhouse Практика: Настройка базового проекта на Go Интеграция базового мониторинга с Prometheus и с push gateway Интеграция с graphite Интеграция с Loki Примеры использования инструментов observability Пример сбора runtime-метрик golang приложения Метрики: основные концепции и работа с ними Теория: Разные подходы к работе с метриками: push vs pull Архитектура Prometheus Кардинальность метрик: что это и почему важно Влияние системы сбора метрик на производительность Эффективное именование метрик Разница бизнес-метрик и технических метрик Влияние метрик на принятие бизнес-решений Практика: Создание и экспорт пользовательских метрик: счетчики, гистограммы, таймеры, скаляры (gauges), summaries Анализ влияния высокой кардинальности на производительность Запросы и работа с метриками Теория: Как правильно писать запросы для визуализации — PromQL, VictoriaMetricsQL, SQL-источники Нюансы агрегаций — sum, avg, rate, increase, histogram_quantile Квантили, перцентили и как их корректно использовать Частые ошибки в запросах — double aggregation, неправильный rate, слишком «дорогие» запросы Практика: Написание базовых и сложных запросов Сравнение разных способов агрегации одной и той же метрики Управление метриками: агрегация, квантили, экспоненциальное скользящее среднее Визуализация и управление метриками Теория: Лучшие практики построения дашбордов Антипаттерны построения дашбордов Типы графиков и их применение: временные ряды, heatmap, гистограммы, gauges, etc. Как избежать перегруженных дашбордов 4 Golden Signals и их значение для мониторинга RED/USE методы построения дашбордов Практика: Создание дашбордов в Grafana для анализа Golden Signals Практическое задание: построить дашборд для микросервиса Продвинутая настройка Grafana: версионирование дашбордов, интеграция с несколькими источниками данных, переменные, зависимости переменных, кастомные визуализации, annotations, группировка панелей Логирование и структурированные логи Теория: Подходы к логированию: текстовые и структурированные логи Стандарты форматирования логов — JSON, OpenTelemetry Logs Фильтрация и нормализация логов Скрытие конфиденциальной информации Уход от ELK в сторону Grafana stack, плюсы и минусы использования ELK Практика: Интеграция структурированного логирования с logrus или zap, использование slog Настройка Loki для агрегации логов Использование fluentbit для фильтрации и отправки логов Написание запросов в Loki для анализа логов Уменьшение объема логов без потери данных Трейсинг Теория: Что такое трейсы и зачем они нужны Основы работы OpenTelemetry Trace Корреляция трейсов, логов и метрик OpenTelemetry как единый стандарт для метрик, логов и трейсов Архитектура и возможности OpenTelemetry Преимущества и сложности перехода на OpenTelemetry Observability асинхронных систем Автоматическая интеграция OpenTelemetry на уровне инфраструктуры (http, sql), интеграция и корреляция на стыке систем (сервис + БД + API gateway) Обзор последних трендов: eBPF для мониторинга (OpenTelemetry), AIOps Практика: Интеграция OpenTelemetry в приложение. Golang zero code instrumentation Настройка Jaeger для распределенного трейсинга Настройка Grafana Alloy для трейсинга Анализ проблем на основе трейсов (высокая latency, ошибки) Корреляция логов / метрик / трейсов (OpenTelemetry semantic conventions) Отладка сети с помощью OpenTelementry Автоматизация прокидывания requestId сквозь разные слои сервисов Миграция с Prometheus + Jaeger на OpenTelemetry Настройка сборщиков для метрик, логов, трейсов через OpenTelemetry Collector Управление алертингом Теория: Как писать запросы для алертов (prometheus, graphite) Алерты из метрик, алерты из логов Настройка порогов для Golden Signals Предотвращение перегрузки системы алертинга Автоматизация алертинга Дашборды для SLO Практика: Настройка Alertmanager Настройка алертинга в Grafana Написание запросов для сложных алертов Интеграция с уведомлениями (Slack, Email, PagerDuty) Маскирование ошибок неправильными запросами (примеры: transformNull, пропадание метрики) Observability как часть SRE — практики и проблемы эксплуатации Теория: Введение в SRE и роль Observability Error Budgets Применение Top-Down анализа Баланс между объемом данных и их ценностью: что хранить, а что — игнорировать Построение системы observability для N-сервисов Обработка синхронных/асинхронных взаимодействий Кейсы деградации цепочек вызовов Практика: Разработка observability для системы из нескольких Go-сервисов Анализ деградации цепочек вызовов через трейсы и метрики Стратегии для больших систем Теория: Построение наблюдаемости для системы из множества сервисов Подходы к массовой интеграции метрик в микросервисы: конфигурация экспортеров и SDK, шаблонизация дашбордов Автоматизация алертинга: CI/CD для observability Автоматизация деплоя observability-стека Как не перегрузить систему мониторинга сложными алертами Синхронные и асинхронные взаимодействия: мониторинг и алертинг Дизайн метрик и root cause analysis Борьба с избыточным количеством метрик Предсказания AI для алертинга Использование service mesh istio для улучшения наблюдаемости системы, kiali для визуализации Автоматизация сбора метрик на уровне инфраструктуры, header propagation Практика: Создание комплексного дашборда для системы из N-сервисов Написание эффективных запросов Настройка cross-service трейсов Проведение RCA с использованием метрик, логов и трейсов Автоматизация конфигураций метрик и алертов с помощью Helm и Terraform
Теги курса
Другие материалы автора 1
ВЛ Виталий Лихачев Все материалыОтзывов пока нет. Будьте первым!
Этот курс сейчас в процессе организации складчины. Нажмите кнопку «Записаться» и ожидайте старта — вам придёт уведомление. Когда складчина стартует, в карточке курса будет указан актуальный взнос. Текущая цена пока в процессе формирования и может отличаться от финальной.
Да, мы стремимся, чтобы финальный взнос был не больше ≈10% от оригинальной цены курса. Чем больше участников записывается в складчину, тем ниже выходит взнос для каждого.
Нажмите кнопку «Записаться» и авторизуйтесь на сайте через email (через ту же почту, которую будете использовать для входа). В личном кабинете вас будут ждать инструкции, как пригласить других участников — чем больше людей записалось, тем быстрее стартует складчина и тем ниже взнос. Как только складчина готова к приобретению, вам придёт уведомление.