Отладка приложений с помощью Azure Application Insights в Visual Studio

В Visual Studio 2015 и более поздних версиях можно анализировать производительность веб-приложения ASP.NET и диагностировать проблемы во время отладки и в рабочей среде с помощью телеметрии из Azure Application Insights.

Если вы создали веб-приложение ASP.NET с помощью Visual Studio 2017 или более поздней версии, оно уже содержит пакет SDK Application Insights. Если вы используете другую версию, добавьте Application Insights в свое приложение, если вы еще это не сделали.

Чтобы отслеживать приложение в рабочей среде, можно просматривать данные телеметрии Application Insights на портале (там же можно настроить оповещения и применить эффективные средства мониторинга). Но для приложения в состоянии отладки можно также искать и анализировать данные телеметрии в Visual Studio. С помощью Visual Studio вы можете анализировать телеметрию рабочего сайта и выполнения отладки на компьютере разработчика. В последнем случае вы можете анализировать выполнения отладки, даже если вы еще не настроили пакет SDK для отправки данных телеметрии на портал Azure.

Отладка проекта

Нажмите клавишу F5, чтобы запустить веб-приложение в режиме локальной отладки. Откройте разные страницы, чтобы создать некоторый объем данных телеметрии.

В Visual Studio вы видите число событий, которые были зарегистрированы модулем Application Insights в вашем проекте.

In Visual Studio, the Application Insights button shows during debugging.

Нажмите эту кнопку для поиска данных телеметрии.

В окне поиска Application Insights отображаются события, которые были зарегистрированы. (Если во время настройки Application Insights вы вошли в Azure, эти же события вы можете найти на портале Azure.)

Right-click the project and choose Application Insights, Search

Примечание

Выберите фильтры или отмените их выбор. Нажмите кнопку поиска в конце текстового поля поиска.

Бесплатный полнотекстовый поиск охватывает все поля в журнале событий. Например, можно выполнить поиск по фрагменту URL-адреса страницы, а также по значению свойства (например, город клиента) или ключевым словам в журнале трассировки.

Выберите любое событие, чтобы подробно просмотреть его свойства.

Чтобы выполнить запрос к веб-приложению, щелкните код.

Under Request Details, click through to the code

Чтобы продиагностировать невыполненные запросы или исключения, вы можете открыть связанные элементы.

Under Request Details, scroll down to related items

Просмотр исключений и неудачно завершенных запросов

Отчеты об исключениях отображаются в окне поиска. В некоторых типах приложений ASP.NET предыдущих версий необходимо настроить отслеживание исключений, чтобы просматривать исключения, которые обрабатываются платформой.

Щелкните исключение, чтобы просмотреть трассировку стека. Если код приложения открыт в среде Visual Studio, можно щелкнуть трассировку стека в соответствующей строке кода.

Screenshot shows the About object in a stack trace.

Просмотр сводки по запросам и исключениям в коде

В строке CodeLens над каждым методом-обработчиком указано число запросов и исключений, зарегистрированных Application Insights за последние 24 часа.

Screenshot shows an exception in a context dialog box.

Примечание

Группа связанных элементов кода показывает данные Application Insights, только если вы настроили приложение для отправки данных телеметрии на портал Application Insights.

Телеметрия Application Insights в Visual Studio CodeLens

Локальный мониторинг

(Относится к Visual Studio 2015 с обновлением 2) Если ваш пакет SDK не отправляет данные телеметрии на портал Application Insights (то есть в файле ApplicationInsights.config нет ключа инструментирования), в окне диагностики выводятся данные телеметрии, полученные в ходе последнего сеанса отладки.

Это предпочтительно, если вы уже опубликовали предыдущую версию своего приложения. Кроме того, не рекомендуется, чтобы данные телеметрии, полученные на ваших сеансах отладки, смешивались с данными телеметрии на портале Application Insights, полученными от опубликованного приложения.

Это также полезно, если у вас есть данные пользовательской телеметрии , которые необходимо отладить перед отправкой на портал.

  • Сначала мы полностью настроили Application Insights для отправки данных телеметрии на портал. Но теперь нужно, чтобы данные телеметрии отображались только в Visual Studio.

    • В параметрах окна поиска можно включить поиск локальной диагностики, который будет выполняться, даже если ваше приложение отправляет данные телеметрии на портал.
    • Чтобы отключить отправку данных телеметрии на портал, закомментируйте строку <instrumentationkey>... в файле ApplicationInsights.config. Когда будете готовы отправлять данные телеметрии на портал, раскомментируйте ее.

Примечание

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

Дальнейшие действия

  • Работа с порталом Application Insights . Просмотр панелей мониторинга, эффективных средств диагностики и анализа, оповещений, карты динамических зависимостей приложения, а также экспортированных данных телеметрии.