Получить доступ

Чем наблюдаемость (observability) отличается от мониторинга?

MiddleНаблюдаемость и SLO
Ещё спрашивают так:
  • Что такое observability?
  • Чем метрики отличаются от логов и трейсов?
Коротко

Мониторинг отвечает на заранее известные вопросы (дашборды и алерты под известные отказы). Наблюдаемость — свойство системы отвечать на непредусмотренные вопросы по её телеметрии.

  • Нужны данные высокой кардинальности: id запроса, пользователь, версия, регион
  • Три сигнала: метрики (агрегаты), логи (события), трейсы (путь запроса)
  • Связь между ними — trace_id в логах и примеры трейсов в метриках

А ещё «Почему растёт задержка только у платных пользователей в одном регионе на версии 4.2?» — вопрос наблюдаемости

Так подсказку видит пользователь sotto на живом собеседовании — за пару секунд, пока вы думаете вслух.

Подробно

Мониторинг — проверка известных режимов отказа: CPU, память, доля ошибок, задержка, заполнение диска. Строится заранее и отвечает на вопросы «есть ли проблема из известного списка».

Наблюдаемость — возможность понять внутреннее состояние по внешним сигналам без нового кода и выкатки. В распределённых системах большинство инцидентов — новые комбинации условий, и заранее подготовленный дашборд их не покажет. Нужно уметь произвольно резать данные: по версии клиента, региону, тарифу, конкретному эндпоинту и параметру.

Три сигнала:

  • метрики — числа во времени, дешёвые, для алертов и трендов; низкая кардинальность меток;
  • логи — структурированные события с деталями, высокая кардинальность;
  • трейсы — путь одного запроса через сервисы с длительностью каждого шага.

Что делает систему наблюдаемой: структурированные логи (JSON) с trace_id, распределённая трассировка (OpenTelemetry), широкие события с множеством атрибутов, связь метрик с трейсами (exemplars), единое хранилище с произвольными запросами.

Что хотят услышать

  • Различие: известные вопросы против непредусмотренных.
  • Три сигнала и их роль.
  • Высокая кардинальность и связь сигналов через trace_id.

Частые ошибки

  • Считать наблюдаемость модным названием мониторинга.
  • Класть детали запросов в метки метрик.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✓Мониторинг отвечает на заранее заданные вопросы, наблюдаемость позволяет ответить на вопрос, который не был предусмотрен заранее
  • ✗Наблюдаемость — это то же самое, что мониторинг, только с красивыми дашбордами
  • ✗Мониторинг работает с метриками, наблюдаемость — только с логами
  • ✗Наблюдаемость применима лишь к монолитам, мониторинг — к микросервисам

Что спросят дальше

  • Какие три сигнала составляют основу и что каждый умеет?
  • Почему в распределённой системе без корреляции запросов отладка невозможна?

Разбор темы

Связанные вопросы

Закрытая бета

Подсказки на собеседовании — в реальном времени

sotto слышит вопрос интервьюера и показывает короткий ответ и план, как в блоке «Коротко». Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем