Поделиться через


Распределенная трассировка .NET

Распределенная трассировка — это метод диагностики, который помогает инженерам локализовать ошибки и проблемы с производительностью в приложениях, особенно те, которые могут быть распределены между несколькими компьютерами или процессами. Этот метод отслеживает запросы через приложение, соотносяющее работу, выполняемую различными компонентами приложения, и разделяя его от другой работы, которую приложение может выполнять для одновременных запросов. Например, запрос к обычной веб-службе сначала может быть получен подсистемой балансировки нагрузки, а затем перенаправлен в процесс веб-сервера, который затем выполняет несколько запросов к базе данных. Использование распределенной трассировки позволяет инженерам различать, если какой-либо из этих шагов завершился сбоем, как долго каждый шаг был выполнен, и потенциально регистрировать сообщения, созданные на каждом шаге при выполнении.

Начало работы для разработчиков приложений .NET

Ключевые библиотеки .NET инструментируются для автоматического создания сведений распределенной трассировки. Однако эти сведения необходимо собирать и хранить, чтобы она была доступна для последующей проверки. Как правило, разработчики приложений выбирают службу телеметрии, которая хранит эти сведения трассировки для них, а затем использует соответствующую библиотеку для передачи данных телеметрии распределенной трассировки в выбранную службу:

  • OpenTelemetry — это нейтральная от поставщика библиотека, которая поддерживает несколько служб. Дополнительные сведения см. в разделе Сбор распределенных трассировок с помощьюOpenTelemetry.
  • Application Insights — это полнофункциональный сервис, предоставляемый корпорацией Майкрософт. Дополнительные сведения см. в статье Сбор распределенных трассировок с помощьюApplication Insights.
  • Существует множество поставщиков высококачественного мониторинга производительности приложений сторонних разработчиков, которые предлагают интегрированные решения .NET.

Дополнительные сведения см. в статье Основные понятия распределенной трассировки и следующие руководства.

Для сторонних служб сбора данных телеметрии следуйте инструкциям по настройке, предоставленным поставщиком.

Встроенные действия, генерируемые .NET

См. полный список действий, встроенных в .NET, в разделе Встроенные действия в .NET.

Начало работы для разработчиков библиотек .NET

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

Дополнительные сведения см. в статье о понимании основных понятий распределенной трассировки и в руководстве по добавлению пользовательского инструментирования распределенной трассировки.