Depurando um serviço de nuvem do Azure publicado com o Visual Studio e o IntelliTrace

Observação

Este artigo se aplica aos Serviços de Nuvem do Azure (clássico), que agora foram preteridos para novos clientes e serão desativados em 31 de agosto de 2024. Os serviços existentes criados com essa tecnologia ainda têm suporte por meio dos Serviços de Nuvem do Azure (suporte estendido). Para novos desenvolvimentos, é recomendável usar um tipo de serviço mais recente projetado para sua finalidade específica, como o Serviço de Aplicativo do Azure, o Azure Functions ou os Aplicativos de Contêiner do Azure. Para obter a lista mais recente de serviços disponíveis, confira Diretório de produtos do Azure.

Com o IntelliTrace, você pode registrar em log informações extensas de depuração sobre uma instância de função quando ela é executada no Azure. Se precisa encontrar a causa de um problema, você pode usar os logs do IntelliTrace para examinar seu código no Visual Studio como se ele estivesse em execução no Azure. Na verdade, o IntelliTrace registra dados de ambiente e a execução do código de chave quando seu aplicativo Azure está em execução como um serviço de nuvem no Azure, além de permitir que você reproduza os dados gravados usando o Visual Studio.

Você poderá usar o IntelliTrace se tiver o Visual Studio Enterprise instalado e seu aplicativo Azure se destinar ao .NET Framework 4 ou uma versão posterior. O IntelliTrace coleta informações sobre suas funções no Azure. As máquinas virtuais para essas funções sempre executam sistemas operacionais de 64 bits.

Como alternativa, é possível usar a depuração remota para anexação direta a um serviço de nuvem em execução no Azure.

Importante

O IntelliTrace destina-se apenas aos cenários de depuração e não deve ser usado para uma implantação de produção.

Pré-requisitos

Configurar o IntelliTrace em um aplicativo do Azure

Para habilitar o IntelliTrace para um aplicativo Azure, você deve criar e publicar o aplicativo de um projeto Azure do Visual Studio. É preciso configurar o IntelliTrace para o aplicativo Azure antes de publicá-lo no Azure. Se você publicar o aplicativo sem configurar o IntelliTrace, precisará republicar o projeto. Para obter mais informações, consulte Publicando projetos de Serviços de Nuvem do Azure usando o Visual Studio.

  1. Quando estiver pronto para implantar o aplicativo Azure, verifique se os destinos de compilação do projeto estão definidos como Depurar.

  2. No Gerenciador de Soluções, clique com o botão direito do mouse no projeto e, no menu de contexto, selecione Publicar.

  3. Na caixa de diálogo Publicar Aplicativo do Azure, selecione a assinatura do Azure e selecione Avançar.

  4. Na página Configurações, selecione a guia Configurações Avançadas.

  5. Ative a opção Habilitar IntelliTrace para coletar logs do IntelliTrace para o aplicativo quando ele for publicado na nuvem.

  6. Para personalizar a configuração básica do IntelliTrace, selecione Configurações ao lado de Habilitar IntelliTrace.

    Link de configurações do IntelliTrace

  7. Na caixa de diálogo Configurações do IntelliTrace, é possível especificar quais eventos são registrados, se as informações de chamada são coletadas, para quais módulos e processos os logs são coletados e quanto espaço é alocado para o registro. Para saber mais sobre o IntelliTrace, consulte Depurando com o IntelliTrace.

    Configurações do IntelliTrace

O log do IntelliTrace é um arquivo de log circular do tamanho máximo especificado nas configurações do IntelliTrace (o tamanho padrão é 250 MB). Os logs do IntelliTrace são coletados em um arquivo no sistema de arquivos da máquina virtual. Quando você solicita os logs, um instantâneo é feito nesse momento e baixado no computador local.

Depois que o serviço de nuvem do Azure for publicado no Azure, você poderá determinar se o IntelliTrace foi habilitado por meio do nó do Azure no Gerenciador de Servidores, conforme mostrado na seguinte imagem:

Gerenciador de Servidores – IntelliTrace habilitado

Baixar logs do IntelliTrace de uma instância de função

Com o Visual Studio, é possível baixar os logs do IntelliTrace de uma instância de função seguindo estas etapas:

  1. Em Gerenciador de Servidores, expanda o nó Serviços de Nuvem e localize a instância de função cujos logs você deseja baixar.

  2. Clique com o botão direito do mouse na instância de função e, no menu de contexto, selecione Exibir Logs do IntelliTrace.

    Opção de menu Exibir logs do IntelliTrace

  3. Os logs do IntelliTrace são baixados em um arquivo em um diretório no computador local. Toda vez que você solicita os logs do IntelliTrace, um novo instantâneo é criado. Durante o download dos logs, o Visual Studio exibe o andamento da operação na janela Log de Atividades do Azure. Como mostrado na figura a seguir, você pode expandir o item de linha da operação para ver mais detalhes.

VST_IntelliTraceDownloadProgress

É possível continuar trabalhando no Visual Studio enquanto os logs do IntelliTrace estão sendo baixados. Quando o download do log for concluído, ele será aberto no Visual Studio.

Observação

Os logs do IntelliTrace podem conter exceções que são geradas e tratadas posteriormente pela estrutura. O código interno da estrutura gera essas exceções como uma parte normal de iniciar uma função, de modo que você pode ignorá-las com segurança.