このページでは、dotTrace の最新の更新と変更について詳しく説明します。
今回のリリースでは、dotTrace にタブ機能を導入しました。これにより、同じスナップショットを複数のタブで異なるフィルター設定で開くことができるようになりました。これにより、パフォーマンスデータのさまざまな側面を同時に分析できます。あるタブで 1 つのデータセットを分析しながら、別のタブで異なるフィルターを適用したり、フィルターをリセットすることなくビューを切り替えたりすることも可能です。
dotTrace のスタンドアロンバージョンでは、 元に戻すおよび やり直しアクションとフィルター履歴の包括的なサポートを導入しました。各フィルターの変更が記録されるようになったため、以前の状態に簡単に戻すことができます。最新の変更を元に戻すには 元に戻すボタンまたはホットキーを使用し、再適用するには やり直しボタンを使用します。ドロップダウンリストにアクセスして、複数の手順を一度に元に戻すこともできます。変更は時系列順にリストされます。
dotTrace のすべてのバージョンでは、 タイムラインスナップショットや 呼び出しツリーおよび ホットスポットビューのデータの処理速度の向上など、いくつかのパフォーマンスの改善が実現されています。
これで、MAUI フレームワークに基づいてアプリケーションをプロファイルできるようになりました。
現在、dotTrace は以下をサポートしています。
このサポートは、dotTrace スタンドアロンおよび Rider と ReSharper に統合された dotTrace で利用できます。
dotTrace にユーザーインターフェース (UI) プリセットが含まれるようになりました。プリセットは UI を調整し、特定のアプリケーション ( 一般 (すべてのアプリケーションタイプ)、Unity 開発者、Unreal Engine 開発者 ) に関連するプロファイリング設定のみを表示します。
macOS のプロファイリングを改善しました:
.app
) を指定できるようになりました。net7.0-macos
、net8.0-macos
、net7.0-maccatalyst
、net8.0-maccatalyst
、Xamarin.Mac
タイムラインプロファイリングセッションを構成するときに、次の詳細オプションを指定できるようになりました。
コールツリーを分析する代わりに、ソースコード内でパフォーマンスプロファイリングデータを直接表示できるようになりました。 ソースビューには、コードの特定の行の時間分布情報が表示されます。現時点では、この機能は Windows で作成されたタイムラインスナップショットでのみ利用できます。
System.Data.SqlClient
データプロバイダーをサポートするようになりました。SQL クエリフィルターで対応するイベントを表示できます。呼び出しツリービューでは、呼び出しスタックを個々のスレッドごとにグループ化できるため、スレッド固有のパフォーマンスの問題についてより深いインサイトが可能になります。
Linux および macOS 上の dotTrace のスタンドアロンバージョンでは、 ソースビューウィンドウが表示されます。 呼び出しツリーで呼び出しを選択すると、 ソースビューによって対応するメソッドのソースコードが表示されます。
dotTrace のスタンドアロンバージョンが、Linux および macOS で利用できるようになりました。これで、パフォーマンススナップショットの収集と分析を含む、これらのオペレーティングシステムでの完全なプロファイリングワークフローを実行できます。
これで、Windows の ARM64 CPU で dotTrace を使用できるようになりました。これは、スタンドアロンの dotTrace、Rider の dotTrace、Visual Studio の dotTrace、および dotTrace コマンドラインツールのすべてのバージョンに適用されます。
Linux の ARM32 CPU で dotTrace コマンドラインプロファイラーを実行できるようになりました。サポートされているフレームワークは、.NET Core 3.1 と .NET 5.0 – 7.0 です。タイムラインプロファイリングタイプは、.NET 6.0 アプリケーションでのみサポートされていることに注意してください。
このリリースの前は、サンプリング、トレース、行ごとのパフォーマンススナップショットを従来の パフォーマンスビューアーで開く必要がありましたが、タイムラインスナップショットは最新の タイムラインビューアーで開いていました。これは、ビューアーのユーザーインターフェースとスナップショット分析へのアプローチが異なるため、全体的なユーザーエクスペリエンスを悪化させました。
現在、dotTrace ビューアー (以前の タイムラインビューアー ) を優先して パフォーマンスビューアーを取り除きます。dotTrace はそれを使用して、すべてのタイプのスナップショットを開きます。ただし、必要に応じて、廃止された パフォーマンスビューアーを引き続き使用することができます。 パフォーマンスビューアーを使い続けることを選択した場合は、その理由をお聞かせください。あなたのフィードバックは大歓迎です !
dotTrace ビューアーはすべてのタイプのスナップショットを開くようになったため、パフォーマンススナップショットを比較する際にその強力な機能をすべて使用できます。
dotTrace は、Windows カーネル呼び出し (ntoskrnl.exe
)、デバイスドライバー呼び出し (*.sys
) などを含む、 タイムラインコールツリーのネイティブシステムコールの詳細を提供するようになりました。
プロファイリングプロセスを開始するために Unity エディターを再起動する必要がなくなりました。プロファイラーは、実行中の Unity プロセスにアタッチおよびデタッチできるようになりました。
dotTrace コマンドラインツールと Rider の dotTrace は、Alpine バージョン 3.13 – 3.15 をサポートするようになりました。次の CPU とフレームワークがサポートされています。
これで、dotTrace ホームメニューから dotnet-trace collect:
で収集された NetTrace ファイルを開き、 スナップショットを開くをクリックして、.nettrace ファイルを選択できます。
現在、dotTrace は、Windows (.NET Core、.NET 5+) 上の Microsoft.Data.SqlClient
プロバイダーからの SQL Server イベント、および macOS と Linux (.NET Core 3.0+、.NET 5+) をサポートしています。
キーボードの組み合わせのみを使用して、dotTrace ホームウィンドウを移動できるようになりました。マウスは必要ありません。各 UI エレメントは、キーまたはキーシーケンスに割り当てられます。割り当てられたキーを表示し、UI 要素を操作する方法は 2 つあります。
dotTrace ホーム | 設定で使用するものを選択できます。
これで、特別なアイコンをアプリケーションウィンドウにドラッグするだけで、プロファイラーをすでに実行中のアプリケーションにアタッチできます。
dotTrace コマンドラインツールは、Apple シリコンプロセッサーを搭載したコンピューターで動作するようになりました。これを使用して、.NET 6 アプリケーション(ネイティブモード)および .NET 5 アプリケーション(Rosetta 2 モード)のプロファイルを作成できます。
タイムラインスナップショットを閉じると、dotTrace は、選択された時間間隔、適用されたフィルターなどを含むユーザーインターフェースの状態を保存します。次にスナップショットを開くと、dotTrace は UI を同じ状態に復元します。
dotTrace コマンドラインツールと Rider の dotTrace では、macOS および Linux の非同期呼び出しに関するデータを収集できるようになりました。このデータを取得するには、 タイムラインプロファイリングモードを使用します。 呼び出しツリーは、待機と継続を含む非同期呼び出しを表示します。
dotTrace コマンドラインツールと Rider の dotTrace は、 タイムラインプロファイリングモードで macOS および Linux 上のアプリケーションの子プロセスをプロファイリングできるようになりました。このサポートは、.NET 5 以降のアプリケーションでのみ利用できます。
Windows でネイティブアプリケーションのプロファイルを作成できるようになりました。プロファイリングセッションを開始するときに、リモートサーバーからネイティブソースシンボルファイルをダウンロードするオプションがあります。ネイティブプロファイリングは、 タイムラインプロファイリングタイプでのみ使用できます。
タイムラインプロファイリングタイプを使用して、macOS および Linux 上の .NET Core および .NET アプリケーションをプロファイリングできるようになりました。
dotTrace のホーム画面を完全に作り直しました。新しいプロファイリングセッションの構成と開始、スナップショットの操作、その他の基本的な操作の実行がはるかに簡単になります。
dotTrace コマンドラインプロファイラーを dotnet
グローバルツールとしてインストールして使用できます: dotnet tool install --global JetBrains.dotTrace.GlobalTools --version 2021.1.0