Condividi tramite


Traccia eventi per Windows semplificato

Questo articolo descrive l'analisi degli eventi semplificata per Windows (ETW).

Numero KB originale: 2593157

Riepilogo

Event Tracing for Windows (ETW) serve allo scopo di fornire la registrazione a livello di componente. Come indicato nell'articolo Informazioni su Event Tracing, ETW fornisce:

Meccanismo di traccia per gli eventi generati da applicazioni in modalità utente e driver di dispositivo in modalità kernel. Inoltre, ETW offre la possibilità di abilitare e disabilitare la registrazione in modo dinamico, semplificando l'esecuzione di traccia dettagliata negli ambienti di produzione senza richiedere riavvii o riavvii dell'applicazione. Ciò consente alle applicazioni server su larga scala di scrivere eventi con disturbo minimo.

Panoramica rapida: un provider di eventi scrive eventi in una sessione ETW (può essere qualsiasi applicazione in modalità utente, applicazione gestita, driver e così via). Quando vengono scritti eventi, ETW aggiunge altre informazioni sull'ora in cui si è verificato, il processo e l'ID del thread che lo hanno generato, il numero del processore e i dati di utilizzo della CPU del thread di registrazione. Queste informazioni vengono usate dai consumer di eventi. L'applicazione che legge i file di log o ascolta una sessione per eventi in tempo reale ed elabora tali file.

Output di esempio del comando provider di query logman:

GUID del provider

.NET Common Language Runtime {E13C0D23-CCBC-4E12-931B-D9CC2EEE27E4}
Provider di traccia driver ACPI {DAB01D4D-2D48-477D-B1C3-DAAD0CE6F06B}
Dominio di Active Directory Services: SAM {8E598056-8993-11D2-819E-0000F875A064}
Active Directory: Client Kerberos {BBA3ADD2-C229-4CDB-AE2B-57EB6966B0C4}
Active Directory: NetLogon {F33959B4-DBEC-11D2-895B-00C04F79AB69}
Application-Addon-Event-Provider {A83FA99F-C356-4DED-9FD6-5A5EB8546D68}
eventi ASP.NET {AFF081FE-0247-4275-9C4E-021F3DC1DA35}
Provider di traccia driver porta ATA {D08BD885-501E-489A-BAC6-B7D24BFE6BBF}
Plug-in NetShell AuthFw {935F4AE6-845D-41C6-97FA-380DAD429B72}
Provider di traccia BFE {106B464A-8043-46B1-8CB8-E92A0CD7A560}
Traccia del servizio BITS {4A8AA94-CFC4-46A7-8E4E-17BC45608F0A}
Traccia client CredentialRoaming di Servizi certificati {EF4109DC-68FC-45AF-B329-CA2825437209}
Traccia client di Servizi certificati {F01B7774-7ED7-401E-8088-B576793D7841}
Provider di sessioni del kernel circolare {54DEA73A-ED1F-42A4-AF71-3E63D056F174}
Provider di traccia driver Classpnp {FA8DE7C4-ACDE-4443-9994-C4E2359A9EDB}
Provider di traccia sezione critica {3AC66736-CC59-4CFF-8115-8DF50E39816B}
Enumeratore attività dispositivo {0E9E7909-00AA-42CF-9502-2C490471E598}
Provider di traccia driver della classe disco {945186BF-3DD6-4F3F-9C8E-9EDD3FC9D558}
API IPsec di livello inferiore {94335EB3-79EA-44D5-8EA9-306F49B3A041}

Varie utilità sono disponibili nell'Area download Microsoft per analizzare i file con estensione etl, ad esempio Network Monitor v3.4. Tuttavia, lo script di esempio seguente non richiederebbe un'installazione di nessuno di questi.

Ulteriori informazioni

Lo script seguente genererà una traccia ETL; in questo esempio, dati per Provider - Microsoft-Windows-TerminalServices-RemoteConnectionManager.

@echo off
ECHO These commands will enable tracing:
@echo on
logman create trace admin_wmi -ow -o c:\admin_wmi.etl -p " Microsoft-Windows-TerminalServices-RemoteConnectionManager " 0xffffffffffffffff 0xff -nb 16 16 -bs 1024 -mode 0x2 -max 2048
logman start admin_wmi
@echo off
echo
ECHO Reproduce your issue and enter any key to stop tracing
@echo on
pause
logman stop admin_wmi
logman delete admin_wmi
@echo off
echo Tracing has been captured and saved successfully at c:\admin_wmi.etl

Salvare lo script indicato in precedenza come file batch (.bat) ed eseguirlo con privilegi elevati per generare il file con estensione etl.

Nota

Questo script può essere modificato per generare tracce per qualsiasi provider a seconda della necessità. È possibile ottenere il nome del provider dal comando provider di query logman, come indicato in precedenza. È possibile sostituire il campo evidenziato con qualsiasi provider di eventi e verrà generata una traccia specifica del problema entro pochi minuti.

Per analizzare la traccia con estensione etl risultante, usare l'utilità di tracerpt.exe predefinita per generare un file con estensione evtx che può essere usato per un'ulteriore interpretazione.

Un esempio di questo comando è:

tracerpt c:\admin_wmi.etl -o c:\admin_wmi.etl.evtx -of EVTX