Отладка веб-сайта Azure
Я понимаю, что я могу отлаживать Azure Web Role, используя описанные здесь методы:
http://msdn.microsoft.com/en-us/library/windowsazure/ee405479.aspx
Каков процесс отладки веб-сайта Windows Azure?
Я бы хотел, чтобы я мог выполнить код, установить точки останова, ect.
Ответы
Ответ 1
ОБНОВЛЕНИЕ: Портал Azure изменился, а блейд Application Settings удаляется.
Я думаю, что это заслуживает обновленного ответа для последних версий портала управления Azure и VS.
Вот как я добился удаленной отладки для API ASP.Net Core 2.0 с помощью Visual Studio 2017 Preview 7.1:
- Откройте портал управления Azure, перейдите к веб-приложению, нажмите "Конфигурация"> "Общие параметры" и включите удаленную отладку. Ранее также запрашивалась версия VS, но это, кажется, больше не вариант, я предполагаю, что платформа удаленной отладки теперь автоматически обнаруживает (но это также может быть тот случай, когда версии VS до 2015 года больше не будут поддерживается, см. комментарии ниже)
![enter image description here]()
- Отредактируйте свой профиль публикации и установите для конфигурации значение Debug, а затем повторно опубликуйте API в Azure:
![enter image description here]()
- Установите точки останова в вашем коде
-
Откройте панель обозревателя серверов в Visual Studio и, если вы еще не подключены к Azure с учетной записью Microsoft, подключите ее.
-
Откройте Azure> Служба приложений> [Группа ресурсов], затем щелкните правой кнопкой мыши свое веб-приложение и выберите " Присоединить отладчик". После небольшой настройки он должен подключиться и (если настроено) VS откроет браузер для вашего веб-приложения Azure.
![enter image description here]()
![enter image description here]()
- Хит ваш сайт /API, и ваша точка останова должна быть достигнута.
Последние заметки, которые я собрал:
- Я заметил, что иногда в меню отсутствует опция "Attach Debugger". Похоже, что выбор Стоп из меню (ожидание) и затем Старт достаточно для повторного появления опции, если остановка сервиса является опцией. Там могут быть другие исправления.
- Некоторая официальная документация
- Не забудьте изменить конфигурацию вашего профиля публикации обратно на Release и повторно опубликовать версию Release. Не используйте Debug в производстве. Спасибо @Manfred.
- Избегайте длительных остановок на контрольных точках (кто-нибудь может объяснить, как это может повлиять?)
- Похоже, что через 48 часов функция удаленной отладки автоматически отключается (пока не может подтвердить это)
Ответ 2
В соответствии с этим последним сообщением это возможно.
Вот необходимые шаги для Visual Studio 2012, взятые из этой публикации:
- На портале управления Windows Azure перейдите на вкладку "Конфигурировать" для ваш веб-сайт, а затем прокрутите страницу до раздела "Диагностика сайта".
- Задайте удаленную отладку в положение "Вкл." и установите "Удаленная отладка" Visual Studio Версия для 2012
- В меню "Отладка Visual Studio" нажмите "Присоединить к процессу в поле" Квалификатор ", введите URL-адрес вашего веб-сайта без префикса http://
- Выберите Показывать процессы от всех пользователей
- Когда вам будет предложено ввести учетные данные, введите имя пользователя и пароль, которые разрешения на публикацию веб-сайта
- Чтобы получить эти учетные данные, перейдите на вкладку" Панель мониторинга "для своего веб-сайта на портале управления и нажмите" Загрузить профиль публикации ". Откройте файл в текстовом редакторе, и вы найдете имя пользователя и пароль после первых вхождения userName = и userPWD =.
- Когда процессы появятся в таблице Доступные процессы, выберите w3wp.exe и нажмите" Прикрепить"
- Откройте браузер для URL-адреса вашего сайта. Возможно, вам придется подождать 20 секунд или около того, пока Windows Azure настроит сервер для отладки. Эта задержка происходит только при первом запуске в режиме отладки на веб-сайте. Последующие моменты в течение следующих 48 часов, когда вы снова начнете отладку, не будет задержки.
Ответ 3
Ответ такой же, как и ответ на вопрос
Как отладить (asp.net) веб-сайт в любом сервере хостинга?
- Правильно ли обрабатываются исключения/обработка журналов
- Используйте
<compilation debug="true" />
во время отладки (и только при отладке)
- Включить все и любые сообщения об ошибках для веб-сайта (прилагается ниже)
- [вставить здесь ваш любимый способ отладки сайта с общим хостингом]
![Azure Websites Diagnostics]()
Ответ 4
Скотт Гензель недавно написал об этом здесь.
Это не так хорошо, как контрольные точки настройки, но запись информации, передаваемой на консоль, делает отладку немного менее болезненной.
Ответ 5
Пол, это может стать для вас шагом вперед в некоторых из приведенных выше предложений:
"Glimpse похож на отладчик на стороне клиента FireBug, за исключением того, что он реализован в JavaScript на стороне клиента с перехватами в ASP.NET на стороне сервера".
Таким образом, хотя это не позволяет вам установить точку останова, по крайней мере, вы можете наблюдать за трассировкой в реальном времени, а не просеивать файлы журналов.
http://www.hanselman.com/blog/NuGetPackageOfTheWeek5DebuggingASPNETMVCApplicationsWithGlimpse.aspx