Compartilhar via


Exemplo 14: iniciando uma sessão de rastreamento com vários provedores

O comando a seguir inicia uma sessão de rastreamento com dois provedores de rastreamento:

tracelog -start MyTraces -guid 2guids.guid -f mytraces.etl

O comando se parece com um comando tracelog -start padrão, mas o arquivo especificado pelo parâmetro -guid , 2guids.guid, contém dois GUIDs de provedor (um em cada linha), como no exemplo a seguir:

1540ff4c-3fd7-4bba-9938-1d1bf31573a7
dab01d4d-2d48-477d-b1c3-daad0ce6f06b

Quando você envia esse comando, o Tracelog inicia uma única sessão de rastreamento com dois provedores e habilita ambos os provedores.

Os provedores compartilham os buffers de rastreamento e o arquivo de log de rastreamento de eventos (.etl). As mensagens de rastreamento de cada provedor são intercaladas no log de rastreamento. Todos os sinalizadores e níveis especificados no comando são aplicados a todos os provedores na sessão de rastreamento.

Para verificar se ambos os provedores de rastreamento foram habilitados, use um comando tracelog -enumguid , conforme mostrado no comando a seguir.

tracelog -enumguid

Em resposta, o Tracelog exibe a lista de provedores registrados com ETW e mostra que dois deles estão habilitados. Os provedores habilitados são mostrados em negrito.

c:\Tracelog>tracelog -enumguid
##     Guid                       Enabled  LoggerId Level Flags
------------------------------------------------------------
1046d4b1-fce5-48bc-8def-fd33196af19a     FALSE  0    0    0
4a8aaa94-cfc4-46a7-8e4e-17bc45608f0a     FALSE  0    0    0
196e57d9-49c0-4b3b-ac3a-a8a93ada1938     FALSE  0    0    0
1540ff4c-3fd7-4bba-9938-1d1bf31573a7      TRUE  2    0    0
f12b1984-4c42-11d3-ab7b-00c04f68fcdc     FALSE  0    0    0
1fbecc45-c060-4e7c-8a0e-0dbd6116181b     FALSE  0    0    0
94a984ef-f525-4bf1-be3c-ef374056a592     FALSE  0    0    0
3121cf5d-c5e6-4f37-be86-57083590c333     FALSE  0    0    0
fc4b0d39-e8be-4a83-a32f-c0c7c4f61ee4     FALSE  0    0    0
fc570986-5967-4641-a6f9-05291bce66c5     FALSE  0    0    0
39a7b5e0-be85-47fc-b9f5-593a659abac1     FALSE  0    0    0
dab01d4d-2d48-477d-b1c3-daad0ce6f06b      TRUE  2    0    0k
bca7bd7f-b0bf-4051-99f4-03cfe79664c1     FALSE  0    0    0
d58c126f-b309-11d1-969e-0000f875a5bc     FALSE  0    0    0
d58c126e-b309-11d1-969e-0000f875a5bc     FALSE  0    0    0
58db8e03-0537-45cb-b29b-597f6cbebbfe     FALSE  0    0    0
27246e9d-b4df-4f20-b969-736fa49ff6ff     FALSE  0    0    0

Para especificar diferentes sinalizadores e níveis para cada provedor de rastreamento na sessão, use um comando tracelog -enable separado para cada provedor, conforme mostrado no comando a seguir.

tracelog -enable MyTraces -guid #1540ff4c-3fd7-4bba-9938-1d1bf31573a7 -flag 2 -level 1
tracelog -enable MyTraces -guid #dab01d4d-2d48-477d-b1c3-daad0ce6f06b -flag 3 -level ffff