New Relic Errors Inbox 超入門：エラーを「見つける・直す」を爆速に！（基礎編）

　アプリを使っているとき、突然「エラーが発生しました」と表示されたら、ちょっと残念な気持ちになりますよね。アプリやサービスを作る私たち開発者・運用者にとって、エラーは避けられない問題です。

　でも、エラーが起きたときに「どこで？」「何回？」「誰に影響してる？」とすぐに分かれば、もっと早く直せて、ユーザーもハッピーになります。

　この記事では、New Relicの便利な機能 **「Errors Inbox（エラーズ・インボックス）」** を使って、アプリのエラーを効率よく見つけ、解決する方法を、**難しい話は抜きにして**ご紹介します。

# 1. なぜ今、Errors Inbox があなたの助けになるのか？
　「リリースしたばかりのサービスで、ユーザーから『エラーで動かない』と問い合わせが来た…」「夜中にアラートが鳴り、大量のログを漁る羽目になった…」。開発者なら一度は経験があるでしょう。

　アプリのエラーは、どんなに注意深く作ってもゼロにはできません。しかし、**エラーを「いかに早く見つけ、適切に直すか」** は、サービスの信頼性やユーザー体験、ひいてはビジネスの成功を左右する極めて重要な要素です。

### エラー監視の課題と限界
　これまでのエラー監視には、こんな課題がありました。

**ログ監視は大変:** ログがたくさんあると、手動でチェックするのは無理。大事なエラーを見逃しがちです。
**アラート疲れ:** 何でもかんでもアラートを出すと、通知が多すぎて本当に大事なアラートを見落とし、対応が遅れることがあります。
**複雑なシステムのエラー特定は手間:** 細かく分かれたシステム（マイクロサービス）では、どこでエラーが始まり、どう広がったのかを見つけるのが大変です。

　これらの課題を放っておくと、ユーザーからの不満が増えたり、アプリが動かなくなったりして、サービスの信用が大きく下がってしまうかもしれません。

### ゴールデンシグナル「Errors」の重要性
アプリの健康状態を知る上で、GoogleのSREチームが提唱する **「ゴールデンシグナル（Golden Signals）」** という考え方があります。これは、監視すべき特に重要な4つの指標です^1。

ゴールデンシグナルは次の4つです。

* **Latency (レイテンシ):** アプリの応答速度。ユーザーがどれくらい待つか
* **Traffic (トラフィック):** アプリへのアクセスの量。どれくらいの負荷がかかっているか
* **Errors (エラー):** 失敗した処理の割合や数。ユーザーが困っているかどうか
* **Saturation (飽和):** アプリがどれくらい忙しいか。CPUやメモリなどの使用状況で、将来の問題を予測します

　この中でも、ユーザーが直接不満を感じやすいのが、まさに **「Errors（エラー）」** です。エラーは、ユーザーがアプリを使えないことを意味し、ブランドイメージの低下やユーザー離れに直結します。

　だから、**「エラーを効率よく見つけ、その影響度を正しく把握し、優先順位をつけて素早く直すこと」** が、今のサービス運用では最も大切な課題なんです。

## 今回のポイント
　そこで今回ご紹介するのが、オブザーバビリティプラットフォームNew Relicが提供する強力な機能 **「Errors Inbox」** です。

　Errors Inboxは、このゴールデンシグナルの一つ **「Errors」に特化** し、開発者や運用者がエラーを効率的に監視、整理（トリアージ）、分析、解決するためのツールです。

　この記事を読み終えることで、あなたは以下のことを学び、明日からのエラー監視を劇的に改善できるようになるでしょう。

* **Errors Inbox の基本的な使い方とそのすごさ**
* **エラーを効率よく見つけ、整理し、分析する方法**
* **チームでエラー対応を進めるヒント**
* **New Relicの他の機能と連携して、もっと全体的にエラーを監視する方法**

　「え？まだログからエラーを見つけてるんですか…？」そんな時代はもう終わり。Errors Inbox を活用して、大事なエラーを見逃さず、素早い問題解決でアプリの信頼性を高めましょう！


# 2. Errors Inbox とは？「エラーの受信箱」ってどういうこと？
　さて、いよいよ Errors Inbox について詳しく見ていきましょう。New Relic を使っている方なら、アプリ（APM）やブラウザ（Browser）の監視データは見たことがあるかもしれませんね。Errors Inbox は、これらのデータから **「エラー」だけを集めて管理する、「エラー専用の受信箱」** のような機能です。

**Errors Inbox のコンセプト：あらゆるエラーを一箇所で管理**
　想像してみてください。あなたは複数のアプリを動かしていて、それぞれ違うプログラミング言語で書かれ、違う場所で動いています。ある日、ユーザーから「アプリが動かない」という連絡が来ました。

この時、あなたはどうしますか？

* それぞれのアプリのログを一つずつ見る？
* バラバラに届くアラート通知を探す？

これでは時間がかかりすぎますし、どこが原因か探すだけでも大変です。

Errors Inboxは、この悩みを解決するために作られました。

## Errors Inbox が行うこと

* **自動で見つけて集める:**
　New Relicの監視システムがアプリのエラーを自動で見つけ、Errors Inboxに一箇所に集めます。まるでメールが受信箱に届くように。
* **ムダをなくす:**
　たくさん出る似たようなエラーや、よくある小さなエラーが一つずつ表示されると大変ですよね。Errors Inbox は、**同じエラー（フィンガープリント）を持つものを「グループ」にまとめてくれます。** これにより、本当に注目すべき問題に集中できます。
* **状況を素早く把握:**
　グループ化されたエラーは、その影響の大きさや、どれくらいの頻度で起きているか、最新の状況がひと目でわかります。だから、「今、一番大事なエラーはどれ？」「どこのアプリで問題が起きている？」と直感的に把握し、すぐに対応を始められます。

　Errors Inbox は、単にエラーログを見るツールではありません。エラーを見つけるところから、整理して、詳しく分析するまで、**エラー対応の全ての流れをスムーズにする「司令塔」** のような機能なんです。

## Errors Inbox の主要機能：エラーを「見える化」し「すぐ行動できる」ようにする
Errors Inbox が、エラーを「見える化」し、対応を「すぐ行動できる」ようにする主な機能を見ていきましょう。

### 自動グループ化とムダをなくす
　New Relicは、エラーの種類、メッセージ、エラーが起きた場所（スタックトレース）などから、同じエラーかどうかを自動で判断し、一つのグループにまとめます。

　例えば、アプリの同じ場所で「データが見つかりません」というエラーが100回起きても、Errors Inboxでは1つのエラーグループとして表示され、発生回数が「100」とカウントされます。

　**メリット:** たくさんのエラーの中に埋もれることなく、影響が大きい、本当に対応が必要な問題に集中できます。

![group.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3043202/d7d6261c-1651-45ec-bb00-643569d9ddfe.png)

### 影響度（User Impact）による優先順位付け
　Errors Inbox は、特定のエラーがユーザーにどれくらい影響を与えているかを自動で計算し、「User Impact」として表示します。このUser Impactは、エラーが起きた回数だけでなく、影響を受けているユーザーの数を元にしています。

**メリット:** 「どれから直すべきか？」と迷うことなく、ユーザーに最も影響を与えているエラーから優先して対応できます。

![UserImpact.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3043202/11d10e5d-984b-4d6e-9402-f886ed53c992.png)

### トリアージステータス：エラーの状態をきちんと管理
　Errors Inboxには、各エラーグループの状態を示す5つのステータスがあります。これを使えば、チーム全体でエラーの対応状況をはっきりさせることができます。

* **Unresolved (未解決):** まだ解決していない、または解決予定のないエラーです
* **Resolve in next version (次のバージョンで解決予定):** 次のリリースで直す予定のエラー
* **Resolve in specific version (特定のバージョンで解決予定):** あるバージョンで既に直した、または直すことが決まっているエラー
* **Resolved (解決済み):** エラーの原因を直して、もう起きなくなったエラー。もし再発したら「Unresolved」に戻ります
* **Ignored (無視):** 今すぐ対応しなくていい、一時的なエラーなど。不要なエラーを非表示にできます

![ステータス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3043202/0da6edc4-bbce-49ab-b7cc-19288b5f91b7.png)

 チームの中で誰が担当しているのかというステータスも管理できます。
* **Acknowledged (確認済み):** これは特別なステータスで、チームの誰かがエラーを見て、対応を始めたことを示します。「このエラーは私が担当中」という意思表示になります

![acknowledged.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3043202/1c9d4450-d959-4c78-8490-a9fba8607265.png)


**メリット:** 「誰かがもう見てるかな？」「これはもう直したっけ？」といった混乱を防ぎ、チーム全体でエラー対応をスムーズに進められます。

### 詳しい情報を見て、他の機能と連携
　Errors Inbox でエラーをクリックすると、そのエラーの詳しい情報が見られます。ここが、エラーの原因を深く調べるための場所です。

**スタックトレース:** エラーがアプリのコードのどこで、どのように起きたかを示してくれます。直すべき場所を見つけるための地図です。

![StackTrace.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3043202/60c17ca8-5e74-4820-bf22-cb86b4f68295.png)

**関連するリンク:** 「Distributed Trace（アプリの処理の流れを見る）」や「Logs（関連するログを見る）」などのボタンがあります。これらをクリックすると、エラーが起きたときのアプリの動き全体や、その前後の詳しいログが見られ、原因探しがとても速くなります。

![related.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3043202/91c0bfc6-b0d9-401b-992a-8a4e195142f4.png)

**属性 (Attributes):** エラーが起きたときの「状況」に関する情報です。例えば、使っていたブラウザやアクセスしたページ、ログインしていたユーザーなど、原因を探るヒントになります。

![attributes.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3043202/39919274-6198-4852-8881-ff6a34a731f5.png)

　これらの機能で、Errors Inbox は単に「エラーの一覧」を見せるだけでなく、「エラーを見つけて、原因を突き止め、解決するまで」の全ての作業を強力にサポートする、開発者・運用者にとって頼りになるツールなんです。

 # まとめ
　New Relic Errors Inbox は、アプリのエラーを見つけ、管理し、解決するまでの流れをグッと楽にしてくれる便利なツールです。特に、アプリの健康状態を表す大事な指標である「Errors（エラー）」に特化しているので、

* **エラーを見逃さない**
* **素早く原因を見つける**
* **チームで効率よく対応する**

といったことが可能になります。

エラー対応の実践編も計画しています。楽しみにしていてください。

　New Relicでは、**新しい機能やその活用方法**について、QiitaやXで発信しています！
**無料でアカウント作成**も可能なのでぜひお試しください！