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

Содержание

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

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

  • В последних запросах (за последние 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 час, и вы можете увеличить его при необходимости.