メインコンテンツへスキップ
Pro プラン10 minutes中級

エラーグループと集計

Zenovayが類似エラーをどのようにグループ化するか、そしてエラートリアージワークフローを管理する方法を理解します。エラートラッキングガイドを読む。

errorsgroupingaggregationtriagedebugging
最終更新日:

Zenovayが類似エラーをどのようにインテリジェントにグループ化してノイズを減らし、デバッグを高速化するかを学びます。

Zenovay エラーダッシュボードでグループ化されたエラーを表示、発生数、影響を受けたユーザー、ステータスが表示されている。
Errors タブはすべての JavaScript およびネットワークエラーをグループ化し、発生頻度と影響を受けるユーザー数を表示します。

エラーグループを見つける場所

DomainsからWebサイトのダッシュボードを開き、Errorsタブを選択します。タブには2つのサブタブがあります:

  • Errors — JavaScriptおよびネットワークエラーのグループ化されたリスト(この記事)。
  • Frustration — レイジクリック、デッドクリック、およびその他のフラストレーション信号。

エラートラッキングはProプラン以上で利用可能です。

エラーグループ化の仕組み

フィンガープリントによるグループ化

個々の発生を表示する代わりに、Zenovayは以下から派生したフィンガープリントを使用して、同一エラーを単一グループに折りたたみます:

  1. エラータイプ — TypeError、ReferenceError など
  2. エラーメッセージ — メッセージパターン
  3. スタックトレース — コールスタックの最上位フレーム

同じフィンガープリントを持つ2つの発生は同じグループに入り、単一の繰り返されるバグが発生数と共に1回表示され、何千回も表示されることはありません。

これら2つの発生はグループ化されます:

// エラー 1: ユーザー ID 123
TypeError: Cannot read property 'name' of undefined
    at getUserName (user.js:45:12)
    at renderProfile (profile.js:78:5)

// エラー 2: ユーザー ID 456
TypeError: Cannot read property 'name' of undefined
    at getUserName (user.js:45:12)
    at renderProfile (profile.js:78:5)

同じグループである理由:

  • 同じエラータイプ(TypeError)
  • 同じメッセージ
  • 同じスタックトレース位置

エラーグループリスト

リスト内の各グループは以下を表示します:

メトリック説明
発生数エラーが発火した総回数
ユーザー影響を受けたユニークビジタ
最初に見たグループが最初に記録された時期
最後に見た最新の発生
カテゴリJavaScript、ネットワーク、リソース、またはカスタム
重度クリティカル、高、中、または低
ステータス未解決、調査中、解決済み、または無視

グループ詳細パネル

グループをクリックして詳細パネルを開きます。これには以下が含まれます:

  • サンプル発生 — 最近のインスタンスの完全な詳細(メッセージ、スタックフレーム、ブレッドクラム)
  • 頻度チャート — 時系列での発生
  • 影響を受けたページ — エラーが最も多く発生する場所
  • ブラウザ&デバイスの内訳 — どのブラウザ、オペレーティングシステム、デバイスが影響を受けているか
  • インサイト — エラーが発生する理由、どこを探すべきか、どのように修正するかに関するカテゴリ固有のガイダンス

情報

ソースマップをアップロードして、ミニフィケーション済みの本番スタックトレースをオリジナルのソースファイルに解決してください。Source Maps & JS Errorsを参照。

エラーステータスワークフロー

ステータスタイプ

ステータス説明
未解決新規または未解決エラー — デフォルト
調査中アクティブに調査中
解決済み修正がデプロイされ、エラーは停止すべき
無視修正予定のない既知の問題(例:サードパーティノイズ)

ステータスの変更

エラーグループの詳細パネルから、ステータスボタンを使用して調査中解決済み、または無視としてマークします。グループを解決済みまたは無視としてマークすることで、デフォルトの未解決ビューから削除され、リストが実際にオープンなものに焦点を保ちます。

ステータスを変更するには、Webサイトの編集アクセス権を持つチームロールが必要です。ビューアはエラーグループを閲覧できますが、ステータスは変更できません。

フィルタリング & 検索

エラーリストは以下で絞り込むことができます:

フィルタオプション
ステータスすべて、未解決、調査中、解決済み、無視
カテゴリJavaScript、ネットワーク、リソース、カスタム
重度クリティカル、高、中、低
日付範囲今日、昨日、7 / 14 / 30 / 90 日間、すべての時間

検索ボックスはエラーメッセージまたはタイプでグループをフィルタリングします。利用可能な日付範囲はプランのデータ保持期間に依存します。

ノイジーなグループの抑制

グループが純粋なノイズ(例えばブラウザ拡張機能からの一度きりの発生)の場合、詳細パネルから無視としてマークしてください。無視されたグループはデフォルトの未解決ビューから削除され、リストが焦点を保ちますが、後で再検討する場合に備えて履歴は保持されます。気が変わった場合は、ステータスを未解決または調査中に戻してください。

ベストプラクティス

トリアージワークフロー

  1. 定期的にレビュー — 定期的なルーチンの一部として未解決のエラーを確認します。
  2. 影響度で優先順位付け — 多くのユーザーに影響するグループは通常、発生回数の多さより重要です。
  3. クイックウィンを優先 —簡単な修正をすぐに解決してノイズを減らします。
  4. ステータスを一貫して使用 — 未解決リストを実際に注意が必要なものに保ち、既知のサードパーティノイズは無視します。
  5. スパイクを監視 — 新しいエラースパイクについてプロアクティブに知るためにパフォーマンスアラートを設定します。

効果的なグループ化

  • ソースマップを最新に保ち、スタックトレースが読みやすい状態を保ちます。
  • コード内で一貫した説明的なエラーメッセージを使用します。
  • 手動でトラッキングされた(カスタム)エラーにコンテキストを追加します。

トラブルシューティング

グループが多すぎる

原因:

  • 高度に動的なエラーメッセージ(メッセージテキストに多くの可変データ)
  • ソースマップが不足している
  • サードパーティスクリプトエラー

解決策:

  • 安定した正規化されたエラーメッセージを使用する
  • ソースマップをアップロード
  • サードパーティノイズを無視としてマーク

エラーがグループ化されない

確認事項:

  • スタックトレースがエラーで利用可能
  • エラーが同じソースロケーションを共有
  • エラータイプとメッセージが一致

次のステップ

この記事は役に立ちましたか?