Неполные данные трассировки

Содержание

Описание проблемы

Результаты запросов трассировки демонстрируют следующие проблемы с неполными данными:

  • В последних запросах (за последние 30 минут) отсутствуют некоторые спаны.
  • Данные трассировки старше 1 часа имеют разрывы.

Анализ первопричин

1. Задержка сохранения данных

Процесс записи в Elasticsearch требует последовательного выполнения шагов: буфер памяти → translog → сегментные файлы, что может приводить к задержкам видимости недавно записанных данных.

2. Ограничение временного диапазона

По умолчанию, когда jaeger-query запрашивает спаны, соответствующие трассам, временной диапазон расширяется на один час до и после времени начала спана.

Например, если спан начинается в 08:12:30 и заканчивается в 08:12:32, то временной диапазон для запроса этой трассы будет с 07:12:30 по 09:12:32.

Следовательно, если трасса длится более 1 часа, запрос по этому спану может не вернуть полную трассу.

Решение для первопричины 1

Подождите немного и обновите страницу, чтобы повторить запрос.

Решение для первопричины 2

Если спан трассы в вашей среде длительный, вы можете настроить временной диапазон запроса для одной трассы с помощью параметра запуска --es.asm.span-trace-query-time-adjustment-hours в jaeger-query.

Значение этого параметра по умолчанию — 1 час, и вы можете увеличить его при необходимости.