logs-python について
Python アプリケーションに PostHog のログ取り込みを追加するスキルです。OTLP の設定、構造化ログ、イベントプロパティのプライバシー対策、終了時の送信を案内します。
主な機能
- 01Python SDK の設定ガイド
- 02OTLP エクスポーターの設定
- 03構造化ログの実践
- 04イベントプロパティの PII 対策
- 05プロセス終了時のイベント送信
活用シーン
- 01Python アプリのログを PostHog に送信
- 02OpenTelemetry のログエクスポーターを設定
- 03イベントプロパティへの PII 混入を防止
- 04終了前に CLI のログ送信を確実にする
MCP 対応
参考資料に MCP を使ったログのデバッグ方法が含まれています。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ posthog/ skills --skill logs-pythonインストール後、Claude Code で/logs-pythonを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/best-practices.mddebug-logs-mcp.mdlink-session-replay.mdpython.mdsearch.mdstart-here.mdtroubleshooting.md詳細
Python 向け PostHog ログ
このスキルは、Python アプリケーションに PostHog のログ取り込みを追加するのに役立ちます。
リファレンスファイル
references/python.md- Python ログのインストール - ドキュメントreferences/start-here.md- ログの始め方 - ドキュメントreferences/search.md- ログを検索する - ドキュメントreferences/best-practices.md- ログ記録のベストプラクティス - ドキュメントreferences/troubleshooting.md- ログのトラブルシューティング - ドキュメントreferences/link-session-replay.md- セッションリプレイをリンクする - ドキュメントreferences/debug-logs-mcp.md- mcp でログをデバッグする - ドキュメント
API の詳細やフレームワーク固有のパターンについては、ドキュメントを参照してください。
主な原則
- 環境変数:PostHog のキーと OpenTelemetry エンドポイントには、必ず環境変数を使用してください。ハードコードしないでください。
- 変更は最小限に:既存のログ記録に加えてログのエクスポートを追加してください。既存のログ記録コードを置き換えたり、構成し直したりしないでください。
- OpenTelemetry:PostHog のログでは OpenTelemetry プロトコルを使用します。PostHog の取り込みエンドポイントを指定した OTLP エクスポーターを設定してください。
- 構造化ログ:プレーンテキストのメッセージより、キーと値のプロパティを含む構造化ログ形式を優先してください。
フレームワークのガイドライン
- ソースコードは
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、ブール値フラグなどのメタデータです - 終了時にすべてのイベントがフラッシュされるよう、
atexit.register()にposthog_client.shutdownを登録してください - Python SDK には
identify()メソッドがありません。人物プロパティを設定するにはposthog_client.set(distinct_id=user_id, properties={...})を使用するか、コンテキスト内でidentify_context(user_id)を使用してください
コメント
Markdown 対応