Recursos do IntelliTrace (C#, Visual Basic, C++)

Você pode usar o IntelliTrace para registrar eventos e chamadas de método em seu aplicativo, o que permitirá examinar o estado (pilha de chamadas e valores de variável local) do aplicativo em diferentes pontos na execução. Basta iniciar a depuração como de costume; o IntelliTrace está ativado por padrão e você pode ver as informações que o IntelliTrace está registrando na nova janela Ferramentas de Diagnóstico na guia Eventos. Selecione um evento e clique em Ativar Depuração Histórica para ver a pilha de chamadas e os locais registrados para esse evento.

Para obter uma descrição passo a passo, consulte passo a passo: Usando o IntelliTrace.

O IntelliTrace está disponível na edição Visual Studio Enterprise, mas não nas edições Visual Studio Professional ou Community.

Para confirmar se o IntelliTrace está ativado, abra a página Ferramentas > Opções > IntelliTrace. A opção Habilitar o IntelliTrace deverá estar marcada por padrão.

Observação

O escopo de todas as configurações na página de opções do IntelliTrace é o Visual Studio como um todo, não projetos ou soluções individuais. Uma alteração nessas configurações se aplicará a todas as instâncias do Visual Studio, a todas as sessões de depuração e a todos os projetos ou soluções.

Escolher os eventos que o IntelliTrace registra (C#, Visual Basic)

Você pode ativar ou desativar o registro de eventos específicos do IntelliTrace.

Se você estiver depurando, pare a depuração. Acesse Ferramentas > Opções > IntelliTrace > Eventos do IntelliTrace. Escolha os eventos que você deseja que o IntelliTrace registre.

Coletar instantâneos (C#, Visual Basic, C++)

Esse recurso não está habilitado por padrão, mas o IntelliTrace pode capturar instantâneos do seu aplicativo em cada ponto de interrupção e evento de etapa do depurador, e você pode ver esses instantâneos em uma sessão de depuração histórica. Um instantâneo fornece uma visão total do estado do aplicativo. Para habilitar a captura de instantâneos, acesse Ferramentas > Opções > IntelliTrace > Geral e selecione Instantâneos do IntelliTrace (gerenciados e nativos). Para saber mais, confira Inspecionar estados anteriores do aplicativo usando o IntelliTrace.

Os instantâneos estão disponíveis no Visual Studio Enterprise 2017 versão 15.5 e posteriores e requerem a Atualização de Aniversário do Windows 10 ou superior. Para aplicativos .NET Core e ASP.NET Core, é necessário o Visual Studio Enterprise 2017 versão 15.7. Para aplicativos nativos destinados ao Windows, é necessário o Visual Studio Enterprise 2017 versão 15.9 Preview 2.

Coletar eventos do IntelliTrace e informações de chamada (C#, Visual Basic)

Esse recurso não está habilitado por padrão, mas o IntelliTrace pode registrar chamadas de método junto com eventos. Para habilitar a coleta de chamadas de método, acesse Ferramentas > Opções > IntelliTrace > Geral e selecione Eventos do IntelliTrace e informações de chamada (somente gerenciadas).

No momento, as informações de chamada não estão disponíveis para aplicativos .NET Core e ASP.NET Core.

Isso permite que você veja o histórico da pilha de chamadas e retroceda ou avance nas chamadas do código. O IntelliTrace registra dados como nomes de método, pontos de entrada e saída de método e determinados valores de parâmetro e valores retornados.

Dica

Essa opção não está habilitada por padrão porque adiciona uma sobrecarga considerável. O IntelliTrace não só precisa interceptar todas as chamadas de método que seu aplicativo faz, mas também precisa lidar com um conjunto muito maior de dados quando se trata de mostrá-los na tela ou mantê-los em disco.

Você pode reduzir a sobrecarga no desempenho restringindo a lista de eventos que o IntelliTrace registra e mantendo o número de módulos que você está coletando ao mínimo. Para obter mais informações, consulte Controlar a quantidade de informações de chamada que o IntelliTrace registra.

Usar a medianiz de navegação

Você pode usar a medianiz de navegação que aparece à esquerda da janela de código. Se você não vir a medianiz de navegação, acesse Ferramentas > Opções > IntelliTrace > Avançado e selecione Exibir a medianiz de navegação enquanto estiver no modo de depuração.

A medianiz de navegação permite que você se mova para frente e para trás nas chamadas de método e eventos no modo de depuração histórica. Para obter mais informações sobre a depuração histórica, confira Depuração histórica. Ela tem vários comandos:

Comando Descrição
Definir o contexto do depurador aqui Defina o contexto de depuração para o período de chamada onde ele aparece.

Esse ícone aparece apenas na pilha de chamadas atual.
Voltar para o site de chamada Mova o ponteiro e o contexto de depuração para trás, no momento em que a função atual foi chamada.

Se você estiver no modo de Depuração Dinâmica, esse comando ativará a Depuração Histórica. Se você navegar de volta para a interrupção de execução original, a Depuração Histórica será desativada e a Depuração Dinâmica seá ativada.
Ir para chamada anterior ou para evento do IntelliTrace Mova o ponteiro e o contexto de depuração para trás, até a chamada ou o evento anterior.

Se você estiver no modo de Depuração Dinâmica, esse comando ativará a Depuração Histórica.
Entrar Intervir na função selecionada no momento.

Esse comando só estará disponível quando você estiver no modo de Depuração Histórica.
Ir para próxima chamada ou para evento do IntelliTrace Mova o ponteiro e contexto de depuração até a próxima chamada ou evento para o qual existam dados do IntelliTrace.

Esse comando só estará disponível quando você estiver no modo de Depuração Histórica.
Ir para o modo ao vivo Retornar ao modo de Depuração Dinâmica.

Pesquisar uma linha ou um método no IntelliTrace

Você só pode pesquisar métodos quando as informações de chamada do método tiverem sido habilitadas. Você pode pesquisar uma linha ou um método específico no histórico do IntelliTrace. Enquanto a execução do depurador estiver interrompida, clique com o botão direito do mouse dentro do corpo da função para ver o menu de contexto e clique em Pesquisar Esta Linha no IntelliTrace ou Pesquisar Este Método no IntelliTrace.

Controlar a quantidade de informações gravadas pelo IntelliTrace

Por padrão, o IntelliTrace registra informações de todos os módulos usados por sua solução. Você pode configurar o IntelliTrace para registrar informações de chamada somente dos módulos de seu interesse. Em Ferramentas > Opções > IntelliTrace > Módulos, você pode especificar os módulos a serem incluídos ou os módulos a serem excluídos do IntelliTrace. O IntelliTrace coletará apenas os eventos originados nos módulos especificados e as chamadas de método que ocorreram nos módulos nos quais você está interessado.

Para adicionar vários módulos, use o caractere curinga * no início ou no final da cadeia de caracteres. Para nomes de módulos, use nomes de arquivos, e não nomes de assembly. Caminhos de arquivo não são aceitos.

Tente manter o número de módulos no mínimo. Você obterá melhor desempenho porque haverá menos dados a serem coletados. Você também recebe menos ruído na interface do usuário porque haverá menos dados para percorrer.

Salvar dados do IntelliTrace em um arquivo (C#, Visual Basic, C++)

Você pode salvar os dados que o IntelliTrace coletou acessando Depurar > IntelliTrace > Salvar Sessão do IntelliTrace enquanto você estiver depurando e o aplicativo estiver em um estado de interrupção. O item de menu está desabilitado e você não poderá salvar os dados que o IntelliTrace coletou se o aplicativo ainda estiver em execução ou se você tiver parado a depuração.

Você pode configurar o IntelliTrace para salvar automaticamente em um arquivo acessando Ferramentas > Opções > IntelliTrace > Avançado e selecionando Armazenar registros do IntelliTrace neste diretório. Você também pode configurar um tamanho definido para o arquivo gerado, fazendo com que o IntelliTrace grave sobre dados mais antigos quando ficar sem espaço. O Visual Studio cria dois arquivos para cada sessão do IntelliTrace quando eles são salvos automaticamente e o processo de hospedagem do Visual Studio (vshost.exe) está ativado.

Dica

Para economizar espaço em disco, desative o salvamento automático de arquivos quando eles não forem mais necessários. Os arquivos existentes não serão excluídos. Você sempre pode salvar no arquivo sob demanda no menu de contexto.

Ao salvar dados do IntelliTrace no arquivo, você obtém um arquivo .itrace para cada processo do qual o IntelliTrace coletou. Em seguida, você pode abrir o arquivo .itrace no Visual Studio acessando Arquivo > Abrir > Arquivo e selecionando o arquivo .itrace na caixa de diálogo Abrir Arquivo. Para obter mais informações, confira Usar dados salvos do IntelliTrace.

Blogs

IntelliTrace no Visual Studio Enterprise 2015

O IntelliTrace no Visual Studio Enterprise 2015 agora dá suporte à anexação!

Coletar dados de um serviço Windows usando o Coletor Autônomo do IntelliTrace

Editar o plano de coleta do IntelliTrace

TraceSource personalizado e depuração usando o IntelliTrace

Fóruns

Depurador do Visual Studio