Перейти к основному содержимому
Руководство администратора
How To статьи
Установка и настройка
Компоненты
Руководство пользователя
Начало работы

Просмотр цепочки логирования с анализом трейсов

Основное назначение анализа трассировки в ESB — это детальный анализ этапов обработки запроса, на которых происходит замедление работы системы или возникновение ошибок.

В рамках трассировки предоставляется детализированная информация о длительности выполнения и последовательности шагов обработки:

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

Таким образом, применение трассировки в ESB даёт возможность проанализировать, какой именно участник потока обработки данных характеризуется неоправданно высоким временем выполнения.

В следующих подразделах описан пример просмотра трассировки отдельно взятого потока в Bercut ESB.

Запуск потока и определение trace_id

  1. В интерфейсе ESB выберите нужный поток и скопируйте его ID.
    ID потока в ESB – это часть URL адреса в редакторе потоков, идущая после «designer/» при выбранном потоке и не выбранных в нем компонентов. Например в адресе https://server_name /designer/7748a1f0-2b61-47bc-bb3c-99033d9c8b11 ID потока – это 7748a1f0-2b61-47bc-bb3c-99033d9c8b11. Если выбрать определенный блок потока в редакторе, то ID блока будет дописан в URL адрес после ID потока и разделителя ?componentId=.

  2. Запустите поток.

  3. Войдите в Grafana, в раздел Explorer.

  4. Выберите источник данных Loki.

  5. Настройте критерии поиска:

    • Service = Core
    • Type = APPLICATION
    • Line contains = ID потока
    • Задайте временной диапазон логирования.
  6. Нажмите Run query. На экране отобразится лог выполнения потока. В нем вы можете увидеть и скопировать trace_id прохождения потока.

Preview

Лог выполнения запроса в Loki

Просмотр и анализ трассировок

  1. В Grafana перейдите в Explore.
  2. Выберите источник данных Tempo в выпадающем списке.
  3. В поле Build complex queries using TraceQL to select a list of traces вставьте скопированный trace_id.
  4. Нажмите Run query

На экране отобразится история обработки запроса.

Preview

История обработки запроса

Таким образом, зная trace_id потока, можно найти проблемный запрос и идентифицировать где именно возникла проблема. На рисунке ниже приведен пример потока, на котором была выброшена ошибка.

Preview

Поток с ошибкой

При клике по конкретному этапу обработки запроса можно посмотреть детали спана:

  • ошибку (exception), если есть;
  • endpoint запроса;
  • вызываемый метод;
  • HTTP код статуса.

Preview

Детали спана