前のトピック: アプリケーション環境での .NET エージェントの動作次のトピック: .NET Agent のインスタンス化および IIS ワーカ プロセスについて


IIS による .NET エージェントの制御方法

デフォルトでは、.NET エージェントは、IIS によって管理され、IIS ワーカ プロセス下で実行されているアプリケーションのみを監視します。 .NET アプリケーションの開始時に、IIS が .NET エージェントおよびインスツルメント処理をどのように制御するかを以下の手順で示します。

  1. IIS がアプリケーションへのユーザ要求を受け取ります。
  2. IIS が .NET ワーカ プロセスを開始します。
  3. リクエストされた.NET アプリケーションが開始します。
  4. 共通言語ランタイム(CLR)が NativeProfiler を開始します。
  5. NativeProfiler がグローバル アセンブリ キャッシュ(GAC)から .NET エージェントをロードします。
  6. .NET エージェントが IntroscopeAgent.profile を読み込み、インスツルメントに使用する PBL および PBD ファイルを決定します。
  7. NativeProfiler が PBL および PBD ファイルの情報を使用してプローブをバイトコードに挿入し、アプリケーション コンポーネントから適切なメトリックを収集できるようにします。 アプリケーションがインスツルメントされます。
  8. インスツルメントされたアプリケーションが、.NET エージェントへのメトリックのレポートを開始します。

    IIS ワーカ プロセスが実行されている限り、エージェントはメトリックを収集し、それを Enterprise Manager にレポートします。 インスツルメントされたアプリケーションが、ユーザのアクティビティを一定時間感知しない場合、IIS ワーカ プロセスはアプリケーション プロセスを停止します。 IIS がアプリケーション プロセスを停止すると、ユーザ アクティビティが再開するまでは .NET エージェントは停止状態になります。

注: ASP.NET を使用しないスタンドアロン アプリケーションでも、インスツルメントを行うように .NET エージェントで設定されている場合は、インスツルメントすることができます。 スタンドアロン アプリケーションでも手順は同様です。ただし、スタンドアロン アプリケーションは Windows オペレーティング システムによってブートできるため、手順 1 および 2 が必要ありません。