このページでは、JavaScript エージェントを自動で挿入してブラウザアプリケーションをインストゥルメント化する方法について説明します。自動インジェクションで AppDynamics サーバ側のエージェントを使用して、adrum ヘッダーおよびフッターを各 Web ページに自動的に追加します。

サーバ側エージェントの自動インジェクションのサポート

Java エージェント.NET エージェントは自動インジェクションをサポートしています。バージョンの詳細については、「.NET 対応環境」を参照してください。 

自動インジェクションは、次の環境で構築されたサーバ側アプリケーションでのみ使用できます。

  • Jasper でサポートされる JSP(Java)
  • ASP.NET
  • ASP.NET Core
  • ASPX(.NET)Framework
  • Apache エージェント自動インジェクションをサポートしていませんが、Apache または Nginx を構成して、JavaScript エージェントを挿入できます。
  • サーバ側アプリケーションが適切な形式の HTML を返さない場合、JavaScript エージェントはページをインストゥルメント化できない可能性があります。たとえば、JavaScript エージェントは、エレメントが欠落しているか、タグが閉じられていない HTML ページをインストゥルメント化できません。

JavaScript エージェントとコントローラのバージョン

次の表に、各コントローラバージョンでの自動インジェクション用に展開された Javascript エージェントのバージョンを示します。

コントローラとエージェントのリリースサイクルが異なるため、JavaScript エージェントのバージョンはコントローラのバージョンと一致しません。

コントローラのバージョン自動インジェクションでサポートされる JavaScript エージェントのバージョン
21.9.021.7.0
21.4.020.12.0

[User Experience App Integration] パネルへのアクセス

  1. [Applications] ページから、ブラウザアプリケーションに JavaScript エージェントを自動的に挿入するビジネスアプリケーションを開きます。
  2. 左のナビゲーションバーから [Configuration] を選択します。
  3. [User Experience App Integration] をクリックします。

ビジネストランザクション相関の有効化

[Business Transaction Correlation] で、ページと Ajax リクエストをサーバ側のビジネストランザクションと関連付けるには、[Enable Business Transaction Correlation]チェックボックスをオンにします。 

相関ヘッダーを含めるビジネストランザクションを指定する

相関ヘッダーを含める、または除外するビジネストランザクションを指定することもできます。リクエストマッチルールまたはリクエスト除外ルールを追加しない場合、相関ヘッダーはすべてのリクエストに追加されます。

リクエストルールを追加するには、次の手順を実行します。

  1. [plus] アイコンをクリックします。[Create HTTP Request Match Rule] が表示されます。
  2. [Method] チェックボックスをオンにして、照合する HTTP メソッドを選択します。
  3. [URI] チェックボックスをオンにして、条件を入力します。
  4. [Save] をクリックします。

自動インジェクションの有効化

  1. [JavaScript Agent Injection] タブを選択します。
  2. [Inject the JavaScript Agent configured for this Browser App] ドロップダウンから、自動インジェクションを使用するブラウザアプリケーションを選択します。
  3. [Enable Automatic Injection of JavaScript] チェックボックスをオンにすると、自動インジェクションが有効になります。
  4. 自動インジェクションを有効にした場合は、[Confirm Enabling Automatic Injection] ダイアログの [OK] をクリックします。
  5. 外側の構成ペインの [Save] をクリックします。

自動インジェクションの構成

自動インジェクションを有効にした後は、次を実行します。

  • 自動 JavaScript インジェクションを有効にするサーバ側ビジネストランザクションを指定する必要があります。
  • 自動インジェクション用のカスタムマッチルールと除外ルールを作成して、挿入するページを制限できます。これらのルールを構成しない場合、デフォルトでは、AppDynamics は有効なビジネストランザクションによってアクセスされたすべてのページに挿入します。

これらのルールを使用して、一致基準に基づいてインジェクションに含める、またはそれから除外するビジネストランザクションを微調整します。たとえば、URL に特定の文字列が含まれていたり、特定の cookie を設定するビジネストランザクションをすべて除外できます。包含ルールと除外ルールの構成は似ています。包含か除外、どちらに基づいてトランザクションを制限するかは、状況によります。

自動インジェクションのビジネストランザクションの指定

自動インジェクションを行うには、少なくとも 1 つのビジネストランザクションを選択する必要があります。

  1. スクリーンショットの右側のリストで、1 つまたは複数のビジネストランザクションを選択します。(ビジネストランザクションが表示されない場合は、[Refresh List] をクリックします)。すべてのビジネストランザクションがここに表示されるわけではありません。このリストには、Jasper でコンパイルした JSP/ASP.NET、ASP.NET Core、または ASPX.NET ページに基づいて、自動インジェクションのために AppDynamics が解析できるトランザクションのみが含まれています。

  2. [< Add] をクリックすると、ビジネストランザクションが左側のリストに移動します。
  3. 有効にするすべてのトランザクションが左側に表示され、有効にしないすべてのトランザクションが右側に表示されるまで繰り返します。
    Automatic JavaScript Injection
  4. [Save] をクリックします。

自動インジェクションのマッチルールの作成

アプリケーションのすべてのページをインストゥルメント化する必要がない場合があります。たとえば、アプリケーションのページ数が非常に多い場合は、ライセンスの制限に達しないように、ビジネス用の主要なページだけをインストゥルメント化することが必要になる場合があります。または、セットアップおよびテストフェーズでは、最初のサンプルを管理しやすいように、いくつかのページをインストゥルメント化するだけでよい場合があります。 

マッチルールを使用して、特定のページを含めるか、または除外します。

  1. 閉じている場合は [Only enable Automatic Injection for certain Pages] を展開します。
     Request Match Rules
  2. [plus] アイコンをクリックして、マッチルールまたは除外ルールを作成します。[Create HTTP Request Match Rule] ダイアログが表示されます。
     Create HTTP Request Match Rule
  3. 照合する 1 つまたは複数の条件を選択します。複数の条件を選択した場合、ルールが有効になるには、allが一致する必要があります。gear アイコンを使用して、NOT 条件を設定します。一致ルールに関する一般情報については、「正規表現の使用」を参照してください。
  4. [Save] をクリックします。
  5. 外側の構成ペインの [Save] をクリックします。

後でマッチルールを編集または削除するには、そのルールをリストで選択し、[Edit] または [Delete] アイコンをクリックします。