Journaux PostHog pour Python
Cette skill vous aide à ajouter l'ingestion de journaux PostHog aux applications Python.
Fichiers de référence
references/python.md- Installation des journaux Python - docsreferences/start-here.md- Premiers pas avec les journaux - docsreferences/search.md- Rechercher dans les journaux - docsreferences/best-practices.md- Bonnes pratiques de journalisation - docsreferences/troubleshooting.md- Dépannage des journaux - docsreferences/link-session-replay.md- Lier la lecture de session - docsreferences/debug-logs-mcp.md- Déboguer les journaux avec mcp - docs
Consultez la documentation pour les détails des API et les patterns spécifiques au framework.
Principes clés
- Variables d'environnement : Utilisez toujours les variables d'environnement pour les clés PostHog et les endpoints OpenTelemetry. Ne les hardcodez jamais.
- Changements minimaux : Ajoutez l'export des journaux aux côtés de la journalisation existante. Ne remplacez ou ne restructurez pas le code de journalisation existant.
- OpenTelemetry : Les journaux PostHog utilisent le protocole OpenTelemetry. Configurez un exporteur OTLP pointant vers l'endpoint d'ingestion de PostHog.
- Journalisation structurée : Préférez les formats de journaux structurés avec propriétés clé-valeur aux messages en texte brut.
Directives du framework
- Rappelez-vous que le code source est disponible dans le répertoire venv/site-packages
- posthog est le nom du package du SDK Python
- Installez les dépendances avec
pip install posthogoupip install -r requirements.txtet n'utilisez PAS de spécificateurs de version sans guillemets comme>=directement dans les commandes shell - Dans les CLIs et scripts : VOUS DEVEZ appeler posthog.shutdown() avant la sortie sinon tous les événements sont perdus
- Utilisez toujours le constructeur de classe Posthog() (API basée sur les instances) au lieu de la configuration au niveau du module posthog.api_key
- Incluez toujours enable_exception_autocapture=True dans le constructeur Posthog() pour suivre automatiquement les exceptions
- NE JAMAIS envoyer d'informations personnelles dans les propriétés d'événement capture() — pas d'emails, noms complets, numéros de téléphone, adresses physiques, adresses IP ou contenu généré par l'utilisateur
- Les informations personnelles appartiennent aux propriétés de personne identify(), PAS aux propriétés d'événement capture(). Les propriétés d'événement sûres sont les métadonnées comme message_length, form_type, drapeaux booléens.
- Enregistrez posthog_client.shutdown avec atexit.register() pour garantir que tous les événements sont vidés à la sortie
- Le SDK Python n'a PAS de méthode identify() — utilisez posthog_client.set(distinct_id=user_id, properties={...}) pour définir les propriétés de personne, ou utilisez identify_context(user_id) au sein d'un contexte