dotTrace 2020.1 Help

Controlling Profiling Session

After you configure profiling settings and run the session, the dotTrace Controller window opens*.

Controlling Profiling Session 1 png

To manually control the profiling session, use the buttons on the dotTrace Controller window:

  • Start: start collecting performance data. The button is shown in case the Collect profiling data from start checkbox was not selected in the profiling options.

  • Get Snapshot and Wait: generate a snapshot and stop collecting performance data.
    The alternative option (selected in the same drop down list) is:
    Get Snapshot and Start: generate a snapshot and continue collecting performance data.

  • Drop: discard collected data and stop collecting performance data.

  • Detach: detach dotTrace from the profiled process, but keep the process running. Not available when using the Tracing or Line-by-line profiling types. The snapshot is not taken.

  • Kill All: kill all profiled processes. The snapshot is not taken.

  • Stop Service: stop a service. This button is displayed only when a Windows service is being profiled.

IMPORTANT: dotTrace will automatically get a snapshot if you close the profiled application or the application successfully finishes working.

Profiling multi-process applications

If your standalone or .NET Core application runs more than one process, you can either take a snapshot of a particular process or take snapshots of all processes at once.

To get a snapshot of a particular process

  1. Start profiling with the enabled Profile child processes profiling option.

  2. In the Controller window, do one of the following:

    • Select the desired process from the list.

      1. Expand the dotTrace Controller window by clicking the Controlling Profiling Session 4 png button.

      2. Click the Processes tab.

      3. Double-click the desired process.

  3. Click Get Snapshot and Wait.

Controlling Profiling Session 2 png

The Processes page shows process names (the Process column), PID, and a number of snapshots taken for each process (the #Snapshots column). The currently selected process is shown in bold.

To get snapshots of all processes

  1. Start profiling with the enabled Profile child processes profiling option.

  2. In the Controller window, hold Ctrl and click Get Snapshot and Wait.

  3. After this, the snapshot of the main process will be opened in a viewer. Other snapshots will not be automatically opened, but will be available in the list of snapshots.

Viewing real-time application activity

To access additional functionality of the dotTrace Controller window, expand it by clicking the Controlling Profiling Session 4 png button.

The Realtime Data page provides an overview of application activity showing CPU activity and memory consumption graphs.

Controlling Profiling Session 3 png

Viewing profiling errors

The Errors page contains the list of errors that occur during profiling.

Last modified: 21 July 2020