The Microsoft Performance Toolkit SDK allows developers to create "SDK plugins" that process and interpret data. These plugins can be used by performance analysis applications that use the SDK runtime - such as Windows Performance Analyzer - to process data sources into structured, tabular data. Plugins may use the SDK's data-processing pipeline to both facilitate the creation of these tables and expose data that can be programmatically accessed by concurrently loaded plugins (even those without access to the originating plugin's source code).
This folder contains instructions for developing SDK plugins and utilizing the SDK's various features.
Refer to Creating your first plugin to jump in quickly.
⚠️ Note: We recommend following the Recommended Reading Order.
For quick definitions/examples of terms and concepts, refer to the Glossary.
The following are required in order to develop an SDK plugin:
- NuGet
- .NET Standard 2.0 or a compatible version
- A text editor (for editing your source code)
It is recommended to use Visual Studio to develop an SDK plugin since it satisfies all three requirements. Future documentation assumes the use of Visual Studio, but the instructions may be adapted for other editors/IDEs.
The SDK is published as a NuGet package under the name Microsoft.Performance.SDK.
Since it is hosted on NuGet.org, it can be added to a csproj
with no additional configuration by using
the Visual Studio NuGet Package Manager, dotnet.exe
, or nuget.exe
.
To best understand how the SDK works and how to develop SDK plugins, it is recommended to read documentation in the following order:
- Architecture/Overview to understand at a high level the various systems the SDK provides
- Architecture/The Data-Processing Pipeline to understand how to systematically process data that can be used by tables
- Creating your first plugin to learn how to create an SDK plugin