Compartilhar via


Sessão de Rastreamento

Uma sessão de rastreamento é um período durante o qual um provedor de rastreamento está gerando mensagens de rastreamento. O sistema mantém um conjunto de buffers para a sessão de rastreamento armazenar mensagens de rastreamento até que elas sejam entregues ("liberados") a um log de rastreamento ou a um consumidor de rastreamento.

Há três tipos básicos de sessões de rastreamento: sessões de log de rastreamento, sessões de rastreamento em tempo real e sessões de rastreamento em buffer. Uma única sessão de rastreamento pode ser uma sessão de log de rastreamento, uma sessão de rastreamento em tempo real ou ambas. As sessões de rastreamento em buffer são exclusivas.

Além disso, há sessões de rastreamento privado e sessões de rastreamento reservadas, como a sessão de rastreamento do Agente do Kernel NT e a sessão de rastreamento do Agente Global, que podem ser executadas como sessões de log ou sessões em tempo real. Você pode usar as ferramentas padrão para controlar essas sessões e exibir as mensagens de rastreamento resultantes.

Sessões de log de rastreamento

Em uma sessão de log de rastreamento, as mensagens de rastreamento são gravadas dos buffers de rastreamento em um arquivo de log em formato binário. Esse é o tipo padrão padrão de sessão de rastreamento.

Sessões de rastreamento em tempo real

Em uma sessão de rastreamento em tempo real, as mensagens de rastreamento são entregues diretamente a um consumidor de rastreamento, como TraceView ou Tracefmt, em vez de ou, além de, serem enviadas para um arquivo de log.

Sessões de rastreamento em buffer

Em uma sessão de rastreamento em buffer, as mensagens de rastreamento permanecem no buffer de rastreamento; eles não são gravados em um log de rastreamento ou entregues a um consumidor de rastreamento. O buffer é mantido como um arquivo circular. Quando estiver cheio, as mensagens de rastreamento mais recentes substituirão as mensagens de rastreamento mais antigas no buffer.

As sessões de rastreamento em buffer têm suporte apenas no Windows Vista e em versões posteriores do Windows.

Embora o rastreamento de software, em geral, cause muito pouca sobrecarga, as sessões de rastreamento em buffer têm a menor sobrecarga de todos os tipos de sessão de rastreamento. Você pode rastrear por longos períodos de tempo e, se algo interessante ocorrer, poderá usar um depurador para examinar o conteúdo do buffer atual ou salvar o conteúdo do buffer atual em um log de rastreamento.

Para ver as mensagens de rastreamento em um buffer de rastreamento, use a extensão do depurador especializado !wmitrace . Para obter informações sobre essa extensão, consulte Ferramentas de depuração para Windows.

Para liberar o conteúdo do buffer para um log de rastreamento, use o parâmetro -f do comando tracelog -flush .

Para iniciar uma sessão de rastreamento em buffer, use o parâmetro -buffering do comando tracelog -start . Para obter mais informações, consulte Sintaxe de comando tracelog.

Sessões de rastreamento privado

Uma sessão de rastreamento privado é uma sessão de rastreamento que é executada no modo de usuário como parte do processo de modo de usuário que ele rastreia. (Sessões de rastreamento padrão são executadas no kernel.) As sessões de rastreamento privado também são conhecidas como sessões de rastreamento no modo de usuário ou sessões de rastreamento de processo.

Você pode executar mais de uma sessão de rastreamento privado por vez, mas pode executar apenas uma sessão de rastreamento privado em cada processo.

Não é possível executar o rastreamento em tempo real de uma sessão de rastreamento privado. As mensagens de rastreamento devem ser gravadas em um log.

Os buffers usados em sessões de rastreamento privado são sempre pagináveis. Não é possível especificar memória paginada ou nãopagada para esses buffers.

Não é possível enviar as mensagens de rastreamento de uma sessão de rastreamento privado para o depurador. A Extensão de Rastreamento WMI (!wmitrace) não dá suporte a sessões de rastreamento privado.

Para obter mais informações sobre sessões de rastreamento de eventos privados, consulte a documentação do SDK do Microsoft Windows.