次の方法で共有


Visual Studio プロファイラーから dotnet カウンターを視覚化する

.NET カウンター ツールを使用すると、Visual Studio プロファイラー内から直接、dotnet カウンターを経時的に視覚化することができます。

Note

.NET カウンター ツールには、Visual Studio 2019 バージョン 16.7 以降が必要であり、.NET Core 3.0 以降と .NET 5 以降がターゲットとされます。

.NET カウンター ツールを効果的に使用する方法の詳細については、「 ケースの調査: パフォーマンスの問題を分離するを参照してください。

セットアップ

  1. Visual Studio でパフォーマンス プロファイラーを開きます (Alt + F2 キー、または [デバッグ] -> [パフォーマンス プロファイラー])。

  2. [.NET カウンター] チェックボックスをオンにします。

    カウンター ツールが選択されている。

  3. [開始] ボタンをクリックしてツールを実行します。

ツールのパフォーマンスを最適化する方法の詳細については、「プロファイラー設定の最適化」を参照してください。

データを理解する

ツールによって最初のデータ収集が行われている間に、dotnet カウンターのライブ値を確認できます。

.NET カウンター ツールによって収集が行われている。

カウンター名の横にあるチェックボックスをオンにすれば、カウンターのグラフを表示することもできます。 複数のカウンターのグラフを一度に表示できます。

アプリの実行とデータの収集が完了したら、さらに詳細なレポートを目的とした収集を停止することができます。 これを行うには、[収集を停止] ボタンをクリックします。

レポートが読み込まれると、次に示すような完成したレポートが表示されます。

.NET カウンター ツール レポート。

このレポートには、次の値が表示されます。

  • 最小値 - 選択した時間の範囲内での該当するカウンターの最小値。
  • 最大値 - 選択した時間の範囲内での該当するカウンターの最大値。
  • 平均値 - 選択した時間の範囲内での該当するカウンターの平均値。

列見出しを右クリックし、見出しを選択すると、テーブル内で列をフィルター処理したり追加したりできます。

.NET カウンター ツールの列。

[カウンター] の横にあるチェックボックスをオンにして、詳細レポート内にグラフを表示することもできます。 テーブル内のデータは、既定では、収集されたトレースの全期間の値となります。 データを特定の時間の範囲にフィルターで絞り込むには、グラフをクリックしてドラッグします。

.NET カウンター ツールの時間フィルター処理。

テーブルは、グラフ内で選択した期間での該当する値に更新されます。 選択した時間の範囲をトレース全体にリセットするには [選択のクリア] ボタンを使用します。

.NET 測定カウンター データを表示する

Visual Studio 2022 バージョン 17.8 以降、.NET カウンター ツールは .NET Meter API との統合をサポートし、 CounterObservableCounterなどのインストルメント オプションのサポートを追加しました。

Counterでは、時間の経過と共に変化する値を追跡し、呼び出し元はCounter.Addを使用して更新を報告します。 これに対し、 ObservableCounterCounterに似ていますが、呼び出し元は合計値を追跡します。 .NET カウンター ツールは、合計の変化率を報告します。

詳細については、「 メトリックの作成」を参照してください。

.NET メーターのヒストグラム データを表示する

Visual Studio 2022 バージョン 17.12 Preview 2 以降、.NET カウンター ツールは .NET Meter ヒストグラム統合をサポートしています。

.NET 測定ヒストグラムを使用すると、 CreateHistogramを使用して記録された .NET ヒストグラム インストルメントによって生成されたヒストグラム データを識別および分析できます。 ヒストグラム・インストルメントを使用してデータを記録すると、結果が視覚化され、データ分布が明確に表現されます。

ライブ ヒストグラム データは、Meter インスタンスの名前の下に残りのカウンターと共に表示されます。

ヒストグラム グラフを開くには、次に示すように、Meter インスタンスのインストルメント名を選択します。

.NET カウンターメーターのヒストグラム データ。

前の例では、記録された測定値の 50 パーセンタイル、90 パーセンタイル、および 95 パーセンタイルのデータがツールに表示されます。