このページでは、.NET マシンエージェントを使用して CLR をモニタする方法について説明します。AppDynamics .NET エージェントには、AppDynamics.Agent.Coordinator サービスの一部として実行される .NET マシンエージェントが含まれています。.NET マシンエージェントは定期的に CLR パフォーマンスデータを収集し、コントローラに報告します。

CLR関連イベント

.NETマシンエージェントは、CLRシャットダウンおよび再起動イベントをモニタリングします。

  • エージェントがアプリケーションサーバーの再起動イベントを報告し、再起動が正常であったかどうかを明示。
  • 急なシャットダウンの場合は、それが CLR クラッシュであればその旨を報告。

正常なシャットダウンのデフォルト終了コードは「0」です。お使いの Windows サービスやスタンドアロン アプリケーションが異なる終了コードを使用している場合は、「.NETエージェントの構成プロパティ」の「プロファイラ - 正常終了コードエレメント」を参照してください。

CLRメトリック

CLR メトリックは、.NET ランタイムのパフォーマンスに対するインサイトを提供します。メトリックは Windows パフォーマンスカウンタから収集されます。事前構成されたAppDynamicsのCLRメトリックは、以下のとおりです。

  • .NET CLRメモリ使用量
  • ロードしたクラス数および現在のロード数の合計
  • ガベージコレクションに使用した時間およびGCメモリプールとキャッシュに関する詳細メトリック
  • ロックおよびスレッド使用量
  • 大きなオブジェクトヒープを含む、メモリヒープ/非ヒープ領域使用量
  • CPUプロセス使用量(%)

.NET Core CLR メトリック

.NET Core メトリックは、実行中のプロセス内の .NET EventCounters から収集されます。.NET Core について、次の EventCounters が収集されます。

  • CPUプロセス使用量(%)
  • 大きなオブジェクトヒープを含む、メモリヒープ/非ヒープ領域使用量
  • ガベージコレクションに使用した時間およびGCメモリプールとキャッシュに関する詳細メトリック

これは、.NET Core アプリケーションをインストゥルメント化する際に、.NET Core 3.1 以降のすべての .NET エージェント(Azure、MSI、マイクロサービスなど)でサポートされます。

CLR 正常性アラート

インフラストラクチャ メトリックに基づいて正常性ルールを設定することができます。正常性ルールが完成したら、正常性ルール違反をベースとした具体的なポリシーを作成します。正常性ルール違反に対する応答の 1 つにアラートがあります。

デフォルトのメトリックに加えて、追加のメトリックも使用できます。.NET マシンエージェントによって報告される追加のパフォーマンスカウンタを指定できます。詳細については、「Windowsパフォーマンスメトリックの管理」を参照してください。