- System requirements
- Profiler architecture
- Profiler installation
- Running the profiler
- Profiler activation
- Welcome screen
- Start profiling
- IDE integration
- Profile .NET executable
- Profile ASP.NET application in IIS
- Profile ASP.NET web app on Azure App Service on Linux
- Profile ASP.NET web app on Azure App Service on Windows
- Profile all .NET processes that will start
- Attach profiler to a running application
- Profile remote applications
- Profiling in Docker container
- Manually enable profiling of local applications
- Startup options
- Connect to profiled application
- Profiling overhead: how to reduce or avoid
- Solving performance problems
- CPU profiling
- Memory profiling
- Garbage collection
- Exception profiling
- Performance charts
- Probes: monitor higher level events
- Inspections: automatic recognition of typical problems
- Automatically trigger actions on event
- Automatic deobfuscation
- Summary, automatic deobfuscation
- Profiler command line
- Command line tool to control profiling
- Export of profiling results to external formats
- Profiler API
- Profiler HTTP API
There are multiple ways to profile a .NET application. Some may be more suitable than other, depending on the application type or the environment in which and how it is running.
Profiling in IDE
Profiler has seamless integration with Visual Studio and Rider. After installing the plugin, you will be able to profile applications directly from IDE.
Profiling a .NET executable
Start and profile .NET executable from the profiler UI.
Profile ASP.NET applications
Profile IIS application on Windows.
Profile ASP.NET web app on Linux on Azure App Service.
Profile ASP.NET web app on Windows on Azure App Service.
Profiling all .NET processes
On Windows, there is an option to profile all .NET processes. Use it for profiling of applications that start indirectly: services, spawned processes, etc.
Profiling a running application
Attach profiler to any .NET application, even if it is already running.
Profiling a remote application
Profiling can be done remotely when applications run on another computer.
Profiling in Docker
Follow these instructions on how to profile a .NET application running in Docker container.
Profiling .NET application from command line
If none of the above methods suit your needs, you can always manually enable profiling for any .NET application by setting environment variables.