Последнее обновление: августа 11, 2026

Редактор запросов Zipkin

В этом документе объясняется, как использовать редактор запросов Zipkin для запроса и визуализации трассировок. Вы можете искать трассировки по ID, просматривать доступные трассировки с помощью каскадного селектора служб и промежутков или загрузить файл трассировки JSON для визуализации.

Общую документацию по запросам к источникам данных в Grafana см. в разделе Запрос и преобразование данных.

Запрос по ID трассировки

Чтобы запросить конкретную трассировку по её ID:

  1. Выберите тип запроса TraceID.
  2. Введите ID трассировки в поле Trace ID.
  3. Нажмите Shift+Enter, чтобы выполнить запрос.

ID трассировок Zipkin — это шестнадцатеричные строки из 16 или 32 символов, например efe9cb8857f68c8f или 463ac35c9f6413ad48485a3953bb6124.

Вы также можете использовать переменные шаблонов в поле ID трассировки. Например, ${traceId} заменяется текущим значением переменной при выполнении запроса.

Запрос по селектору трассировок

Вы можете просматривать и выбирать трассировки с помощью каскадного селектора Traces вместо ручного ввода ID трассировки. Это полезно, когда вы хотите исследовать трассировки, не зная конкретного ID трассировки.

Селектор трассировок имеет три уровня:

  1. Service: выберите интересующую вас службу, например frontend или api-gateway.
  2. Span: выберите конкретную операцию в выбранной службе, например GET /api/users.
  3. Trace: выберите конкретную трассировку, в которой произошла выбранная операция, представленную именем корневой операции и длительностью трассировки (например, get /api [23 ms]).

Когда вы выбираете трассировку на третьем уровне, ID трассировки заполняется автоматически, и запрос выполняется.

Note

Селектор трассировок перечисляет трассировки в пределах текущего выбранного диапазона времени Explore. Если вы не видите ожидаемых трассировок, попробуйте расширить диапазон времени.

Загрузка файла трассировки JSON

Вы можете загрузить файл JSON, содержащий одну трассировку, и визуализировать её. Если в файле несколько трассировок, Grafana визуализирует первую трассировку.

Чтобы загрузить файл трассировки:

  1. Нажмите Import trace.
  2. Перетащите файл JSON или нажмите, чтобы выбрать файл.

Файл должен содержать массив JSON промежутков в формате промежутка Zipkin v2.

Пример трассировки с одним промежутком

JSON
[
  {
    "traceId": "efe9cb8857f68c8f",
    "id": "efe9cb8857f68c8f",
    "kind": "SERVER",
    "name": "get /api",
    "timestamp": 1627975249601797,
    "duration": 23457,
    "localEndpoint": { "serviceName": "backend", "ipv4": "127.0.0.1", "port": 9000 },
    "tags": {
      "http.method": "GET",
      "http.path": "/api"
    }
  }
]

Пример трассировки с несколькими промежутками

Следующий пример показывает трассировку с родительским промежутком и дочерним промежутком, представляющую службу frontend, вызывающую службу backend:

JSON
[
  {
    "traceId": "efe9cb8857f68c8f",
    "id": "efe9cb8857f68c8f",
    "kind": "SERVER",
    "name": "get /api",
    "timestamp": 1627975249601797,
    "duration": 23457,
    "localEndpoint": { "serviceName": "frontend", "ipv4": "127.0.0.1", "port": 8080 },
    "tags": {
      "http.method": "GET",
      "http.path": "/api",
      "http.status_code": "200"
    }
  },
  {
    "traceId": "efe9cb8857f68c8f",
    "parentId": "efe9cb8857f68c8f",
    "id": "8608dc6ce5cafe8e",
    "kind": "CLIENT",
    "name": "get /api/data",
    "timestamp": 1627975249602000,
    "duration": 18200,
    "localEndpoint": { "serviceName": "backend", "ipv4": "127.0.0.1", "port": 9000 },
    "tags": {
      "http.method": "GET",
      "http.path": "/api/data",
      "http.status_code": "200"
    }
  }
]

Просмотр сопоставления данных в интерфейсе трассировки

Аннотации Zipkin появляются в представлении трассировки как журналы со значением аннотации, отображаемым под ключом аннотации. Это позволяет просматривать события с временными метками, которые произошли во время промежутка, такие как попытки повтора или промахи кэша.

Фильтры промежутков

Span filters in the trace timeline viewer
Span filters in the trace timeline viewer

Используя фильтры промежутков, вы можете фильтровать промежутки в средстве просмотра временной шкалы трассировки. Чем больше фильтров вы добавляете, тем более конкретными становятся отфильтрованные промежутки.

Вы можете добавить один или несколько из следующих фильтров:

Фильтр Описание Пример
Service name Фильтрация по службе, создавшей промежуток. frontend
Span name Фильтрация по имени операции. GET /api/users
Duration Фильтрация по минимальной и/или максимальной длительности промежутка. Min: 10ms, Max: 500ms
Tags Фильтрация по тегам промежутка, тегам процесса или полям журнала. http.status_code=500

Чтобы показывать только совпавшие промежутки, включите Show matches only.

Примеры фильтров промежутков

  • Найти медленные вызовы базы данных: установите Service name в вашу службу базы данных и минимум Duration в 100ms.
  • Найти ошибки: добавьте фильтр Tags для error=true или http.status_code=500.
  • Изолировать конкретную службу: установите Service name и включите Show matches only, чтобы скрыть все остальные промежутки.

Вы можете ссылаться на трассировки Zipkin из журналов в Loki, Elasticsearch, Splunk и других источниках данных журналов, настроив внутреннюю ссылку.

Чтобы настроить эту функцию, обратитесь к разделу Производные поля документации источника данных Loki или к разделу Ссылки на данные документации источника данных Elasticsearch или Splunk.

Вы можете ссылаться на трассировки Zipkin из метрик в источниках данных Prometheus, настроив экземпляр (exemplar).

Чтобы настроить эту функцию, обратитесь к документации введение в экземпляры.

Устранение проблем с запросами

Если вы сталкиваетесь с проблемами с запросами, обратитесь к разделу Устранение неполадок источника данных Zipkin.