Authoring Recording Profiles

You can author Windows Performance Recorder (WPR) recording profiles in an XML file that has a .wprp extension. Recording profiles contain all the necessary information to enable performance recording for a specific scenario. This data includes information about Event Tracing for Windows (ETW) sessions, providers, and keywords. Each .wprp file contains at least one profile definition, which consolidates a specific set of ETW sessions and providers. A profile definition also includes the session and provider attributes that start and control performance recording.

WPR profiles support the following ETW features:

  • Sequential file and circular memory logging modes.

  • User-specified number of buffers and buffer sizes for each session.

  • ETW system logger sessions together with the NT Kernel Logger. This merger includes the ability to specify keywords, stacks, and memory pool tags.

  • Event sessions that specify a provider name or GUID, keywords, stack, detail level, and non-paged memory.

  • Capturing state providers that capture state during start or save operations only.

The .wprp file must contain specific definitions that are listed in a specific order. The following topics describe how to author the definitions in that order.

Authoring .wprp files in Visual Studio

You can use Visual Studio to author a recording profile by using the WPR schema file, WPRControlProfiles.xsd, that is available in the WPT install folder:

  1. Open your .wprp file in Visual Studio.

  2. In the main menu, choose XML, and then choose Schemas…

  3. In the XML Schemas dialog that appears, choose Add…

  4. Choose the WPRControlProfiles.xsd schema. By default, this file is in the WPT install directory:

    • C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit

Once you have selected the schema, you can use context-sensitive IntelliSense to author your .wprp file.

In This Section

1. Collector Definitions

How to define collectors for a profile.

2. System and Event Provider Definitions

How to define providers for a profile.

3. Profile Definitions

How to define a profile.

Strict Providers

How to use the Strict attribute.


Describes inheritance in authoring recording profiles.

Recording Profiles

Author a Custom Recording Profile

Add or Remove a Custom Recording Profile