メインコンテンツへスキップ
← 記事一覧に戻る
·運営·6 min read

【個人開発の運用】Sentry無料枠で月5000エラーまで完全監視する設定ガイド2026

Sentryエラー監視個人開発Next.js運用
【個人開発の運用】Sentry無料枠で月5000エラーまで完全監視する設定ガイド2026

ユーザーからの「動きません」通知で初めてバグに気づいていませんか?

結論: Sentryの無料枠 (Developer Plan / 月5000エラー) で、個人開発レベルの監視は十分カバーできます。 Next.js 16 プロジェクトなら導入は10分、Slack通知まで含めて¥0で完結します。

筆者はKOBO(Next.js 16 + Supabase + Stripe の有料SaaS)とmasatoman.net(MDXブログ)を運用中。以前はエラー通知なしで「ユーザーのDMで初めて500エラーに気づく」状態でした。Sentry導入後、月の本当のエラー件数は平均 120 件程度で、無料枠 5000 イベントに対して 2.4% の消化率。個人開発では有料プランはまず不要です。


無料枠の本当の制限 (2026-04 verified)

公式ドキュメントより、Developer Plan の制限は以下です。

項目無料枠個人開発で足りるか
エラーイベント5,000 / 月✅ 十分(平均消化 3% 程度)
Performance Unit10,000 / 月🟡 トレース頻度を絞れば十分
Replay50 / 月🟡 重大バグ再現用に予約
データ保持30 日✅ 問題なし
プロジェクト数1❌ 複数サービスは課金(後述の回避策あり)

最大の注意点はプロジェクト数 1 の制限。 複数サービス運用なら、後述の「1 プロジェクトに相乗りする」パターンを使います。


Next.js 16 への導入手順 (10 分)

1. SDK インストール

npx @sentry/wizard@latest -i nextjs

ウィザードが sentry.client.config.ts / sentry.server.config.ts / sentry.edge.config.tsnext.config.js のラップを自動生成します。

2. DSN を環境変数に

# .env.local
NEXT_PUBLIC_SENTRY_DSN=https://xxxxx@oXXXXXX.ingest.sentry.io/XXXXXXX
SENTRY_AUTH_TOKEN=sntrys_xxxxxxxxxxxx

Vercel にも同じ値を登録。SENTRY_AUTH_TOKEN は本番ビルド時の source map アップロードに必須です。

3. ノイズ除去フィルタを入れる

Developer Plan で 5000 / 月を食い潰す最大要因は、拡張機能由来の ResizeObserver loop limit exceeded やボット由来の 404 です。

// sentry.client.config.ts
Sentry.init({
  dsn: process.env.NEXT_PUBLIC_SENTRY_DSN,
  tracesSampleRate: 0.1,
  replaysSessionSampleRate: 0,
  replaysOnErrorSampleRate: 1.0,
  ignoreErrors: [
    "ResizeObserver loop limit exceeded",
    "Non-Error promise rejection captured",
    /chrome-extension:\/\//,
  ],
  beforeSend(event, hint) {
    // 404 は通知しない
    const status = (hint?.originalException as { statusCode?: number })?.statusCode;
    if (status === 404) return null;
    return event;
  },
});

tracesSampleRate: 0.1 は Performance Unit 節約のため。個人開発では 10% サンプリングで十分です。


Slack 通知を ¥0 で飛ばす

Sentry 側の Integration → Slack を接続し、Alerts で以下を設定。

  • Issue Alerts: 新規エラー(初回発火)のみ通知
  • Metric Alerts: 5 分間で 10 件以上同一エラー(スパイク検知)
  • 環境フィルタ: environment:production のみ

開発中のローカル例外まで飛ばすと Slack が荒れます。environmentprocess.env.VERCEL_ENV で明示するのが鉄則です。

Sentry.init({
  dsn: process.env.NEXT_PUBLIC_SENTRY_DSN,
  environment: process.env.VERCEL_ENV ?? "development",
});

複数サービスを 1 プロジェクトに相乗りさせる

無料枠はプロジェクト 1 つ。でも tags でサービスを分ければ、実質マルチプロジェクトとして運用できます。

Sentry.init({
  // ...
  initialScope: {
    tags: { service: "kobo-web" }, // サービスごとに変える
  },
});

Sentry UI 側で service:kobo-web service:masatoman-net などで絞り込めば、混在しても困りません。有料化(月 $26〜)する前に、まずこの運用で粘るのが個人開発流です。


まとめ

やること所要時間
npx @sentry/wizard で導入3 分
ノイズ除去フィルタを入れる3 分
Slack Integration 接続4 分
合計10 分 / ¥0

「ユーザーからの不具合報告で初めて気づく」状態を今日で終わらせましょう。


で、どう稼ぐ?

エラー監視は 収益に直結する運用基盤 です。特に有料SaaS では、決済フロー途中の 500 エラーはそのまま失注。Sentry で Stripe Checkout のサーバーサイドエラーを 5 分以内に検知できれば、ユーザーにリカバリ DM を送れて取りこぼしを減らせます。

筆者も「ユーザーが決済ボタンを押したが Stripe Webhook で失敗していた」事故を Sentry Alert で発見したことがあり、これが無ければそのまま取りこぼしになっていました。監視は「売上を守る保険」です。


関連記事

Supabase RLS ペイウォールパターン

RLSを使った有料コンテンツゲーティングの実装パターンを全公開

Git シークレット漏洩防止ガイド2026

.gitignoreとpre-commitフックで秘密情報の漏洩を防ぐ設定方法

Stripe決済導入ガイド2026

個人開発プロダクトにStripe決済を組み込む実装手順を初心者向けに解説

Claude Code で副業を始める 6ステップ — 無料

環境構築から最初の売上まで、週1配信で学べる無料メール講座。登録で「収益化チェックリスト 15 項目」もプレゼント。

副業6ステップ講座(無料)

この記事が役に立ったらシェア