dotTrace 2024.1 Help

Profile MAUI Application

MAUI applications are cross-platform solutions built using the .NET Multi-platform App UI (MAUI) framework, designed to enable developers to create applications for Android, iOS, Windows, and macOS using a single shared codebase.

Currently, dotTrace supports:

  • macOS – Mac Catalyst applications targeting .NET 7.0+. Timeline profiling only.

  • Windows – WinUI applications targeting .NET 7.0+. All profiling types are supported. Attaching to already running applications is available only for the Timeline and Sampling types.

  1. Run dotTrace as a standalone application. The dotTrace Home window will open.

  2. Add a run configuration – the configuration that tells dotTrace how to run the profiled application:

    1. Under Choose what you want to profile, New Process Run, click Add run configuration Add run configuration.

    2. In the New Run Configuration wizard, choose MAUI and click Next.

    3. Specify application options:

      • In Packages, choose the application you want to profile. If the application you're looking for is missing, click Refresh to update the list.

      • In Set environment variables specify the required environment variables. Each variable must be specified on a new line.

      • Path to the application bundle (.app).

      • Command-line Arguments for the application (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.

    4. Click Save.

  3. Make sure the created run configuration is selected in the New Process Run list.

  4. 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.

  5. If you want dotTrace to start collecting profiling data right after you start the session, under Run profiling, select Collect profiling data from start.

  6. Click Start. This will start the profiling session.

  7. 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

  8. After you collect the data, either close the profiled application or detach the profiler using the Detach button in the controller window.

  9. Analyze the collected snapshots using dotTrace Viewer.

Last modified: 10 April 2024