Вопрос с собеседования · System design

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

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

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

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

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

Подробно

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

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

Три сигнала:

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

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

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

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

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

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

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

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

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

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

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

Разбор темы

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

Партнёр платформы

Разбор собеседования с sotto

После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.

Разбор собеседования