デフォルトでは、PHP エージェントはアプリケーションの Web ページにブラウザ監視を自動的に追加します。この自動プロセスでは、PHP エージェントがブラウザ エージェントの JavaScript スニペットを Web ページに挿入します。これは、ページの head 要素に JavaScript スニペットを手動で挿入することなく、フロントエンド ブラウザのパフォーマンスを監視できることを意味します。
PHP エージェント構成ファイルで自動インスツルメンテーションを有効または無効にすることも、PHP エージェント API を使用してブラウザ監視を手動で構成することもできます。
自動インストルメンテーションの使用または無効化
デフォルトでは、PHP エージェントはブラウザ監視の JavaScript スニペットをページに自動的に挿入します。この設定を変更するには、INI ファイルのnewrelic.browser_monitoring.auto_instrument
設定を編集します。
newrelic.browser_monitoring.auto_instrument=1
HTTP ヘッダー フィールド Content-Length
が設定されている場合、自動インスツルメンテーションは機能しません。この状況でブラウザ監視を使用するには、自動インスツルメンテーションを無効にし、JavaScript ヘッダーとフッターをテンプレートに 手動で挿入します 。
エージェントAPIを介した手動での計測
ブラウザモニタリングを手動で設定するには、適切なスクリプトをページに記述します。New Relic PHP エージェントには、必要な JavaScript のヘッダーとフッターを代わりに自動生成する API があります。
重要
PHP エージェント API の呼び出しは、PHP エージェントが実行されるように、 newrelic
拡張機能がロードされることが条件となります。エージェントが実行されていない場合、関数が定義されないため、JavaScript ヘッダーとフッターを生成する呼び出しはエラーになります。
詳細については、以下を参照してください。
auto_instrument
エージェント設定newrelic_get_browser_timing_header()
newrelic_get_browser_timing_footer()
様々なフレームワークに手動で対応
本ドキュメントでは、エージェントAPIを介してブラウザエージェントを手動で挿入するための詳細な手順は説明しません。これは、フレームワークを構築する方法があまりにも多く存在するためです。
手動インストルメントの例 では、すでに自動インストルメントをサポートしているフレームワークにインストルメントを追加する方法を紹介しています。別のフレームワークや、DrupalやWordPressの修正版を使用している場合は、適切な場所でインスツルメンテーション用のAPI関数を呼び出すようにしてください。
newrelic_get_browser_timing_header()
の戻り値を出力ページの<head>
タグの一部として、できれば最初に挿入します。- ドキュメント内の終了
</body>
タグの前の最後、またはその近くに、戻り値newrelic_get_browser_timing_footer()
を挿入します。
ここでは、基本的な例をご紹介します。
ブラウザのデータを見る
ブラウザ監視を有効にしてアプリのトラフィックを生成すると、アプリのブラウザSummaryページにデータが表示されます。 デーモンを初めて起動したとき (または PHP エージェントが新しいアプリケーションに遭遇したとき) は、デーモンが設定を検証するため、短い遅延が発生します。 その後、New Relic JavaScript スニペットが利用できるようになります。
オートインストルメントの無効化
PHP エージェントの設定でブラウザ監視を無効にする方法については、 ブラウザ監視設定オプション を参照してください。
API を使用してブラウザ監視を無効にする方法については、 newrelic_disable_autorum()
を参照してください。