Open5
Sentry を学ぶ

- (2022/04) Sentry で始めるエラー監視

用語
- Projects
- エラーイベントのトラッキング対象となる個別のアプリケーション単位です。1つのサービスが複数の異なる言語やフレームワーク、リポジトリなどで管理されている場合、それぞれを別のプロジェクトとして用意することが推奨されています。
- Issues
- 同じエラーイベントをグルーピングしたものです。発生タイミングが異なるエラーであっても、同じエラーであれば、それが1つのIssueとして扱われます。「同じエラー」の定義はエラーイベントのfingerprintが一致しているかどうからしく、この辺りはSentry側がうまく扱っているようです(カスタマイズも可能)。異なるIssueと分類されたエラーイベントを手動で同じIssueにまとめることも可能です。
- Quota
- プランの課金体系に関係する月間のエラーイベント発生数。

同じアプリケーションで prd/stg の環境による違いはどこで設定する?
A. アプリケーションの Sentry の初期化部分で environment
という設定項目がある。これを prd
や stg
に設定すると、環境ごとに Sentry のエラーレポート情報をフィルタリングできる。
environment
の機能により、1 つのプロジェクト内で環境ごとのエラー追跡が可能になる。Environment を設定しておくと、どの環境で問題が発生したのかが明確になり、トラブルシューティングがより効率的になる。
Sentry の Web UI からでも Environment の情報を確認・フィルタリングできる:
- Issues リストの画面で Environment でフィルタリングできる
- Performance モニタリングも Environment 別に分析できる
- Release tracking も Environment ごとに追跡できる

こんな感じ
# Python example
sentry_sdk.init(
dsn="...",
environment="production" # ここで環境を指定
)

Sentry Remix SDK
Sentry の Remix SDK は、クライアントサイドとサーバーサイドの両方の操作について、エラーや例外の自動報告、およびパフォーマンス指標の収集を可能にする。
この SDK は、フロントエンド用の React SDK とバックエンド用の Node SDK を基盤としており、これらの SDK で利用可能な機能はすべて Remix SDK でも使用できる。