Профилирование приложений в рабочей среде Azure с помощью Application Insights Profiler

Диагностика проблем с производительностью приложения может быть сложной задачей, особенно при запуске в рабочей среде в динамическом облаке. Медленные отклики в приложении могут быть вызваны инфраструктурой, платформой или кодом приложения, обрабатывающим запрос в конвейере.

С помощью application Аналитика Profiler можно записывать, определять и просматривать трассировки производительности для приложения, работающего в Azure, независимо от сценария. Процесс трассировки Профилировщика происходит автоматически, в масштабе и не влияет на пользователей. Профилировщик определяет:

  • Срединное, минимальное и максимальное время отклика для каждого веб-запроса, поступившего от пользователей.
  • Путь к коду "горячий" тратит больше всего времени на обработку определенного веб-запроса.

Включите профилировщик во всех приложениях Azure для сбора данных со следующими триггерами:

  • Триггер выборки: запускает профилировщик случайным образом примерно один раз в час в течение двух минут.
  • Триггер ЦП: запускает профилировщик, если процент использования ЦП превышает 80 процентов.
  • Триггер памяти: запускает профилировщик, если использование памяти превышает 80 процентов.

Каждый из этих триггеров можно настроить, включить или отключить.

Дополнительная нагрузка и алгоритм выборки

Профилировщик случайным образом выполняет две минуты в час на каждой виртуальной машине, в которой размещаются приложения с включенным Профилировщиком. При запуске профилировщик увеличивает нагрузку на ресурсы ЦП сервера на 5–15 процентов.

Поддерживается в Profiler

Profiler работает с приложениями .Net, развернутыми на следующие службах Azure. Просмотрите конкретные инструкции по включению Профилировщика для каждого типа службы в следующих ссылках.

Вычислительная платформа .NET (>= 4.6) .NET Core
Служба приложений Azure Да Да
Azure Виртуальные машины и Масштабируемые наборы виртуальных машин для Windows Да Да
Azure Виртуальные машины и Масштабируемые наборы виртуальных машин для Linux No Да
Oблачныe службы Azure2 Да Да
Экземпляры контейнеров Azure для Windows No Да
Экземпляры контейнеров Azure для Linux No Да
Kubernetes No Да
Функции Azure Да Да
Azure Service Fabric Да Да

Примечание.

Вы также можете использовать Java Profiler для приложений Azure Monitor Аналитика, в настоящее время в предварительной версии.

Если вы включили Профилировщик, но не видите трассировки, см . руководство по устранению неполадок.

Ограничения

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

Следующие шаги

Узнайте, как включить Profiler в службе Azure: