Profile .NET Core or .NET Application
Windows
Run dotTrace as a standalone application. The dotTrace Home window will open.
Add a run configuration – the configuration that tells dotTrace how to run the profiled application:
Under Choose what you want to profile, New Process Run, click Add run configuration.
In the New Run Configuration wizard, choose .NET and .NET Core and click Next.
Specify application options:
Path to the application executable (if it's a self-contained deployment) or to a library file (if it is a framework-dependent deployment).
Command-line Arguments for the executable (if required).
A full path to the application Working directory (by default, it's the same directory where the executable is located).
Set environment variables lets you run the profiled application with specific environment variables. Each variable must be specified on a new line.
Click Save.
Make sure the created run configuration is selected in the New Process Run list.
Under Choose how you want to profile it, specify profiling options:
Profiling Type: typically, you should choose between Sampling (evaluate performance and determine the slowest methods in your app) and Timeline (same as Sampling but with additional timeline data). Learn more about profiling types
Optionally, if your application creates a number of processes, and you want to profile only specific ones, configure process filters.
If required, specify other profiling options.
If you want dotTrace to start collecting profiling data right after you start the session, under Run profiling, select Collect profiling data from start.
Click Start. This will start the profiling session.
Go through a particular workflow in your application (if you want to evaluate its performance) or reproduce a particular performance issue. Collect snapshots using the Get Snapshot button in the profiling controller window. Learn more about how to control the profiling session
After you collect the data, either close the profiled application or detach the profiler using the Detach button in the controller window.
Analyze the collected snapshots using dotTrace Viewer.
To profile a .NET Core application
Download dotTrace command-line profiler.
To profile an application, run, for example:
dotTrace.exe start --save-to=C:\snapshots\snapshot.dtp C:\Projects\MyNetCoreApp\MyApp
Linux and macOS
Run dotTrace as a standalone application. The dotTrace Home window will open.
Add a run configuration – the configuration that tells dotTrace how to run the profiled application:
Under Choose what you want to profile, New Process Run, click Add run configuration.
In the New Run Configuration wizard, choose .NET and .NET Core and click Next.
Specify application options:
Path to the application executable (if it's a self-contained deployment) or to a library file (if it's a framework-dependent deployment).
Command-line Arguments for the executable (if required).
A full path to the application Working directory (by default, it is the same directory where the executable is located).
Set environment variables lets you run the profiled application with specific environment variables. Each variable must be specified on a new line.
If you profile a web application and want its URL to be opened once the profiling starts, select Open URL and specify the URL. The in browser parameter lets you select a browser for opening the URL.
Click Save.
Make sure the created run configuration is selected in the New Process Run list.
Under Choose how you want to profile it, specify profiling options:
Profiling Type: typically, you should choose between Sampling (evaluate performance and determine the slowest methods in your app) and Timeline (same as Sampling but with additional timeline data). Learn more about profiling types
Optionally, if your application creates a number of processes, and you want to profile only specific ones, configure process filters.
If required, specify other profiling options.
If you want dotTrace to start collecting profiling data right after you start the session, under Run profiling, select Collect profiling data from start.
Click Start. This will start the profiling session.
Go through a particular workflow in your application (if you want to evaluate its performance) or reproduce a particular performance issue. Collect snapshots using the Get Snapshot button in the profiling controller window. Learn more about how to control the profiling session
After you collect the data, either close the profiled application or detach the profiler using the Detach button in the controller window.
Analyze the collected snapshots using dotTrace Viewer.
Download dotTrace command-line profiler.
Depending on the .NET Core version used by the profiled application, run one of the following:
To profile a .NET Core 3.1 (or later) application MyApp:
./dotTrace.sh start --framework=NetCore --save-to=~/snapshots/snapshot.dtp ~/Projects/MyNetCoreApp/MyAppTo profile a .NET Core 3.0 (or earlier) application MyApp:
./dotTrace.sh start --framework=NetCore --save-to=~/snapshots/snapshot.dtp --support-earlier-net-core ~/Projects/MyNetCoreApp/MyApp