Просмотр результатов оптимизации кода

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

оптимизация кода Access

Вы можете получить доступ к оптимизации кода с помощью двух точек входа:

Сводная страница оптимизаций кода (предварительный просмотр)

Просмотрите результаты оптимизации кода с помощью страницы обзора оптимизации кода. В этом консолидированном обзоре можно получить доступ к результатам по нескольким подпискам для нескольких ресурсов Application Insights.

Снимок экрана: страница сводной обзорной страницы оптимизации кода.

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

Фильтр Описание По умолчанию
Диапазон времени Выберите диапазон времени, из которого нужно просмотреть результаты оптимизации кода. Последние 24 часа
Должность Имя роли, назначенное машине служб отчетности или рабочей нагрузке. Можно обновить с помощью конфигурации Application Insights. Все роли
Подписка Подписка, к которой относится инсайт. Можно выбрать несколько. Не применимо
Application Insights Ресурс Application Insights, с которым связано приложение. Можно выбрать несколько. Не применимо
Тип аналитики Тип проблемы, например ЦП, память, блокировка и исключения. Все типы

Затем можно отсортировать столбцы в результатах аналитики в зависимости от требуемого представления, включая:

  • Проблема с производительностью
  • Полное имя родительского метода

Отдельные ресурсы Application Insights

Вы можете получить доступ к оптимизациям кода, относящимся к отдельным ресурсам Application Insights, из меню данного ресурса слева. Выберите "Исследовать>производительность " и нажмите кнопку "Оптимизация кода " в верхнем меню.

Снимок экрана: оптимизация кода, расположенная на странице

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

Фильтр Описание По умолчанию
Диапазон времени Выберите диапазон времени, из которого нужно просмотреть результаты оптимизации кода. Последние 24 часа
Должность Имя роли, назначенное машине служб отчетности или рабочей нагрузке. Можно обновить с помощью конфигурации Application Insights. Все роли
Тип аналитики Тип проблемы, например ЦП, память, блокировка и исключения. Все типы

Затем можно отсортировать столбцы в результатах аналитики в зависимости от требуемого представления, включая:

  • Проблема с производительностью
  • Количество профилей, содержащих эту проблему
  • Полное имя родительского метода

Интерпретируйте предполагаемые пиковые процентные значения использования памяти и ЦП

Оценка ЦП и памяти определяется на основе количества действий в приложении. Помимо процента памяти и ЦП, оптимизация кода также включает:

  • Фактические размеры выделения (в байтах)
  • Разбивка типов, распределенных в ходе вызова

Память

Для оперативной памяти это значение — процент от всех выделений памяти, произведённых в трассировке. Например, если проблема занимает 24% памяти, вы израсходовали 24% ресурсов памяти в этом вызове.

ЦП

Для ЦП процент зависит от количества ЦП на компьютере (четыре ядра, восемь ядер и т. д.) и времени трассировки. Например, если предположить, что трассировка длится 10 секунд и у вас есть 4 процессора, общее время обработки составит 40 секунд. Если в аналитических сведениях говорится, что строка кода использует 5% ресурсов ЦП, это эквивалентно использованию 5% от 40 секунд, или 2 секунды.

Блокировка

Показывает, где потоки потратили время ожидания для таких ресурсов, как операции ввода-вывода, блокировки или спящий режим. Время блокировки указывается в секундах и агрегируется во всех потоках и ядрах, поэтому общая сумма может превышать продолжительность записи, следуя тому же правилу агрегирования, что и метрики ЦП.

Используйте эту метрику для выявления узких мест задержки, таких как:

  • Блокировка конфликтов между потоками
  • Синхронные операции ввода-вывода
  • Блокировка вызовов в асинхронных операциях

Exceptions

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

Просмотр аналитики

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

  • Подробное описание анализа ошибок производительности.
  • Полный стек вызовов.
  • Рекомендации по устранению проблемы с производительностью.
  • Временная шкала влияния и порогового значения тренда проблемы.

Выводы

Вкладка "Аналитика " предоставляет следующие возможности:

  • Краткое описание выбранной проблемы.
  • Текущее состояние использования памяти или ЦП вашего ресурса.
  • Рекомендация, созданная с помощью искусственного интеллекта, для устранения проблемы.

Снимок экрана: панель сведений для определенного результата оптимизации кода ЦП.

Замечание

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

Стек вызовов

В области сведений об аналитике под заголовком Стек вызовов вы можете:

  • Выберите "Развернуть" , чтобы просмотреть полный стек вызовов, окружающий проблему производительности.
  • Выберите "Копировать", чтобы скопировать стек вызовов.

Скриншот заголовка стека вызовов в области сведений для конкретного результата ЦП, полученного ранее.

Снимок экрана: развернутый стек вызовов для конкретного результата ЦП, полученного ранее.

Временная шкала

В области сведений в разделе "Временная шкала" можно также просмотреть график с временной шкалой влияния и порогового значения конкретной проблемы производительности. Результаты зависят от заданных фильтров. Например, аналитические сведения о проблеме производительности памяти "Неэффективны String.SubString()" за последние 24 часа могут выглядеть следующим образом:

Снимок экрана: влияние тенденции ЦП в течение семи дней.

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

Просмотреть оптимизации кода в Azure portal