• ログイン無料アカウント

JavaScriptエラーページ:エラーの検出と解析

ブラウザモニタリングのJS errors UIページでは、JavaScriptエラーがどこで発生しているのかを示し、根本原因の特定に役立つツールを提供します。また、JSエラーデータに関して問い合わせてクエリビルダーでダッシュボードを作成するか、ブラウザAPIを利用して処理済みエラーをモニターできます。

JavaScriptエラーを表示する

JavaScriptエラーを検証するには:

  1. one.newrelic.com > ブラウザ >(アプリを選択)> JS errorsに移動します。
  2. UIで利用可能なオプションを利用して、何がエラーの原因となっているかを検証します。
  3. オプション:UIでイベントログまたはスタックトレースを見直します。
  4. オプション:JSエラーデータに関して問い合わせてダッシュボードを作成、またはAPIを使用してエラーをモニターまたはログに記録します。

UIで使用可能なオプションには、以下が含まれます。

以下を行う場合...

実行する操作

長いエラーリストを検索

Search ボックスを使用すると、キーワード、URL等でエラーをすぐに見つけて、修正できます。

attributesをグループ化およびフィルタリング

  • エラーデータがグループ化される方法を変更するには、Group by関数を使用します。(Page loadsチャートは、グループ化で変更できません。)
  • 特定の属性を伴うエラーのみを表示してデータをフィルタリングするには、Filterドロップダウンを使用します。

注目すべき偏差とパターンを表示する

エラープロファイルテーブルは、通常よりも頻繁にエラーが発生するブラウザバージョンまたはデバイスなど、注目すべき統計的変動を示しています。

エラー詳細を検証する

  • メインページからエラーを選択して、エラーが発生した上位5つのブラウザ、デバイス、関連URLなど、そのエラーに関する詳細情報を表示します。
  • Error instancesを選択して、イベントログスタックトレースが利用可能な場合はこれを表示します。

エラーにつながったイベントを検証する

イベントログには、エラーにつながったブラウザインタラクション、AJAXコール、そしてトレースが表示されます。

Minified版JavaScriptをデコードする

JavaScriptがMinified版の場合、JS errorsページのエラーはあまり役に立たない可能性があります。Minified版JavaScriptをデコードして、こうしたエラースタックトレースを活用するには、New RelicにJavaScriptソースマップをアップロードします。

browser_jserrors_overview.png

one.newrelic.com > ブラウザ >(アプリを選択)> JS errors:このページを使用して、エラーをグループ化およびフィルタリングし、スタックトレースの詳細を調べて、トレンドを調べます。

JSデータの問い合わせと視覚化

New Relicは、JSエラーをイベントデータとして保存します。これにより、クエリビルダーでエラーデータをクエリできます。NRQLクエリを実行して、表示または共有するダッシュボードを作成するには、クエリビルダーでJavaScriptErrorイベントタイプを問い合わせます。

APIを使用して処理済みエラーを監視する

ブラウザAPIのnoticeErrorコールを使用すると、ご利用のアプリケーションが処理したエラーやその他のエラーを関知し、ログ記録できます。

イベントログを見直す

重要

SPAモニタリングを有効にする必要があります。

イベントログには、JSエラーにつながったブラウザインタラクション、AJAXコール、トレースが表示されます。これによって、エラーの根本原因をトラブルシューティングできます。

browser_jserror_log.png

one.newrelic.com > ブラウザ >(アプリを選択)> JS errors >(エラーを選択)> Error instancesSPAモニタリングを有効にすると、イベントログにはエラーに至るまでのアクティビティが表示されます。

イベントログ(利用可能な場合)を表示するには:one.newrelic.com > ブラウザ >(アプリを選択)> JS errors >(エラーを選択)> Error instancesに移動します。イベントログにイベントがない場合は、イベントログは表示されません。

たとえば、エラーメッセージを示すAJAXリクエスト後にJSエラーが発生している場合、AJAXリクエストに正しい情報が含まれていない可能性があります。この場合、AJAXコールの失敗が原因となってJSエラーにつながります。

スタックトレースを表示する

スタックトレースでは、エラーが重要な機能性を損ねているか、そのエラーの重要性が低いかを示すことができます。エラーのスタックトレース(利用可能な場合)を表示するには:one.newrelic.com > ブラウザ >(アプリを選択)> JS errors >(エラーを選択)> Error instancesに移動します。

グローバルおよび一般的エラー

New Relicは、JavaScript関数をラップすることで、スタックトレース経由で投げられるエラー情報を取得します。エラーがスローされない場合、それらは利用できません。たとえば、AngularJSアプリケーションでAngularJSエラーがUIに表示されない際は、トラブルシューティング手順に従います。

一部の旧式のブラウザでは、次のエラーを利用できない場合があります。

  • SyntaxError またはScript error:これらは、スクリプトの読み込み中に発生するため、スタックトレースを生成しません。
  • インラインJavaScriptまたはイベントハンドラのエラー:ラップされていません。
  • 別ドメインに存在するサードパーティースクリプトが投げたエラーは、利用できません。
  • 古いブラウザで発生したエラー:使用可能なスタックトレースを提供できない場合があります。一部のケースでは、スタックトレースが一切提供されない場合もあります。

エラー収集はJavaScript関数をラップすることで行われるため、ブラウザによって下位で投げられるエラー(オリジン間リソース共有エラー等)も利用できません。

Copyright © 2022 New Relic Inc.