Вопрос проверяет понимание наблюдаемости (observability) и практических способов диагностики ошибок в микросервисной архитектуре.
Ошибку в микросервисах определяют с помощью логов, метрик и distributed tracing. Логи показывают детали ошибки в конкретном сервисе. Трейсинг позволяет увидеть путь запроса и точку сбоя. Метрики помогают заметить аномалии и деградацию. Обычно используют все подходы вместе.
В распределённых системах нет «одного места», где видно всю картину, поэтому диагностика строится на совокупности инструментов.
Определение источника ошибки — это процесс выявления сервиса и участка кода, где возникла ошибка при обработке распределённого запроса.
Перед перечислением важно понимать: один инструмент редко даёт полную картину.
Логи — первый источник информации об ошибке.
Что дают
stack trace
сообщения об ошибках
контекст выполнения
Практика
корреляционные идентификаторы
единый формат логов
Позволяет увидеть цепочку сервисов.
Что видно
в каком сервисе запрос упал
сколько времени занял каждый шаг
Ключевая польза
быстрый поиск проблемного сервиса
Метрики показывают общее состояние сервисов.
Типичные сигналы
рост 5xx
увеличение latency
падение throughput
Алерты
сигнализируют о проблеме
направляют к нужному сервису
Код ответа
Формат ошибки
Сервис-источник ошибки
Для определения сервиса с ошибкой используют комбинацию логов, метрик и distributed tracing, а не один инструмент.