integration-flask について
Flask アプリに PostHog 分析を導入するスキルです。段階的なセットアップ手順と、初期化、ユーザー識別、例外追跡に関する Flask 固有の指針を提供します。
主な機能
- 01段階的なセットアップ手順
- 02Flask 初期化の指針
- 03ユーザー識別の指針
- 04例外追跡の指針
- 05プライバシーに配慮したイベントプロパティ
活用シーン
- 01Flask アプリへの PostHog 分析導入
- 02アプリファクトリーでの PostHog 初期化
- 03ログインまたは登録時のユーザー識別
- 04重要なフローでの例外追跡
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ posthog/ skills --skill integration-flaskインストール後、Claude Code で/integration-flaskを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/basic-integration-1.0-begin.mdbasic-integration-1.1-edit.mdbasic-integration-1.2-revise.mdbasic-integration-1.3-conclude.mdEXAMPLE.mdflask.mdidentify-users.md詳細
Flask 向け PostHog インテグレーション
このスキルは、Flask アプリケーションに PostHog アナリティクスを追加するためのものです。
ワークフロー
インテグレーションを完了するには、次の手順を順番に実行してください。
basic-integration-1.0-begin.md- PostHog のセットアップ - 開始 ← ここから始めてくださいbasic-integration-1.1-edit.md- PostHog のセットアップ - 編集basic-integration-1.2-revise.md- PostHog のセットアップ - 修正basic-integration-1.3-conclude.md- PostHog のセットアップ - 完了
参照ファイル
references/EXAMPLE.md- Flask のサンプルプロジェクトコードreferences/flask.md- Flask - ドキュメントreferences/identify-users.md- ユーザーの識別 - ドキュメントreferences/basic-integration-1.0-begin.md- PostHog のセットアップ - 開始references/basic-integration-1.1-edit.md- PostHog のセットアップ - 編集references/basic-integration-1.2-revise.md- PostHog のセットアップ - 修正references/basic-integration-1.3-conclude.md- PostHog のセットアップ - 完了
サンプルプロジェクトは、目標とする実装パターンを示しています。API の詳細についてはドキュメントを参照してください。
重要な原則
- 環境変数:PostHog のキーには必ず環境変数を使用してください。ハードコードしないでください。
- 最小限の変更:既存のインテグレーションに PostHog のコードを追加してください。既存のコードを置き換えたり、構成を変更したりしないでください。
- サンプルに合わせる:実装は、できる限りサンプルプロジェクトのパターンに従ってください。
フレームワークのガイドライン
posthog.api_keyとposthog.hostを使用して、create_app()内で PostHog をグローバルに初期化してください(リクエストごとには初期化しないでください)。- Flask には組み込みのエラーハンドラーがあるため、エラートラッキングには
posthog.capture_exception(e)を使って例外を手動で記録してください。 create_app()では、PostHog の初期化後に Blueprint を登録してください。- ソースコードは
venv/site-packagesディレクトリにあることを忘れないでください。 posthogは Python SDK のパッケージ名です。pip install posthogまたはpip install -r requirements.txtで依存関係をインストールしてください。シェルコマンドで、引用符なしのバージョン指定子(>=など)を直接使用しないでください。- CLI やスクリプトでは、終了前に必ず
posthog.shutdown()を呼び出してください。呼び出さないと、すべてのイベントが失われます。 - モジュールレベルの
posthog.api_key設定ではなく、必ずPosthog()クラスコンストラクター(インスタンスベースの API)を使用してください。 - 例外を自動的にトラッキングするため、必ず
Posthog()コンストラクターにenable_exception_autocapture=Trueを含めてください。 capture()イベントプロパティには、PII を絶対に送信しないでください。メールアドレス、氏名、電話番号、住所、IP アドレス、ユーザー生成コンテンツは含めないでください。- PII は
capture()イベントプロパティではなく、identify()の人物プロパティに含めてください。安全なイベントプロパティは、message_length、form_type、真偽値フラグなどのメタデータです。 - 終了時にすべてのイベントがフラッシュされるよう、
posthog_client.shutdownをatexit.register()に登録してください。 - Python SDK には
identify()メソッドがありません。人物プロパティの設定にはposthog_client.set(distinct_id=user_id, properties={...})を使うか、コンテキスト内でidentify_context(user_id)を使用してください。
ユーザーの識別
ログインイベントとサインアップイベントでユーザーを識別してください。このフレームワークで正しい識別パターンを確認するには、サンプルコードとドキュメントを参照してください。フロントエンドコードとバックエンドコードの両方がある場合は、相関関係を維持するため、X-POSTHOG-DISTINCT-ID ヘッダーと X-POSTHOG-SESSION-ID ヘッダーを使ってクライアント側のセッションと distinct ID を渡してください。
エラートラッキング
関連ファイル、特に重要なユーザーフローや API の境界で、PostHog のエラートラッキングを追加してください。
コメント
Markdown 対応