Применение АппОптима / Распределенные трассировки / Понятие распределенных трассировок
В этой статье вы узнаете о наиболее важных понятиях и терминологии распределенных трассировок в АппОптима.
Распределенные трассировки
Распределенная трассировка — это последовательность интервалов, идентифицируемых уникальным идентификатором — идентификатором трассировки . Каждая распределенная трассировка проходит по крайней мере через одну службу, а в современной среде микросервисов — обычно через несколько служб. Она содержит семантически различные атрибуты, которые позволяют интерпретировать и понимать собранные данные для запроса..
Примеры использования
- Быстрая оценка эффективности работы каждого микросервиса.
- Понимание того, как запросы распространяются по распределенным системам и микросервисам.
- Использование высококачественных данных, генерируемых распределенными системами и микросервисами, для анализа запросов.
- Следовать подробному анализу первопричин ИИ, чтобы определить причинно-следственные связи между событиями.
Улучшение использования
Информация, собранная распределенными трассировками, зависит от инструментария. Выберите инструментарий , который лучше всего соответствует вашим потребностям.
Промежуток
Промежуток — это запись взаимодействия между запросом и службой, вызванная активностью запроса, проходящего через несколько служб. Промежуток собирает информацию в виде атрибутов, включая имя, начальные и конечные временные метки, список атрибутов в виде пар ключ/значение, идентификатор родительского промежутка и тип промежутка.
Когда действие — родительский промежуток — завершено, следующее действие переходит к его дочернему промежутку . промежуток без родительского промежутка называется корневым промежутком и указывает на начало трассировки.
Контекст промежутка
Контекст промежутка необходим для того, чтобы поместить все промежутки и события в контекст друг с другом. Контекст промежутка позволяет дочернему промежутку соотноситься с трассировкой и его родительским промежутком. Поэтому контекст должен распространяться внутри службы (через разные потоки), а также через службы и границы процессов. Обычно это происходит через заголовки HTTP (например, контекст трассировки W3C) или через уникальные идентификаторы в системах обмена сообщениями.
Атрибут
Атрибуты — это пары ключ-значение, которые предоставляют сведения о диапазоне, запросе или ресурсе, такие как коды ответов, методы HTTP и URL-адреса. С помощью атрибутов вы можете группировать, запрашивать, находить и анализировать свои трассировки и диапазоны.
Примеры использования
АппОптима использует метаданные атрибутов для
- Обнаружения и присвоения имен службам.
- Подключение данных журнала к трассировкам для мониторинга логов.
- Понимания, как продолжительность интервала зависит от времени обслуживания (например, времени ЦП, времени сети или просто ожидания других потоков), и проанализировать, какой код был выполнен в контексте интервала.
Служба
Службы пересекаются распределенными трассировками. В горизонтально масштабируемых службах определенные службы обрабатывают каждый промежуток. Службы определяются и именуются на основе доступных атрибутов или свойств, которые собираются вместе с промежутками.
Примеры использования
- Сегментация запросов для улучшения снижения времени отклика.
Инструментарий
Инструментарий для распределенной трассировки означает добавление кода в ваше приложение для получения видимости его поведения и взаимодействия со службами в распределенной системе. Код собирает и распространяет данные трассировки, включая время запроса и ответа, уникальный идентификатор для определенного запроса, зависимости служб и другие соответствующие метаданные в форме атрибутов . В зависимости от инструментария информация, собираемая для распределенных трассировок, различается.
Чтобы начать инструментирование ваших трасс, см.
- Автоматическое приборостроение с помощью ЕдиныйАгент
- Использование OpenTelemetry с АппОптима
- Расширить распределенную трассировку
Примеры использования
Поскольку информация, собираемая для распределенных трассировок, различается в зависимости от инструментария, вам необходимо выбрать тот инструмент, который наилучшим образом соответствует вашим задачам.
- Используйте OpenTelemetry в сочетании с ЕдинымАгентом, чтобы улучшить покрытие наблюдаемости, используя лучшее из обоих вариантов.
OpenTelemetry | OneAgent | |
---|---|---|
Инструментарий | Автоматический или ручной | Автоматический |
Промежуток | Автоматический сбор разрешенных атрибутов промежутка. | Автоматический сбор нескольких атрибутов запроса, включая метод HTTP, URL, коды ответов, данные топологии и сведения о базовых технологиях. |
Контекст | Автоматически или вручную контекстуализированные записи журнала в зависимости от библиотеки инструментов. | Автоматически контекстуализируется
|