Compartilhar via


Depure remotamente o ASP.NET Core no Serviço de Aplicativo do Azure (Windows)

Este artigo descreve como anexar o depurador do Visual Studio a um aplicativo ASP.NET Core em execução no Serviço de Aplicativo do Azure. As etapas a seguir permitem que você depure o aplicativo como se ele estivesse em execução localmente.

Pré-requisitos

  • Visual Studio 2022 com o ASP.NET e desenvolvimento web e a carga de trabalho de desenvolvimento do Azure instalada.

  • Primeiro, você deve implantar um aplicativo ASP.NET Core no Serviço de Aplicativo do Azure (Windows) do Visual Studio e o aplicativo deve estar em execução.

  • Seu perfil de configuração no Visual Studio deve estar definido como Debug em vez de Release antes da publicação.

Habilitar depuração remota

Antes de depurar esse problema com o Visual Studio, você deve habilitar o recurso de depuração remota no Serviço de Aplicativo. Essa configuração permite que o depurador do Visual Studio se conecte ao processo principal de hospedagem web do Serviço de Aplicativos.

  1. Entre em seu próprio portal do Azure.

    Localize seu aplicativo implantado no portal do Azure. Você pode encontrar seu aplicativo navegando até a página serviços de aplicativo e selecionando a instância do Serviço de Aplicativo. Você também pode pesquisar a instância do Serviço de Aplicativo diretamente pelo nome na barra de pesquisa na parte superior. (Neste exemplo, a instância do Serviço de Aplicativo se chama GitHubBrowser123.)

    Uma captura de tela do Azure Search.

  2. Na página de configurações da instância do Serviço de Aplicativo, selecione Configuração à esquerda e escolha a guia Configurações Gerais .

  3. Na parte inferior da página, defina o recurso de Depuração Remota como Ativado e selecione o Visual Studio 2022 como a versão remota do Visual Studio.

    Uma captura de tela das configurações de depuração remota do Azure.

  4. Selecione Salvar na parte superior da página para persistir as alterações.

A sua instância do serviço de aplicativo agora dá suporte à depuração remota por meio do Visual Studio.

Definir configurações de depuração

  1. Crie seu aplicativo sem erros. Interrompa seu aplicativo se ele estiver em execução localmente.

    Observação

    Verifique se o estado do código local corresponde ao que foi implantado no Azure. Isso garante que os arquivos de símbolo local e o código-fonte se alinham com o aplicativo implantado.

  2. Selecione Opções de Depuração > no menu superior do Visual Studio. Verifique se Habilitar Apenas Meu código está desmarcado (conforme mostrado na ilustração a seguir) e selecione OK.

    Alterar essa configuração permite que o Visual Studio depure o código otimizado que foi implantado no Azure usando os arquivos de símbolo necessários da pasta do compartimento local. Os arquivos de símbolo são usados pelo depurador como uma ponte entre o código compilado e o código-fonte no Visual Studio. Arquivos de símbolo correspondentes são necessários para depuração remota.

    Uma captura de tela das configurações de depuração do Visual Studio.

    Uma captura de tela das configurações de depuração do Visual Studio.

Anexar o depurador ao App Service

  1. No menu principal na parte superior do Visual Studio, selecione > para abrir a caixa de diálogo correspondente. Usando essa janela, você pode se conectar e anexar a destinos diferentes. Nesse caso, você se conectará à instância do Serviço de Aplicativo criada na etapa anterior.

  2. Selecione o menu suspenso Tipo de Conexão e escolha a opção Microsoft Azure App Services.

  3. Selecione Localizar.. ao lado do campo Destino de Conexão para abrir uma caixa de diálogo que permite que você navegue por suas assinaturas do Azure e serviços de aplicativo.

    Se você ainda não tiver entrado com sua assinatura do Azure, selecione Localizar... e, em seguida, você pode entrar.

  4. Localize e selecione a instância do Serviço de Aplicativo que você criou na etapa anterior e escolha OK.

  5. O w3wp.exe processo deve aparecer na lista de processos disponíveis aos quais se conectar. w3wp.exe é o principal processo do Serviço de Aplicativo do Azure que hospeda o aplicativo implantado. Selecione o w3wp.exe processo e escolha Anexar na parte inferior direita.

    Uma captura de tela da anexação aos recursos de processo.

  6. Em um arquivo de aplicativo C#, como Index.cshtml.cs, defina um ponto de interrupção clicando na margem esquerda. Como alternativa, clique com o botão direito do mouse e escolha Inserir ponto de interrupção>Inserir ponto de interrupção.

  7. No aplicativo Web, navegue até o ponto de extremidade com o ponto de interrupção. Se você estiver anexado ao processo, mas não conseguir atingir o breakpoint, verifique se o perfil de publicação no Visual Studio está definido como uma configuração Debug em vez de uma configuração de Release.

  8. Opcional: para verificar se o Visual Studio carregou os arquivos de símbolo para sua sessão de depuração. Navegue até Depurar > Módulos do Windows > para abrir a janela de módulos. Essa janela indica que os arquivos de símbolo foram carregados com êxito após as alterações de configuração do Just My Code que você fez anteriormente.

    Uma captura de tela da janela de arquivos de símbolo.

Observação

Para a depuração subsequente do serviço de aplicativo, selecione Depurar>Reanexar ao w3wp.exe ou use as teclas de acesso Shift+Alt+P.