Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Você pode capturar e exibir dados do TraceLoggging usando as versões internas mais recentes do WPT (Ferramentas de Desempenho do Windows). Antes de publicar sua instrumentação, você deve testar o código do provedor TraceLogging para garantir que os dados do evento sejam gerados e estejam produzindo dados significativos nos momentos apropriados.
O processo de verificação de que a instrumentação está correta, envolve estas duas etapas:
- Capture o traço com o Gravador de Desempenho do Windows (wpr.exe ou wprui.exe).
- Exiba o rastreamento com o Analisador de Desempenho do Windows (wpa.exe).
Observação Para o Windows Phone, você também pode usar Tracelog.exe e Xperf.exe para capturar rastreamento. Veja "Capturar um rastreio no telefone (usando Tracelog e XPerf)" abaixo.
Pré-requisitos
As ferramentas WPR e WPA devem ser compatíveis com a versão do TraceLogging contra a qual você está vinculado. Se você não conseguir capturar ou decodificar seus eventos, pode ser porque as ferramentas não correspondem e não são compatíveis.
Para capturar dados de rastreamento com WPR
Crie ou edite um perfil WPR (.wprp) para seu TraceLoggingProvider.
Você pode usar o exemplo a seguir. Salve o conteúdo em um arquivo com a extensão de nome de arquivo .wprp. Substitua as seções TODO pelos valores apropriados para seu provedor. Por exemplo, se você registrou seu provedor por GUID, especifique o GUID neste arquivo.
Observação Para provedores de modo kernel, adicione NonPagedMemory="true" ao elemento EventProvider Id, consulte o comentário no exemplo XML a seguir.
Exemplo de arquivo WPRP:
<?xml version="1.0" encoding="utf-8"?>
<!-- TODO:
1. Find and replace "WorkshopTraceLoggingProvider" with your component name.
2. See TODO below to update GUID for your event provider
-->
<WindowsPerformanceRecorder Version="1.0" Author="Microsoft Corporation"
Copyright="Microsoft Corporation" Company="Microsoft Corporation">
<Profiles>
<EventCollector Id="EventCollector_WorkshopTraceLoggingProvider"
Name="WorkshopTraceLoggingProviderCollector">
<BufferSize Value="64" />
<Buffers Value="4" />
</EventCollector>
<!-- TODO:
1. Update Name attribute in EventProvider xml element with your provider GUID,
or if you specify an EventSource C# provider or call TraceLoggingRegister(...)
without a GUID, use star(*) before your provider name,
eg: Name="*MyEventSourceProvider" which will enable your provider appropriately.
2. This sample lists more than 1 EventProvider xml element and references them again
in a Profile with EventProviderId xml element. For your component wprp, enable
the required number of providers and fix the Profile xml element appropriately
-->
<EventProvider Id="EventProvider_WorkshopTraceLoggingProvider"
Name="f9bc6c5d-4b98-43b5-90a1-1d0c8f45bf5a" />
<!-- For Kernel Mode providers, add NonPagedMemory="true" attribute to the
EventProvider Id element:
Example:
<EventProvider Id="EventProvider_UMDFReflector"
Name="263dd596-513b-4fd9-969c-022b691bb130" NonPagedMemory="true"/>
-->
<Profile Id="WorkshopTraceLoggingProvider.Verbose.File"
Name="WorkshopTraceLoggingProvider" Description="WorkshopTraceLoggingProvider"
LoggingMode="File" DetailLevel="Verbose">
<Collectors>
<EventCollectorId Value="EventCollector_WorkshopTraceLoggingProvider">
<EventProviders>
<!-- TODO:
1. Fix your EventProviderId with Value same as the Id attribute on EventProvider
xml element above
-->
<EventProviderId Value="EventProvider_WorkshopTraceLoggingProvider" />
</EventProviders>
</EventCollectorId>
</Collectors>
</Profile>
<Profile Id="WorkshopTraceLoggingProvider.Light.File"
Name="WorkshopTraceLoggingProvider"
Description="WorkshopTraceLoggingProvider"
Base="WorkshopTraceLoggingProvider.Verbose.File"
LoggingMode="File"
DetailLevel="Light" />
<Profile Id="WorkshopTraceLoggingProvider.Verbose.Memory"
Name="WorkshopTraceLoggingProvider"
Description="WorkshopTraceLoggingProvider"
Base="WorkshopTraceLoggingProvider.Verbose.File"
LoggingMode="Memory"
DetailLevel="Verbose" />
<Profile Id="WorkshopTraceLoggingProvider.Light.Memory"
Name="WorkshopTraceLoggingProvider"
Description="WorkshopTraceLoggingProvider"
Base="WorkshopTraceLoggingProvider.Verbose.File"
LoggingMode="Memory"
DetailLevel="Light" />
</Profiles>
</WindowsPerformanceRecorder>
Para provedores de modo kernel, você precisa adicionar o atributo NonPagedMemory="true" ao elemento EventProvider Id.
<EventProvider Id="EventProvider_myTraceLoggingProviderKM" Name="263dd596-513b-4fd9-969c-022b691bb130" NonPagedMemory="true"/>Salve o arquivo com a extensão de nome de arquivo (. WPRP).
Inicie a captura usando o WPR a partir de uma janela do Prompt de Comando.
<path to wpr>\wpr.exe -start GeneralProfile -start yourTraceLoggingProvider.wprpO GeneralProfile capturará eventos do sistema. Para depuração geral, é uma boa ideia capturar eventos do sistema junto com os eventos do seu provedor.
Execute o cenário de teste (carregue e descarregue o driver ou componente para acionar eventos).
Pare a captura de rastreamento e mescle todas as gravações.
<path to wpr>\wpr.exe -stop GeneralProfile -stop yourTraceCaptureFile.etl description
Você também pode usar a interface do usuário do Gravador de Desempenho do Windows (Wprui.exe) para coletar dados de rastreamento.
<path to wpr>\wprui.exe
- Na janela WPR, se as opções estiverem ocultas, clique em Mais Opções.
- Clique em Adicionar perfil e navegue até o local do seu arquivo .wprp.
- Selecione o arquivo .wprp e clique em Abrir. O WPR validará o esquema XML do seu perfil.
- Clique em Iniciar e execute o cenário de teste.
- Clique em Salvar para mesclar os resultados e salvá-los em um arquivo. Se você usar a interface de usuário WPR, você também terá a opção de abrir o arquivo de log .etl no WPA.
Para capturar um rastreio no telemóvel (usando Tracelog e XPerf)
Inicie o registo de rastreio do seu provedor.
cmdd tracelog '-start test -f c:\test.etl -guid #providerguid'Execute seus cenários de teste para registrar eventos.
Pare a captura de traços.
cmdd tracelog '-stop test'Fundir resultados de rastreio.
cmdd xperf -merge c:\test.etl c:\testmerged.etlRecupere o arquivo de log mesclado.
getd c:\testmerged.etl
Exibir dados do TraceLogging usando WPA
Atualmente, WPA é o único visualizador que você pode usar para visualizar os arquivos etl que o TraceLogging produz.
Inicie o protocolo WPA.
<path to wpr>\wpa.exeCarregue o arquivo de rastreamento (.etl).
Veja os eventos do seu fornecedor. No Graph Explorer, expanda Atividade do sistema.
Clique duas vezes em Eventos Genéricos para visualizá-los no modo de exibição Análise.
Na visualização Análise, localize os eventos do seu provedor para verificar se o log está funcionando.
Na coluna Nome do Provedor da tabela Eventos Genéricos, localize e selecione a linha com o nome do provedor.
Você pode clicar no cabeçalho da coluna para classificar por nome de coluna, o que pode facilitar a localização do seu provedor. Quando encontrar o seu fornecedor, clique com o botão direito do rato no nome e selecione Filtrar para Seleção.