Compartilhar via


Depuração com IntelliTrace

Este tópico se aplica a Visual Studio 2010 Ultimate somente.

Depuração com IntelliTrace, disponível em Microsoft Visual Studio 2010 Ultimate, fornece uma imagem aprimorada do seu aplicativo em comparação com os depuradores tradicionais. Depuradores tradicionais mostram o estado do seu aplicativo no momento com informações limitadas sobre eventos que ocorreram no passado. Ou você deve interpretar os eventos que ocorreram no passado, com base no estado de seu aplicativo no momento ou reinicie o aplicativo para recriar eventos anteriores. Com IntelliTrace, você pode realmente ver os eventos que ocorreram no passado e o contexto em que eles ocorreram. Isso reduz o número de reinicializações necessárias para depurar seu aplicativo e a possibilidade de que um erro não conseguirão reproduzir ao executar o aplicativo novamente.

IntelliTrace estende e aprimora o Visual Studio live depuração experiência que você está acostumado. Você ainda tem acesso a todos os recursos de depurador Visual Studio que você está familiarizado. IntelliTrace opera de forma invisível no plano de fundo, a gravação de informações de depuração. Quando você quiser examinar novamente a um estado anterior do seu aplicativo, você pode entrar no modo de IntelliTrace. Nesse modo, você pode navegar para vários pontos no tempo em que foram registrados eventos de interesse.

Você também pode carregar e depurar um IntelliTrace o arquivo, que tem uma extensão de .itrace, criado por IntelliTrace ou Test Manager, arquivos de intellitrace permitem que você execute a depuração de post-crash com todo o poder do IntelliTrace.

Quando você usa as configurações padrão, o IntelliTrace tem um impacto mínimo no desempenho do aplicativo. Portanto, a IntelliTrace está ativado por padrão. Mesmo se você não pretende usar IntelliTrace quando você iniciou a sessão de depuração, informações de IntelliTrace são automaticamente coletadas e disponíveis quando necessário.

Depurar o código mais rápido

IntelliTrace pode economizar tempo diminuindo o ciclo de depuração. Por exemplo, suponha que você está depurando um aplicativo que lê um valor de registro durante a inicialização, mas a chave do registro não existe. O efeito do problema pode não ser notado até muito mais tarde na execução do seu aplicativo. Em seguida, você deve determinar por que o valor do registro não foi lida. A abordagem comum é reiniciar o aplicativo e coloque um ponto de interrupção perto o acesso ao registro. Executar novamente o aplicativo leva tempo. Com IntelliTrace, você pode evitar muitos tais reinicializações. Em vez de executar novamente o seu aplicativo, você pode começar a depuração com IntelliTrace, que permite a você olhar novamente todos os acessos de registro, escolha o que lhe interessa, e examinar o estado do seu aplicativo, quando ocorreu a que o acesso do registro. Você pode experimentar a economia de tempo semelhantes ao depurar outros problemas como, por exemplo, uma exceção ou erro de acesso do arquivo. Para obter mais informações, consulte Depurar o código mais rápido com IntelliTrace.

Depuração de erros não reproduzíveis

IntelliTrace permite a depuração de erros e travamentos que seriam não pode ser reproduzidos. Você pode depurar arquivos de log que foram criados por IntelliTrace ou por Test Manager. Um testador pode vincular um arquivo de log do Test Manager diretamente para um de Team Foundation Server trabalho item ou o bug, que pode ser atribuído a um desenvolvedor. Dessa forma, IntelliTrace e Test Manager integrar seu fluxo de trabalho de equipe.

Quando você depurar um arquivo de IntelliTrace, o processo é semelhante a um arquivo de despejo de depuração. No entanto, os arquivos de IntelliTrace fornecem muito mais informações que os arquivos de despejo tradicional. Um arquivo de despejo fornece um instantâneo do estado do aplicativo em um momento específico, normalmente apenas quando ele travou. Com IntelliTrace, é possível retroceder o histórico para ver o estado do aplicativo e eventos que ocorreram anteriormente na execução de aplicativo. Isso facilita a depuração de um log de arquivo mais rápido e mais fácil do que a depuração de um despejo de arquivo.

Para obter mais informações, consulte Depuração de erros não pode ser reproduzido com IntelliTrace.

Suporte a aplicativos e cenários de depuração

IntelliTrace oferece suporte a depuração de Visual Basic e C# aplicativos que usam.NET versão 2.0, 3.0, 3.5 ou 4. Você pode depurar a maioria dos aplicativos, incluindo os aplicativos foram criados usando ASP.NET, o Windows Forms, WPF, fluxo de trabalho do Windows e WCF. IntelliTrace não oferece suporte a depuração do C++, script ou outras linguagens. Há suporte para a depuração de aplicativos de F# em uma base experimental.

Com IntelliTrace, você pode depurar aplicativos iniciados a partir de arquivos de Visual Studio e IntelliTrace que foram criados por IntelliTrace ou Test Manager. Não é possível usar IntelliTrace com aplicativos iniciados fora do Visual Studio e depurado usando o Attach to comando. IntelliTrace não oferece suporte a depuração remota de aplicativos que são executados em outros computadores.

IntelliTrace oferece suporte à depuração de post-crash de aplicativos do SharePoint e aplicativos de 64 bits, por meio de rastreamento de depuração de arquivos de log criados por Test Manager. Ele não dá suporte a depuração de aplicativos SharePoint ou aplicativos de 64 bits iniciados a partir de Visual Studio.

IntelliTrace não oferece suporte a depuração do Silverlight, Xbox, ou Windows Mobile aplicativos.

Níveis de coleção

Quando IntelliTrace estiver habilitado, são coletadas informações automaticamente durante cada sessão de depuração. Essas informações IntelliTrace lhe permite alternar a depuração ao vivo a depuração com IntelliTrace quando você precisa. O tipo de informação coletada é determinado pelas opções que você pode definir o nível de Visual Studio. Essas opções de coleção se aplicam a todos os projetos e soluções. Eles persistem entre sessões de depuração e sessões de Visual Studio.

Por padrão, o IntelliTrace coleta informações selecionada eventos de IntelliTrace somente. Conforme mencionado anteriormente, a coleta dessas informações padrão tem um efeito mínimo sobre o desempenho em seu aplicativo.

Para obter mais potência de depuração, você pode optar por coletar um registro de chamadas, junto com seus parâmetros e retorna valores, além de eventos IntelliTrace. Essa capacidade de depuração adicional tem um custo de desempenho. Para obter mais informações sobre eventos de diagnóstico e opções de coleção, consulte Coletando informações de IntelliTrace.

Consulte também

Conceitos

Executar tarefas comuns de desenvolvimento

Outros recursos

Referência de API de extensibilidade de IntelliTrace