Распределённая трассировка
Предварительные требования¶
- Подписка Dynatrace Platform Subscription (DPS).
Разрешения¶
| Разрешение | Описание |
|---|---|
| storage:buckets:read | Чтение бакетов |
| storage:spans:read | Чтение спанов |
| storage:entities:read | Чтение сущностей |
| storage:logs:read | Чтение логов |
| state:user-app-states:read/write/delete | Состояние пользователя |
| storage:fieldsets:read | Маскированные поля |
| storage:filter-segments:read | Сегменты фильтрации |
| storage:smartscape:read | Узлы и связи Smartscape |
Убедитесь, что приложение установлено.
Начало работы¶
Distributed Tracing на базе Grail обеспечивает приём и обработку петабайтов данных трассировки для отслеживания ошибок и проблем производительности в распределённых системах. Данные хранятся в Grail и доступны через приложение и DQL.
Учебные модули¶
- Анализ исключений
- Приём трассировок — инструментация через OneAgent или OpenTelemetry.
- Настройка разрешений Grail
- Хранение и удержание данных
- Распространение контекста спана и трассировки
- Трассировки, DQL и логи для выявления закономерностей
- Приложение Distributed Tracing
- Расширенная аналитика на Grail
Концепции¶
Распределённая трассировка¶
Последовательность спанов с уникальным trace ID, отслеживающая путь запроса через сервисы и компоненты. Помогает выявлять узкие места, ошибки и проблемы задержки.
Спан¶
Отдельная операция в трассировке. Атрибуты: имя, метка времени, события (исключения), идентификатор родителя, тип. Спан без родителя — корневой спан (начало трассировки).
Контекст распространяется через HTTP-заголовки (W3C trace context) или идентификаторы в системах обмена сообщениями. См. Распространение контекста.
Атрибут¶
Пары ключ-значение с деталями о спане/запросе/ресурсе (коды ответа, HTTP-методы, URL). Используются для группировки, запросов и анализа трассировок.
Dynatrace использует атрибуты для: обнаружения и именования сервисов, построения топологии Smartscape, связывания логов с трассировками, анализа таймингов спанов.
Сервис¶
Сервисы определяются и именуются на основе атрибутов спанов. Экземпляры сервиса обрабатывают отдельные спаны.
Сбор данных¶
Используйте OneAgent или OpenTelemetry (или оба) для сбора трассировок. Trace ID распространяется по приложениям и микросервисам.
Сценарии использования¶
- Устранение неполадок: причины сбоев запросов.
- Оптимизация производительности: узкие места и задержки.
- Детальный анализ отдельных трассировок.
- Исследовательский анализ неизвестных проблем.
- Синтез трассировок с логами, событиями и метриками.
FAQ¶
- "The new tracing experience is coming soon" — поэтапное развёртывание до марта 2025.
- Классические представления? Да, Distributed Traces Classic работает параллельно.
- Лицензия? DPS FullStack и/или Custom Traces Classic. Дополнительных расходов нет.
- Сброс фасетов? Distributed Tracing > Show facets > Reset to default.
- Нулевые span.kind? Обновите OneAgent.
- Неполные трассировки? Обновите OneAgent и включите Forward Tag 4 trace context extension.
- Фильтр по источнику? Фасет
span source. - Межсредовая трассировка? Пока не поддерживается.
Связанные темы¶
- Dynatrace Query Language
- Dynatrace Grail
- Распространение контекста спана и трассировки