dotTrace の新機能
dotTrace 2026.1
バグ修正と安定性の改善。
dotTrace 2025.3
バグ修正と安定性の改善。
dotTrace 2025.2
バグ修正と安定性の改善。
dotTrace 2025.1
dotTrace にタブを導入し、スナップショット分析をより柔軟にしました。 同じスナップショットを複数のタブで開き、それぞれに独自のフィルターセットを適用できるようになりました。 たとえば、あるタブで 1 つのデータセットを分析しながら、別のタブでは全く異なるフィルターセットを適用することも可能です。 フィルターをリセットして再適用することなく、タブをシームレスに切り替えることができます。 タブインターフェースは、dotTrace のスタンドアロン版でのみ利用可能です。
dotTrace 2024.3
元に戻す / やり直しとフィルター履歴
dotTrace で 元に戻す / やり直す とフィルター履歴のフルサポートが導入されました。 各フィルターの変更が記録されるようになり、簡単に以前の状態に戻すことができます。 元に戻す ボタンまたはホットキーで最後の変更を元に戻したり、 やり直し ボタンで変更を再適用したりできます。 変更が時系列でリストされたドロップダウンリストから、複数のステップを同時に戻すこともできます。
dotTrace 2024.2
パフォーマンスの改善
dotTrace のすべてのバージョンでは、タイムラインスナップショットや 呼び出しツリー および ホットスポット ビューのデータの処理が高速化されるなど、パフォーマンスがいくつか向上しています。
その他の改善とバグ修正
現在、すべてのプラットフォーム上の dotTrace ビューアーは同じ新しいレンダリングエンジンを使用します。 更新されたビューアーで問題が発生した場合は、 dotTrace ホーム | 設定 の 新しいクロスプラットフォーム dotTrace ビューアーをデフォルトで使用 を削除してください。
macOS および Linux 用の dotTrace のスタンドアロンバージョンは、 オプション ウィンドウを取得します。
Windows でカーネルイベントが欠落する問題を修正しました。Windows Defender の影響により、タイムラインスナップショットでカーネルサンプリングイベントが欠落していました。
さまざまなマイナーな改善とバグ修正。
dotTrace 2024.1
MAUI フレームワークに基づいてアプリケーションをプロファイルできるようになりました。 現在、dotTrace は以下をサポートしています。
macOS – Mac .NET 7.0+ をターゲットとする Catalyst アプリケーション。 タイムラインプロファイリングのみ。
Windows – .NET 7.0+ をターゲットとする WinUI アプリケーション。 すべてのプロファイリングタイプがサポートされています。 すでに実行中のアプリケーションへのアタッチは、タイムラインタイプとサンプリングタイプでのみ使用できます。
このサポートは、dotTrace スタンドアロンおよび Rider と ReSharper に統合された dotTrace で利用できます。
dotTrace では Unreal Engine アプリケーションのプロファイリングがより簡単になりました。プロファイリングターゲットの設定時に Unreal Engine アプリケーションタイプを選択できるようになりました。 これにより、Unreal Engine アプリケーションに関連するプロファイリング設定が事前定義されます。
プロファイリングプリセット
dotTrace にユーザーインターフェース (UI) プリセットが含まれるようになりました。 プリセットは UI を調整し、特定のアプリケーション (一般的な設定 (すべてのアプリケーションタイプ)、 Unity 開発者、 Unreal Engine 開発者) に関連するプロファイリング設定のみを表示します。
macOS のサポートの改善
macOS のプロファイリングを改善しました:
現在、dotTrace のスタンドアロンバージョンでは、実行可能ファイルの代わりにアプリケーションバンドル (.app) を指定できるようになりました。
Rider の dotTrace は、macOS 実行構成をプロファイルできます。 次のターゲットフレームワークがサポートされています: net7.0-macos、net8.0-macos、net7.0-maccatalyst、net8.0-maccatalyst、Xamarin.Mac。
dotTrace 2023.3
Windows でのタイムラインプロファイリングモードの構成の改善
Windows でタイムラインプロファイリングセッションを構成するときに、次の詳細オプションを指定できるようになりました。
サンプリングレート – データの精度とスナップショットサイズ間の最適なバランスを見つけることができます。 ゲーム開発用の高速サンプリングモードもサポートされています。
ネイティブ割り当て用の ... KB ごとのサンプル割り当て – 収集されるデータの量、つまりスナップショットサイズを削減することで、スナップショット分析のパフォーマンスを向上させることができます。
ネイティブシンボルファイルを バックグラウンドでダウンロード – プロファイリングセッション中にシンボルファイルをダウンロードして、スナップショットの取得にかかる時間を短縮します。
ソースビューでのデータのプロファイリング
呼び出しツリー を分析する代わりに、ソースコード内でパフォーマンスプロファイリングデータを直接表示できるようになりました。 ソースビューには、コードの特定の行の時間分布が表示されます。 現時点では、この機能は Windows で作成されたタイムラインスナップショットで利用できます。
Linux と macOS のフレームグラフチャート
現在、Linux および macOS 上の dotTrace では、タイムラインスナップショットのフレームグラフチャートとしてコールツリーを表示できます。
ネイティブコード分析の改善
Windows で作成されたタイムラインスナップショットのネイティブメソッドのソースコードを表示できるようになりました。
マネージドスレッドがない場合、デフォルトでネイティブスレッドが表示されるようになりました。
その他の改善
タイムラインプロファイリングモードは、.NET および .NET Core フレームワークの
System.Data.SqlClientデータプロバイダーをサポートするようになりました。 SQL クエリ フィルターで対応するイベントを表示できます。dotTrace ビューアーの検索ウィンドウ内でパフォーマンスメトリクスを表示できるようになりました。
サードパーティツールとの統合のサポートが Linux および macOS で利用できるようになりました。
バージョン 2023.3 以降、dotTrace はリモートプロファイリングをサポートしなくなりました。 代わりに コマンドラインプロファイラを使用してください。
dotTrace 2023.2
サンプリング、トレース、行ごとのスナップショットのためのスレッドによるグループ化
今では、 呼び出しツリーでコールスタックを個々のスレッドごとにグループ化できるようになり、スレッド固有のパフォーマンス問題についてより深いインサイトを得ることができます。
Linux および macOS のソースビューツールウィンドウ
Linux および macOS の dotTrace スタンドアロンバージョンに ソースビューウィンドウが追加されました。 呼び出しツリー で呼び出しを選択すると、 ソースビュー によって対応するメソッドのソースコードが表示されます。
その他の改善とバグ修正
タイムラインスナップショットの場合、dotTrace ビューアーは、すべてのスレッドを ネイティブ として表示するのではなく、ネイティブスレッドの名前を表示するようになりました。 この機能は、Unity 開発者に有益であり、特定の Unity スレッドを区別できるようになります。 Windows でのみ利用可能です。
dotTrace Viewer の ソースビュー ウィンドウに、コードの各行の呼び出し数が表示されるようになりました。
dotTrace 2023.1
Linux および macOS 上の dotTrace スタンドアロン
dotTrace のスタンドアロンバージョンが、Linux および macOS で利用できるようになりました。 これで、パフォーマンススナップショットの収集と分析を含む、これらのオペレーティングシステムでの完全なプロファイリングワークフローを実行できます。
dotTrace 2022.3
.NET 7 のサポート
dotTrace では、Windows、macOS、Linux 上の .NET 7 アプリケーションをプロファイリングできるようになりました。
次の問題に直面する可能性があることに注意してください。
アプリケーションが動的アセンブリを作成する場合、プロファイラーはこれらのアセンブリからのデータ (メソッド名) を表示しません。 これらは 未解決 として表示されます。
プロファイラーをアタッチしてアプリケーションをプロファイリングすると、セッション中にアプリケーションがクラッシュする可能性があります。
どちらの問題も、今後の .NET 7 バグ修正リリースで修正される予定です。
改善された ARM CPU サポート
Linux arm32 – Linux の arm32 CPU で dotTrace コマンドラインプロファイラーを実行できるようになりました。 サポートされているフレームワーク: .NET Core 3.1、.NET 5.0 - 7.0。 タイムラインプロファイリングタイプは、.NET 6.0+ アプリケーションでのみサポートされていることに注意してください。
Windows arm64 – Windows の arm64 CPU で dotTrace を使用できるようになりました。 これは、スタンドアロンの dotTrace、Rider の dotTrace、Visual Studio の dotTrace、および dotTrace コマンドラインツールのすべてのバージョンに適用されます。
パフォーマンスビューアーの破棄
このリリースの前は、サンプリング、トレース、行単位のパフォーマンススナップショットは従来のパフォーマンスビューアーで開く必要がありましたが、タイムラインスナップショットは最新のタイムラインビューアーで開いていました。 これにより、2 つのビューアーのユーザーインターフェースとスナップショット分析へのアプローチが異なるため、全体的なユーザーエクスペリエンスが悪化しました。 現在、パフォーマンスビューアーを廃止し、dotTrace ビューアー (以前のタイムラインビューアー) を採用しています。 dotTrace はそれを使用して、すべてのタイプのスナップショットを開きます。 それでも、破棄されたパフォーマンスビューアーを引き続き使用したい場合は、そのようなオプションがまだあります。
スナップショット分析の改善
dotTrace ビューアー (以前のタイムラインビューアー) はすべてのタイプのスナップショットを開くようになったため、パフォーマンススナップショットのすべての強力な機能を使用できます。
サンプリング、トレース、行ごとのスナップショットの比較は、新しい「フィルターとしての比較」という概念により、より簡単になりました。
これで、サンプリング、トレース、行ごとのスナップショットで サブシステムをフィルターできます。
dotTrace ビューアーに プレーンリストビューが追加されました。 さらに、サンプリング、トレース、ラインごとのスナップショットだけでなく、タイムラインのスナップショットにも使用できます。
dotTrace 2022.2
現在、dotTrace は、Windows カーネル呼び出し (ntoskrnl.exe)、デバイスドライバー呼び出し (*.sys) などを含む、ネイティブシステムコールの詳細をタイムラインコールツリーに表示します。
ネイティブプロファイリングは、すべての dotTrace バージョン (スタンドアロン、コマンドラインツール、および ReSharper と Rider に統合された dotTrace) によって Windows でのみサポートされることに注意してください。
JetBrains Rider の改善における dotTrace
プロファイリングプロセスを開始するために Unity エディターを再起動する必要がなくなりました。 プロファイラーは、実行中の Unity プロセスにアタッチおよびデタッチできるようになりました。
dotTrace 2022.1
musl ベースの Linux ディストリビューションのサポート
dotTrace コマンドラインツールは、Alpine バージョン 3.13 – 3.15 をサポートするようになりました。 次の CPU とフレームワークがサポートされています。
x64:.NET Core 3.1、.NET 5.0 – 6.0。
arm64:.NET 5.0 – 6.0。
dotnet-trace collectで収集した NetTrace ファイルを開くことができるようになりました。dotTrace のホームメニューから スナップショットを開く をクリックし、.nettrace ファイルを選択してください。現在、dotTrace は、Windows (.NET Core、.NET 5+) 上の Microsoft.Data.SqlClient プロバイダーからの SQL Server イベント、および macOS と Linux (.NET Core 3.0+、.NET 5+) をサポートします。
dotTrace ホームでのキーボードナビゲーション
キーボードの組み合わせのみを使用して、dotTrace ホームウィンドウを移動できるようになりました。 マウスは必要ありません。 各 UI エレメントは、キーまたはキーシーケンスに割り当てられます。 割り当てられたキーを表示し、UI 要素を操作する方法は 2 つあります。
Alt キーを押しながら、キーまたはキーシーケンス(デフォルト)を押します。
モード切り替えキーを押してから、キーまたはキーシーケンスを押します。
dotTrace ホームで使用するものを選択できます | 設定。
これで、特別なアイコンをアプリケーションウィンドウにドラッグするだけで、プロファイラーをすでに実行中のアプリケーションにアタッチできます。
dotTrace ホームウィンドウの スナップショット ページを改善
スナップショットの名前を編集できるようになりました。
対応するファイルを dotTrace ホームウィンドウにドラッグして、スナップショットを開くことができるようになりました。
スナップショットリストは、dotTrace の起動間の並べ替え状態を保持するようになりました。
スナップショットリストは、システムの日付形式を使用するようになりました。
その他の改善
スナップショットの自動保存を無効にできるようになりました。 その場合、タイムラインビューまたはパフォーマンスビューアーを閉じると、dotTrace は収集されたスナップショットを保存するかどうかを尋ねてきます。
タイムラインビューアーのスレッドフィルターにスレッドを固定できるようになりました。
Configuration2Xml ツールは、dotTrace ホームウィンドウと同じ UI を使用するようになりました。
プロファイルする多数の管理対象子プロセスを作成するルートプロセスをプロファイルするとします。 ルートプロセス自体は、何らかの理由でプロファイリングから除外されます(たとえば、シェルスクリプト、ネイティブプロセス、単にプロセスフィルターを使用して除外する場合があります)。
前: プロファイラーは、フィルターに一致するすべての子プロセスのプロファイリングを開始します。 子プロセスが終了すると、プロファイラーは 1 秒間待機します。 この時間内に新しい子プロセスが開始されない場合、プロファイラーはプロファイリングセッションを終了します。 ルートプロセスが子プロセスをより長い遅延で開始する場合、これは問題になる可能性があります。
現在: ルートプロセスの実行中、プロファイラーはプロファイリングセッションを停止しません。 ルートプロセスが機能しなくなると、プロファイラーは 1 秒遅延アプローチに切り替わります。 (編集)
dotTrace 2021.3
.NET6 のサポート
dotTrace では、Windows、macOS、Linux 上の .NET 6 アプリケーションをプロファイリングできるようになりました。 Linux および macOS 上のアプリケーションをプロファイリングするには、JetBrains Rider または dotTrace のコマンドラインプロファイラーのいずれかを使用する必要があることに注意してください。
AppleM1 のサポート
現在、dotTrace コマンドラインツールは、AppleM1 プロセッサーを搭載したコンピューターで動作します。 このツールは、.NET 6 アプリケーション(ネイティブモード)および .NET 5 アプリケーション(Rosetta 2 モード)のプロファイリングをサポートします。
タイムラインスナップショットの UI 状態を保存する
タイムラインスナップショットを閉じると、dotTrace はユーザーインターフェースの状態(選択した時間間隔、適用されたフィルターなど)を保存します。 次にスナップショットを開くと、dotTrace は UI の状態を復元します。
パフォーマンスの向上
非同期呼び出しを多用するアプリケーションのタイムラインプロファイリングのパフォーマンスオーバーヘッドを削減しました。 タイムラインスナップショットでのオープンとフィルタリングのパフォーマンスが向上しました。
macOS および Linux での TPL イベントのサポート
dotTrace のコマンドラインツールおよび Rider の dotTrace で、macOS と Linux 上の非同期呼び出しのデータを収集できるようになりました。 このデータを取得するには、タイムラインプロファイリングモードを使用してください。 dotTrace は .NET 5 以降のアプリケーションで TPL イベントを完全にサポートします。呼び出しツリーには await や継続を含む async 呼び出しが表示されます。 .NET 3.1 アプリでは Task API のみがサポートされます。呼び出しツリーにはタスクのスケジューリングと実行のノードは表示されますが、async/await 呼び出しのデータは表示されません。
macOS および Linux の子プロセスのサポートが改善
現在、dotTrace コマンドラインツールと Rider の dotTrace は、タイムラインプロファイリングモードで macOS および Linux 上のアプリケーションの子プロセスをプロファイリングできます。 このサポートは、.NET 5 以降のアプリケーションでのみ利用できます。
dotTrace 2021.2
これで、Windows 上のネイティブアプリケーションのプロファイルを作成することができます。 プロファイリングセッションを開始するときに、リモートサーバーからネイティブソースシンボルファイルをダウンロードするオプションがあります。 ネイティブプロファイリングは、タイムラインプロファイリングタイプでのみ使用できます。
macOS および Linux のタイムラインプロファイリング
タイムラインプロファイリングタイプを使用して、macOS および Linux 上の .NET Core および .NET アプリケーションをプロファイリングできるようになりました。
dotTrace 2021.1
dotTrace のホーム画面を完全に作り直しました。 これで、新しいプロファイリングセッションの構成と開始、スナップショットの操作、その他の基本的な操作の実行がはるかに簡単になりました。
.NET グローバルツールとしてのコマンドラインプロファイラー
これで、dotTrace コマンドラインプロファイラーを .NET グローバルツールとしてインストールして使用できます。
dotTrace 2020.3
.NET5 のサポート
dotTrace では、Windows、macOS、Linux 上の .NET 5 アプリケーションをプロファイリングできるようになりました。 Linux および macOS 上のアプリケーションをプロファイリングするには、JetBrains Rider または dotTrace のコマンドラインプロファイラーのいずれかを使用する必要があることに注意してください。
Rider のフレームグラフとしてツリーを呼び出す
Rider では、コールツリーをフレームグラフモードに切り替えることができます。 グラフは、現在のスコープで最も遅いメソッドをすばやく特定できます。
Rider 用の dotTrace は、コールツリーフォールディング機能を取得します(以前は、dotTrace のスタンドアロンバージョンでのみ使用可能でした)。 ユーザーモジュールおよびアセンブリに属していない呼び出しのチェーンを折りたたむことにより、呼び出しツリー分析を簡素化できます。
さまざまな改善
Rider のスレッドリストでネイティブスレッドを非表示にできます。
ファイル I/O タイムラインフィルターに
FileIOCreateイベントが含まれるようになりました。Rider で トップメソッド リストを非表示にすることができます。
dotTrace 2020.2
Mono および Unity アプリケーションのネイティブプロファイリング
Rider のスタンドアロン dotTrace と dotTrace はどちらも、Windows 上の Mono/Unity アプリケーションのネイティブ部分をプロファイルできます。 ネイティブプロファイリングを有効化する オプションを使用してセッションを開始すると、パフォーマンススナップショットにネイティブコールスタックとマネージコールスタックの両方が表示されます。
ARM64 アーキテクチャのサポート
Linux (GLIBC_2.23 以降を搭載したすべてのディストリビューション) 用の dotTrace コマンドラインプロファイラーを使用すると、ARM64 システム上のアプリケーションをプロファイリングできます。
コマンドラインプロファイラーを使用すると、コマンドを stdin またはファイルに送信することにより、プロファイリングセッションを制御できます(スナップショットの作成、プロファイルされたプロセスからの切り離しなど)。
新しい 自己プロファイリング API (アプリケーションが自分でプロファイリングセッションを初期化および開始できる API)は、はるかに使いやすくなっています。 セルフプロファイリング API は、NuGet パッケージとして配布されます。
dotTrace 2020.1
Linux および macOS のサポートの改善
これで、トレースプロファイリングモードを使用して、macOS および Linux 上の .NET Core アプリケーションをプロファイリングできるようになりました。 これを行うには、JetBrains Rider または dotTrace のコマンドラインプロファイラーを使用する必要があります。
これで、Linux で実行中のプロセスにプロファイラーを接続できます。
これで、 次の重要なコール アクションを使用して 呼び出しツリー 内を移動できるようになりました。 Ctrl+Shift+Right を押すと、dotTrace はさらなる分析に最も関連性の高いノード(たとえば、実行時間が長いノード)へ移動します。
この機能は、dotTrace スタンドアロン(パフォーマンスビューアーとタイムラインビューアーの両方)、Visual Studio、および JetBrains Rider で使用できます。
dotTrace 2019.3
macOS および Linux での .NET Core サポート
dotTrace 2019.3 は、Linux および macOS 上で .NET Core プロジェクトのサンプリングプロファイリングをサポートします。 なお、.NET Core 3.1 をターゲットとしたプロジェクトのみ完全にサポートされています。 一部の .NET Core の制限により、.NET Core 3.0 以前をターゲットとしたプロジェクトのプロファイリングには問題が発生する場合があります。まれにプロファイル対象のアプリケーションがハングしたりクラッシュしたりすることがあります。 Linux および macOS 上で .NET Core アプリケーションをプロファイリングするには、 JetBrains Rider または dotTrace のコマンドラインツールを使用してください。
macOS および Linux のコマンドラインプロファイラー
コマンドラインプロファイラーが、ついに macOS と Linux に導入されます。
dotTrace.shは Windows 版と同じ機能を備えており、.tar.gz アーカイブおよび NuGet パッケージとして配布されます。コールツリーフレームグラフを使用すると、最も遅いメソッドが一目でわかります。 グラフはタイムラインビューアーでのみ使用できることに注意してください。
dotTrace 2019.2
Rider のタイムラインフィルター。
Rider の dotTrace がさらに進化し、 タイムラインフィルターの全セットを利用できるようになり、その場でタイムラインプロファイリングスナップショットを簡単に分析できるようになりました。
.NET Core3.0 の完全サポート。
dotTrace は、.NET Core 3.0 Preview7 プロセスに接続できるようになりました。
Visual Studio の ASP.NET Core アプリケーションのサポートの改善:
さまざまなホスティングモデルが正しくサポートされています。
プロファイリングセッションを開始するときに、ブラウザー設定と SSL の有効化 が考慮されます。
ASP.NET Core 3.0 Preview 7 がサポートされています。
その他の改善 ...
プロファイリング API は、プロファイルされたプロセスからデタッチする機能を取得します。
Silverlight および WebDev アプリケーションはサポートされなくなりました。
dotTrace 2019.1
Mono および Mono Unity アプリケーションは以下をサポートします。
スタンドアロン dotTrace:Windows のみ。
dotTrace は JetBrains Rider に統合されました: Windows、macOS、Linux。
コマンドラインプロファイラーの改善:
startおよびattachコマンドは、時間測定型などの高度なプロファイリングパラメーターを受け入れるようになりました。Reporter.exe ツールは、最終レポートでオーバーロードされたメソッドを区別できるようにする
--save-signature引数を受け入れます。
新しいプロファイリング API。 プロファイリング API を大幅に更新しました。
ステートマシンを取り除きました。 これで、コントローラーの状態に関係なく、あらゆる API メソッドを呼び出すことができます。
利用可能なメソッドの数を減らしたため、API の使用が簡単になりました。
NuGet パッケージとして API を配布します。
dotTrace 2018.3
JetBrains Rider 統合。 プロファイリングセッションを設定および実行し、スナップショットを取得し、組み込みビューアーで分析できます。 現在、ビューアーはタイムライン上にイベントの分布を表示することはできません。 そのため、タイムラインスナップショットは単純なサンプリングスナップショットとして開かれます。
改善された .NET メモリ割り当てフィルター。 タイムラインビューアーには、割り当てられたメモリが特定の種類のオブジェクト間でどのように分散されているかを分析できる新しいサブフィルターが用意されています。
IIS Express のプロファイリング設定の見直し。 IIS Express でホストされている Web アプリをプロファイルするデフォルトの方法は、dotTrace に applicationhost.config ファイルを提供することです。
dotTrace 2018.2
パフォーマンスと安定性が向上しました。
.NET プロセス用のインクルードフィルターを追加しました。 任意の .NET プロセスのプロファイリングを設定する際、インクルードフィルターを指定できます。dotTrace はそのフィルターに一致するプロセスのみにアタッチします。
dotTrace 2018.1
パフォーマンスを向上させた。 このリリースの dotTrace は、主に安定性とパフォーマンスの向上に重点を置いていました。
dotTrace 2017.3
非同期呼び出しのサポート。 非同期コードの欠点は、それをプロファイルしてそのパフォーマンスを分析することが非常に難しいことです。 dotTrace 2017.3 は非同期コードの分析を劇的に単純化します。 呼び出しツリー 内のすべての
async呼び出しノードをマークし、そのノードに対応するawait時間および継続コードをグループ化します。 つまり、異なる呼び出しスタックを検索するのではなく、非同期呼び出しのすべての「部分」を 1 か所ですばやく見つけることができます。タイムラインビューアーの予測パフォーマンス。 これで、タイムラインビューアーでアプリケーションのパフォーマンスを「予測」することができます。 簡単に言うと、 呼び出しツリー から特定の方法を除外すると、dotTrace はそのような方法がなかったかのようにスナップショット全体を再計算します。
ホットスポットのバックトレース (タイムラインビューアー)。 これで、 呼び出しツリー に切り替えることなく、 ホットスポット 内で特定のメソッドのバックトレースをすばやく見ることができます。
ユーザーアセンブリをシステムとしてマーク。 特定のユーザーアセンブリをシステムアセンブリとしてマークできます。 その後、システムモジュールのメソッドに適用されるすべてのルールが、このユーザーアセンブリのメソッドにも適用されます。例えば、 ホットスポット でのメソッドの時間の計算方法や、システムコールを折りたたむ場合などです。
dotTrace 2017.3
非同期呼び出しのサポート。 非同期コードの欠点は、それをプロファイルしてそのパフォーマンスを分析することが非常に難しいことです。 dotTrace 2017.3 は非同期コードの分析を劇的に単純化します。 呼び出しツリー 内のすべての
async呼び出しノードをマークし、そのノードに対応するawait時間および継続コードをグループ化します。 つまり、異なる呼び出しスタックを検索するのではなく、非同期呼び出しのすべての「部分」を 1 か所ですばやく見つけることができます。タイムラインビューアーの予測パフォーマンス。 これで、タイムラインビューアーでアプリケーションのパフォーマンスを「予測」することができます。 簡単に言うと、 呼び出しツリー から特定の方法を除外すると、dotTrace はそのような方法がなかったかのようにスナップショット全体を再計算します。
ホットスポットのバックトレース (タイムラインビューアー)。 これで、 呼び出しツリー に切り替えることなく、 ホットスポット 内で特定のメソッドのバックトレースをすばやく見ることができます。
ユーザーアセンブリをシステムとしてマーク。 特定のユーザーアセンブリをシステムアセンブリとしてマークできます。 その後、システムモジュールのメソッドに適用されるすべてのルールが、このユーザーアセンブリのメソッドにも適用されます。例えば、 ホットスポット でのメソッドの時間の計算方法や、システムコールを折りたたむ場合などです。
dotTrace 2017.2
呼び出しツリーでのナビゲーションパス。 呼び出しツリーを操作する際、どのように特定の関数に到達したのか把握するのが常に課題でした。 dotTrace 2017.2 でこの問題は解決されました。呼び出しツリービューの左側ガターに、すべての移動履歴が表示されます。
コマンドラインからのタイムラインプロファイリング。 コマンドラインプロファイラーは、最終的にタイムラインプロファイリングタイプをサポートします。
単体テストで子プロセスのプロファイルを作成します。
これで、簡単なチェックボックスを使用して、単体テストで子プロセスのプロファイリングを有効にできます。 複雑なプロファイリング構成は不要になりました。
キャッシュファイルをクリアします。 これで、dotTrace ホーム設定のボタンを使用してスナップショットキャッシュファイルを強制的に削除できます。 これにより、既存のスナップショットの読み込みが遅くなりますが、ディスク領域がいくらか解放されます。
dotTrace 2017.1
Visual Studio 2017 のサポート。
ドラッグアンドドロップでアタッチします。 これで、ドラッグアンドドロップを使用して、プロファイラーを実行中のアプリケーションに接続できます。 単純に、プロファイリングするアプリケーションウィンドウに特別なアイコンをドロップします。
dotTrace ホームからスナップショットファイルを開きます。 これで、dotTrace ホームウィンドウから直接 .dtp および .dtt スナップショットファイルを開くことができます。
dotTrace 2016.3
Visual Studio 2017 RC の初期サポート。
タイムラインビューアーのサブシステム。 タイムラインビューアーにパフォーマンスビューアーの優れた機能の一つである「サブシステム」が追加されました。 サブシステムの仕組みは非常にシンプルで、通常は各サブシステムが特定の名前空間やアセンブリ内の呼び出しをまとめるだけです。 特定のコールサブツリーにかかった時間が、ユーザーコードやシステムコード、WPF、LINQ、コレクション、文字列などさまざまなコンポーネントにどのように分散しているかを素早く評価するのに非常に便利です。
ネイティブメモリ割り当てを分析します。 ネイティブメモリ割り当て イベントフィルターを使用すると、どのメソッドが割り当てを行っているのかを確認し、ネイティブメモリに関連するすべての問題を分析できます。
アプリケーションのデバッグ出力を分析。 デバッグ出力 フィルターは高度なデバッグに非常に役立ちます。選択すると、タイムラインにはアプリケーションがデバッグ出力に書き込んだイベント、例えば
Debug.Writeシステムメソッドを使用したものだけが表示されます。イベントウィンドウ。 イベント ツールウィンドウには、イベントログ(プロファイルされたアプリケーションで発生したイベントのリスト: ファイル操作、JIT、SQL クエリなど)が表示されます。
.NETCore アプリケーションのプロファイリング。 コンピューターに .NETCore ツールがインストールされている場合は、追加のアクションなしで .NETCore アプリケーションのプロファイルを作成できます。
dotTrace 2016.2
タイムラインビューアーでの再帰呼び出しの折りたたみ。 再帰呼び出しを 1 つのノードに折りたたむことによって、深い再帰呼び出しスタックの分析を単純化します。
dotTrace 2016.1
Visual Studio のスレッドダイアグラム。
Visual Studio に統合された dotTrace ビューアーは、スタンドアロンのビューアーとまったく同じスレッドダイアグラムを取得するため、これを使用してスレッド、時間範囲を選択し、もちろん、スレッドアクティビティとフィルター処理された時間間隔を表示できます。
スレッドダイアグラムのスマートツールチップ。 Threads ダイアグラム上の任意のスレッドにカーソルを合わせると、その時点でそのスレッドが行っていた処理、実行していたメソッドや(ファイル I/O の場合は)操作していたファイル、その他のデータがツールチップに詳細に表示されます。
パフォーマンスビューアーでプレーンリスト全体をクリップボードにコピーします。 これで、プレーンリストの内容全体をクリップボードにコピーできます。
Reporter.exe ツールによって生成されたレポートのプロファイルプロセスデータ。 スナップショットからパフォーマンスデータを取得するために使用される Reporter.exe ツール(プロファイリングの自動化や CI など)は、XML レポートに追加のデータを配置するようになりました。
/add_process_infoオプションを有効にしてレポートを作成する場合、レポートにはプロファイルされたプロセスの実行可能ファイルへのパスが含まれます。 この情報は、複数の子プロセスを持つアプリケーションをプロファイリングするときに非常に役立ちます。
dotTrace 10
Visual Studio での統合。 Visual Studio は 呼び出しツリー からソースコードへの即時ナビゲーションを備えたタイムラインビューアーの統合版を手に入れます。
コンソールプロファイラーは、コマンドライン引数を介して構成を受け入れます。 XML ファイルでプロファイリング構成を提供する代わりに、コマンドライン引数を使用してこれを行うことができます。
dotTrace 6.2
実行構成のプロファイリング。 Visual Studio に統合された dotTrace は、より多くのプロファイリング機能を取得します。 これで、スタートアッププロジェクトだけでなく、任意の「実行構成」(スタートアッププロジェクト、任意の実行可能ファイル、任意の静的メソッド)をプロファイリングできます。
受信 HTTP リクエストのプロファイリング。 タイムラインビューアーは新しい 受信 HTTP リクエスト フィルターを提供します。 これで、特定の HTTP リクエストが処理された時間に関する正確なデータを得ることができます。
dotTrace 6.1.1
スナップショットの自動削除。 毎週または毎月手動で処理しなくても、古いスナップショットを自動的に削除することができます。
Configuration2Xml ツールを更新しました。 コマンドラインからのプロファイリングが復活しました !
dotTrace 6.1
SQL クエリプロファイリング。 タイムラインビューアーは新しい SQL クエリ フィルターを提供します。 これで、特定の SQL クエリが実行された時間と、どのメソッドがクエリを実行したかに関する正確なデータを取得できます。
再設計された dotTrace コントローラー。 dotTrace コントローラーは、よりきれいで、画面上のスペースを取りません。
タイムラインビューアーのパフォーマンスが向上しました。
dotTrace 6.0
アプリケーションに関する一時的なコールスタックとスレッドの状態データを収集する、まったく新しいタイムラインプロファイリングメソッド。
再設計された UI。 現在、dotTrace インターフェースは、dotTrace のホームウィンドウ、パフォーマンスビューアー、タイムラインビューアーの 3 つの主要コンポーネントで構成されています。
プロファイリングセッションは、新しい dotTrace ホームウィンドウで設定および開始されます。
より柔軟なサブシステム。 サブシステム時間の処理方法を指定できます。個別に表示、呼び出し元サブシステムの時間に含める、あるいは全く考慮しない、などを選択できます。
子プロセスのフィルタリング。 アプリケーションのどの子プロセスをプロファイリングしないかを指定できます。
dotTrace 5.5
dotTrace 5.3
Windows ストアアプリケーションのプロファイリング
Microsoft Visual Studio 2012 および ReSharper 7.1 との統合
新しい時間測定方法
dotTrace 5.0
.NET プロセスへのアタッチ
改善されたリモートプロファイリング
CLR バージョン 2.0 および 4.0 を対象とするアプリケーションの同時プロファイリング
IIS Express のサポート
XBAP アプリケーションのプロファイリング
メッセージポンピングを行うスレッドには特別なアイコンが表示されます
dotTrace 4.5
WCF アプリケーションのプロファイリング
無関係な呼び出しを隠すためのフィルタリングの強化
特定のクラスのすべてのパブリックメンバーを新しいタブで開いてパフォーマンスを調べる
ソースサーバーを使用した .NET フレームワークアセンブリのソースコードのプレビュー
大きなスナップショットを処理する際のパフォーマンスの向上 (特に プレーンリスト と ホットスポット)
パフォーマンス予測のその他のオプション
フローティングライセンス使用ポリシーの改善
改善された ホーム タブ
dotTrace 4.0
新しいパフォーマンスプロファイリング機能:
.NET フレームワーク 4.0 アプリケーションのプロファイリング
.NET Compact で構築された Windows Mobile アプリケーションのプロファイリングフレームワーク 3.5。
Silverlight 4 アプリケーションのプロファイリング。
IIS 7 または IIS 7.5 でデプロイされた Web アプリケーションのプロファイリング
.NET プロセスのプロファイリング。
アプリケーションのリモートプロファイリング
アプリケーションを行ごとにプロファイリングします。
実行時間を測定する新しい方法: 経過時間 (パフォーマンスカウンター)。
高い正確性 オプションを使用すると、プロファイラ内で費やされた時間を考慮に入れることができます。
同じ名前のスレッドをマージします。
パフォーマンススナップショットの操作の改善点:
最大数百ギガバイトのサイズのスナップショットを処理します。
新しいプレゼンテーションビュー: 概要。
名前の一致を含む検索とナビゲーションの速度が向上しました。
関数への テキストアノテーションの追加。
拡張フィルター。
ズームしたい機能やクラスのための選択的なラインバイラインプロファイリング。
改善された ソースコードプレビュー。
Microsoft Visual Studio との統合:
Visual Studio 2005、2008、2010 との統合
Visual Studio からプロファイルを作成するときに、より多くのアプリケーションタイプをサポートします。
Visual Studio、 JetBrains ReSharper 、dotTrace を使用して単体テストをプロファイリングします。
エディション:
2 つのエディション: 標準 と Professional。