Event Tracing for Windows IoT Core
Event Tracing for Windows (ETW) provides developers the ability to start and stop event tracing sessions, instrument an application to provide trace events, and consume trace events. ETW on Windows IoT Core devices supports both manifest-based and classic events, and is no different than other Windows 10 devices.
This section will provide useful links on the basics of writing and consuming events. Find more detailed information from the Windows Event Tracing page.
Find a UWP sample that implements the different methods of writing events as part of the Windows Universal Samples Github. This will run on Windows IoT Core devices and is also a great code reference.
Detailed guide on writing events and obtaining GUIDs can be found here.
Use Tools in Windows Assessment and Deployment Kit
Windows Assessment and Deployment Kit includes 3 tools to help capture and analyze events. Click here to download
Windows Performance Analyzer visualizes ETL files on desktop, with a step by step guide here.
Xperf command line tool captures real-time events and writes them to an ETL file. This tool is already installed on Windows IoT Core devices, just run the following commands on the devices:
// Start capturing events from specific GUID and save them to an ETL file xperf -start <Session Name> -f <ETL File> -on <GUID> // Stop capturing events with the specified session name xperf -stop <Session Name>
Tracerpt command line tool converts ETL files into xml files.
// Generate dumpfile.xml from ETL file tracerpt <ETL File>
Use Device Portal
Device portal can capture events in real-time, with instructions here.
This method does not produce an ETL file for further analysis, but requires minimal setup.
Use Function Calls
Enable an application to consume events from an ETL file or in real-time using function calls. Learn how to use these functions here.