外部 .NET プロセスのプロファイル
dotTrace は、プロファイリングセッションを実行した後、システムで開始されたすべての .NET プロセスに自動的にアタッチし、プロファイリングできます。
スタンドアロンアプリケーションとして dotTrace を実行する。 dotTrace ホーム ウィンドウが開きます。
実行構成を追加します – プロファイル対象のアプリケーションの実行方法を dotTrace に指示する構成です:
プロファイルするものを選択する、 新しいプロセスの実行 で、
実行構成の追加 をクリックします。新規実行構成 ウィザードで、 外部 .NET プロセス を選択し、 次へ をクリックします。
必要に応じて、 環境変数を設定する で環境変数を指定します。 各変数は、新しい行で指定する必要があります。
保存 をクリックします。
作成した実行構成が 新しいプロセスの実行 リストで選択されていることを確認してください。
プロファイル方法を選択してください で、プロファイリングオプションを指定します。
プロファイリングタイプ: 通常、 ネイティブアプリケーションをプロファイリングする場合、サンプリング (パフォーマンスを評価し、アプリで最も遅いメソッドを決定する) と タイムライン (サンプリングと同じですが、タイムラインデータが追加されます) のいずれかを選択する必要があります。 プロファイリングタイプの詳細
プロファイルされたプロセスがプロファイリングセッションの実行後に開始される最初のプロセスになることを保証できない場合は、 プロセスフィルターを設定します。
必要に応じて、 他のプロファイリングオプションを指定します。
セッション開始直後に dotTrace でプロファイリングデータの収集を開始したい場合は、 プロファイリングを実行する で 最初からプロファイリングデータを収集する を選択してください。
開始 をクリックします。
プロファイリングするアプリケーションを実行します。 プロファイリングセッションは、プロファイラーがアプリケーションプロセスにアタッチされた直後に開始されます。
- プロファイラーがプロセスにアタッチされない場合はどうすればよいですか?
考えられる理由:
プロファイリングしようとしているプロセスは管理されたプロセスではありません。
プロファイラーは、システムで開始された別の管理対象プロセスに接続されています。 プロファイリングを再開し、問題が解決しない場合は、 プロセスフィルターを構成してください。
.NET 6.0 以降を対象とするプロセスでは、いくつかの問題が発生する可能性があります。 プロファイリングが開始されない場合は、プロセスとそのすべての親プロセスを再起動してみてください。 例: Windows コマンドプロンプトからプロセスを実行する場合は、コマンドプロンプトとプロセスの両方を再起動します。
アプリケーションで特定のワークフローを実行するか(パフォーマンスを評価する場合)、特定のパフォーマンスの問題を再現します。 プロファイリングコントローラーウィンドウの スナップショットを取得 ボタンを使用してスナップショットを収集します。 プロファイリングセッションを制御する方法の詳細
データを収集したら、プロファイリングされたアプリケーションを閉じるか、コントローラーウィンドウの デタッチ ボタンを使用してプロファイラーをデタッチします。
dotTrace Viewer を使用して、収集したスナップショットを分析します。