Observability vs Monitoring

Тема дорожной карты · Observability

Мониторинг и наблюдаемость — взаимодополняющие, но принципиально разные дисциплины в арсенале инженера по надёжности. Мониторинг — это практика сбора заранее определённых метрик и отправки алертов при превышении известных порогов; он отвечает на вопрос «что-то идёт не так?». Наблюдаемость идёт дальше, предоставляя богатую телеметрию, необходимую для ответа на вопрос «почему что-то идёт не так?» — даже для режимов отказа, которые никогда не предполагались. При подходе, основанном только на мониторинге, инженеры заранее определяют дашборды и правила алертинга и не видят ничего за пределами этих определений; при наблюдаемости высококардинальные логи и распределённые трассировки позволяют нестандартно исследовать новые проблемы. Большинство продакшен-систем выигрывают от обоих подходов: мониторинг — для быстрого автоматического обнаружения через SLO-алертинг, а инструменты наблюдаемости — такие как Jaeger, Loki или Grafana — для глубокого криминалистического анализа.

Как это работает

Observability vs Monitoring — это способность задавать произвольные вопросы о внутреннем состоянии системы по её внешнему output без выкатки нового кода. Строится на трёх столпах: метрики (агрегаты по времени), логи (дискретные события с контекстом), traces (пути запросов через сервисы). Современная observability — "спросить + ответить", а не "предзаготовить все дашборды заранее". CNCF-стек (Prometheus + Loki + Tempo + Grafana) и OpenTelemetry — open-source стандарт.

Когда применять

Стройте observability с первого дня — отладка без неё это гадание. Начните со структурированного логирования + метрик + дашбордов на 4 золотых сигнала (latency, traffic, errors, saturation). Distributed tracing — когда сервисов > 2 или нужно копать в latency. Не покупайте коммерческий all-in-one, пока не переросли OSS (Grafana Cloud, Yandex Cloud Observability или self-hosted LGTM-стек — разумные дефолты).

Типичные ошибки

Ловушки Observability vs Monitoring: мысль "мониторинг = observability" (мониторинг говорит, что известная штука изменилась; observability позволяет исследовать неизвестное); pillar-by-pillar внедрение без корреляции (есть логи + метрики + traces, но pivot между ними невозможен — используйте trace ID везде); покупка observability-тулов вместо практики (тул это 20%, дисциплина 80%).

Связанные понятия

Полезные ресурсы

Проверить знания (1)

Загрузка вопросов…