error-tracking-nextjs について
Next.js アプリケーションに PostHog のエラートラッキングを追加するスキルです。既存のエラー処理を維持しながら、初期設定、例外の捕捉、ソースマップなどを案内します。
主な機能
- 01PostHog のエラートラッキング設定を案内
- 02例外の自動捕捉を推奨
- 03境界や捕捉済みエラーを記録
- 04ソースマップのアップロードを案内
- 05Next.js 固有の指針を提供
活用シーン
- 01Next.js アプリにエラートラッキングを追加
- 02グローバルハンドラーが捕捉しないエラーを記録
- 03ソースマップでスタックトレースを解決
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ posthog/ skills --skill error-tracking-nextjsインストール後、Claude Code で/error-tracking-nextjsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/alerts.mdassigning-issues.mdfingerprints.mdmonitoring.mdnextjs.mdupload-source-maps.md詳細
Next.js 向け PostHog エラートラッキング
このスキルを使うと、Next.js アプリケーションに PostHog のエラートラッキングを追加できます。
参照ファイル
references/nextjs.md- Next.js エラートラッキングのインストール - ドキュメントreferences/fingerprints.md- フィンガープリント - ドキュメントreferences/alerts.md- エラートラッキングのアラートを送信 - ドキュメントreferences/monitoring.md- 問題を監視して検索 - ドキュメントreferences/assigning-issues.md- チームメイトに問題を割り当て - ドキュメントreferences/upload-source-maps.md- ソースマップをアップロード - ドキュメント
API の詳細とフレームワーク固有のパターンについては、ドキュメントを参照してください。
主な原則
- 環境変数:PostHog のキーとホスト URL には、必ず環境変数を使用してください。ハードコードしないでください。
- 変更は最小限に:既存のエラー処理と並行してエラートラッキングを追加してください。既存のエラー処理コードを置き換えたり、構成し直したりしないでください。
- まずは自動キャプチャ:手動キャプチャを追加する前に、SDK の初期化時に例外の自動キャプチャを有効にしてください。
- ソースマップ:スタックトレースがミニファイされたバンドルではなく、元のソースコードを指すように、ソースマップをアップロードしてください。
- 境界での手動キャプチャ:グローバルハンドラーに伝播しないエラーには、エラー境界と catch ブロックで
captureException()を使用してください。
フレームワークに関するガイドライン
- Next.js 15.3 以降では、最もシンプルなセットアップとして instrumentation-client.ts で PostHog を初期化してください
- フラグの読み込み状態と外部との同期を自動的に処理するため、フィーチャーフラグには useFeatureFlagEnabled() または useFeatureFlagPayload() フックを使用してください
- 分析イベントのキャプチャは、状態変化に反応する useEffect ではなく、ユーザー操作が発生するイベントハンドラーに追加してください
- データ変換に useEffect を使用しないでください。代わりに、レンダー中に派生値を計算してください
- ユーザーイベントへの反応に useEffect を使用しないでください。そのロジックはイベントハンドラー自体に記述してください
- 状態更新を連鎖させるために useEffect を使用しないでください。関連する更新はすべてイベントハンドラー内でまとめて計算してください
- 親コンポーネントへの通知に useEffect を使用しないでください。イベントハンドラー内で setState と併せて親のコールバックを呼び出してください
- プロパティが変わったときにコンポーネントの状態をリセットするには、useEffect を使うのではなく、そのプロパティをコンポーネントの key として渡してください
- useEffect は、外部システム(React 以外のウィジェット、ブラウザー API、ネットワークサブスクリプション)との同期にのみ使用してください
コメント
Markdown 対応