問題
ブラウザアプリに、 AJAXデータ が表示されていません。
解決
アプリケーションがでインストルメントされており、他のPro 機能のデータを正しく収集している場合は、次の手順に従います。
ページがインストゥルメントされたことを確認します
XMLHttpRequest を使用している場合は、 browserの開発コンソールを使用して、ページが正しくインストゥルメントされたことを確認してください。 コンソールにXMLHttpRequest
および/またはfetch
を入力します。 インストゥルメンテーションが失敗した場合は、次のようなメッセージが表示されます。
// XMLHttpRequestƒ XMLHttpRequest() { [native code] }
他に何か表示された場合、検証は成功しています。
AJAX インストゥルメンテーションが有効になっていることを確認します
AJAX インストゥルメンテーションはライトエージェントには含まれていません。
AJAX インストゥルメンテーションを確認するには:
browserコンソール開発ツールを開き、
newrelic.initializedAgents
オブジェクトを確認します。 このオブジェクトには、ページ上で実行されているすべてのエージェントのエントリが含まれています。 通常、ページにはエージェントが 1 つだけ存在します。初期化されたエージェント オブジェクトで
runtime
オブジェクトを検査します。 このオブジェクトには、loaderType
のような実行中のエージェントに関する情報が含まれています。loaderType
がlite
の場合、AJAX インストゥルメンテーションは使用されているエージェントに含まれません。loaderType
がlite
でない場合は、初期化されたエージェントでconfig
およびfeatures
オブジェクトを確認することもできます。config
オブジェクトには、enabled
ブール値を持つajax
オブジェクトを含む、エージェントの実行時設定が含まれます。features
オブジェクトには、ajax
エントリを含む、エージェントによって初期化された各機能のエントリが含まれている必要があります。
この AJAX オブジェクトにブール値
enabled
(true
) とfeatAggregate
エントリが含まれていることを確認します。これらの項目のいずれかが当てはまらない場合、New Relic browserエンティティ上の の設定変更、または
NREUM.init
HTML にコピーして貼り付けられた オブジェクトへの手動変更が原因で、AJAX インストゥルメンテーションが初期化されていない可能性があります。 。重要
newrelic.initializedAgents
古いバージョンまたはサポートされていないバージョンのエージェントを使用している場合を除き、ページ上のエージェントの存在を確認するために使用できるプロパティです。
拒否リストの設定を確認する
AjaxRequest イベントの作成時に特定のドメインとパスを無視するようにエージェントを構成できます。
ブラウザの開発コンソールを使用して、 newrelic.init
を実行して現在の AJAX 拒否リスト ルールを確認します。deny_list
という配列を含むプロパティ ajax
を探します。
拒否リストに見覚えのないエントリ、または AJAX 呼び出しのフィルタリングの原因となっているエントリがある場合は、 「AjaxRequest イベントのフィルタリング」 ドキュメントを参照して詳細なガイダンスを確認してください。
ネットワークアクセスを確認する
オブジェクトが正しくストゥルメントされた場合は、 browserの開発者ツールでネットワーク トラフィックを監視しながら、アプリケーションで AJAX 呼び出しをトリガーしてみてください。 最大 1 分待ってから、 xhr
問題を持つbam.nr-data.net/jserrors
への呼び出しを探します。 通話が失敗した場合は、ネットワークの問題がないか確認してください。 または、ペイロードがbel.7;2
で始まるbam.nr-data.net/events
へのリクエストを探します。
この呼び出しが表示されない場合、ネットワーク アクセスに関係のないエラーで失敗した場合、または成功してもデータが表示されない場合は、トラブルシューティングのドキュメントに進んでください。
JSONPがリクエストに与える影響を確認する
リクエストでJSONPを使用する場合、これらのリクエストはAJAX UI ページに表示されません。
ただし、それらをセッショントレース内のアセットとして表示することはできます。
SPA 監視 を使用している場合は、 Page viewsページのAJAXタブで表示できます。
JSONPが認識されるための要件
- JSONPの各リクエストには、固有のコールバック関数を使用する必要があります。ほとんどの一般的なライブラリ(jQueryなど)は、リクエストごとに固有のコールバック関数を動的に生成します。
- New Relic によって認識されるためには、コールバック関数名を含むクエリ文字列の名前が
"callback"
または"cb"
である必要があります。これは、最も一般的なライブラリのデフォルトの動作です。
ヒント
これらのトラブルシューティング手順のいずれかが失敗する場合、または AJAX データの欠落に関する問題が依然として発生する場合は、 support.newrelic.comでサポートを受けてください。