このページでは、PHP Agent に特有のトランザクション検出と構成手順について説明します。「トランザクション検出ルール」を参照してください。
PHPエントリポイント
エントリポイントとは、ビジネストランザクションが開始する場所であり、通常はURIやページコールバック名、MVCコントローラアクション、ページテンプレート名、またはページテンプレートです。PHP Agent は、「PHP対応環境」の「PHP フレームワークおよびプロトコル」に一覧表示されているエントリポイントタイプを自動検出してモニタします。
エージェントがフレームワークを検出できない場合、エントリポイントタイプはデフォルトでPHP Webになります。PHP Webは、アプリケーションに対するすべてのHTTPリクエストを自動検出します。
エントリポイントによるモニタリングの有効化
トランザクションの監視は、エントリポイントタイプごとに有効または無効にすることができます。
モニタリングを無効にすると、エージェントはそのタイプのサーバーにおけるすべてのアクティビティの検数、測定、記録を停止します。
PHP エントリポイントタイプの [Transaction Detection] パネルで、[Transaction Monitoring] のチェックボックスをオンまたはオフにすることでモニタリングを有効または無効にします。
トランザクションの命名
デフォルトで、PHPエージェントは、サービスリクエストURLの最初の2つのセグメントにちなんで命名されます。Webベースのどのビジネストランザクションエントリポイントについても同じ方法でデフォルトの命名スキームを変更できます。
複数レイヤのフレームワーク アーキテクチャを使用する PHP ベースのエントリポイントティアの場合、トランザクションを処理する最後のフレームワークで PHP ビジネストランザクションの名前を決定します。たとえば、受信リクエストの処理パスが PHP Web > MVC > Drupal 8 の場合、新しいビジネストランザクションはリクエスト処理フローの前のレイヤではなく、Drupal 8 呼び出しに基づいて命名されます。
エントリポイントによるバーチャルホストの命名
単一のWebサーバーに複数のバーチャルホストが構成されている場合は、デフォルトのビジネストランザクション名にバーチャルホスト名をプレフィックスとして追加することで、他のビジネストランザクションと区別することができます。プレフィックスの使用を有効にするには、PHP エントリポイントタイプの [Transaction Detection] パネルで、[Use Virtual Host in Business Transaction names] チェックボックスをオンにします。この構成後に検出および命名されるトランザクションは、デフォルトの名前にバーチャルホスト名がプレフィックスとして使用されます。
たとえば、アプリケーションに同じ物理ホストで実行されている 2 つの exit.php アクションがあるとします。1 つのアクションは「phpagent1
」という名前の仮想ホストで実行され、もう 1 つは「phpagent2
」という名前の仮想ホストで実行されます。トランザクションの命名は次のように行われます。
- 仮想ホスト名を使用しない場合:エージェントは、exit.php へのすべてのリクエストを次の名前の単一ビジネストランザクションとして識別します。
exit.php
- 仮想ホスト名を使用する場合:エージェントはリクエストを
phpagent1 : exit.php
および phpagent2 : exit.php
という名前の 2 つの異なるビジネストランザクションとして識別します。
トランザクション検出と命名のカスタマイズ
デフォルトの競合が希望どおりにトランザクションを生成しない場合、以下の方法でトランザクション構成を変更することができます。
- モニターする必要のないエントリポイントを排除する除外ルールを作成。
- トランザクションを特定し命名するための一致ルールを指定するカスタムマッチルールを作成。
- PHP Webエントリポイントには、トランザクションの命名も構成可能。
トランザクション検出ペインにアクセスするには、[Configuration > Instrumentation > Transaction Detection > PHP-Transaction Detection] を選択します。