integration-flask

Par posthog · skills

Intégration PostHog pour les applications Flask

npx skills add https://github.com/posthog/skills --skill integration-flask

Intégration PostHog pour Flask

Cette skill vous aide à ajouter l'analytique PostHog à des applications Flask.

Workflow

Suivez ces étapes dans l'ordre pour compléter l'intégration :

  1. basic-integration-1.0-begin.md - PostHog Setup - Begin ← Commencez ici
  2. basic-integration-1.1-edit.md - PostHog Setup - Edit
  3. basic-integration-1.2-revise.md - PostHog Setup - Revise
  4. basic-integration-1.3-conclude.md - PostHog Setup - Conclusion

Fichiers de référence

  • references/EXAMPLE.md - Code du projet exemple Flask
  • references/flask.md - Flask - docs
  • references/identify-users.md - Identifier les utilisateurs - docs
  • references/basic-integration-1.0-begin.md - PostHog setup - begin
  • references/basic-integration-1.1-edit.md - PostHog setup - edit
  • references/basic-integration-1.2-revise.md - PostHog setup - revise
  • references/basic-integration-1.3-conclude.md - PostHog setup - conclusion

Le projet exemple montre le modèle d'implémentation cible. Consultez la documentation pour les détails de l'API.

Principes clés

  • Variables d'environnement : Utilisez toujours les variables d'environnement pour les clés PostHog. Ne les codez jamais en dur.
  • Changements minimaux : Ajoutez le code PostHog aux côtés des intégrations existantes. Ne remplacez ni ne restructurez le code existant.
  • Respectez l'exemple : Votre implémentation doit suivre les modèles du projet exemple aussi fidèlement que possible.

Directives du framework

  • Initialisez PostHog globalement dans create_app() en utilisant posthog.api_key et posthog.host (PAS par requête)
  • Capturez manuellement les exceptions avec posthog.capture_exception(e) pour le suivi des erreurs, car Flask possède des gestionnaires d'erreurs intégrés
  • L'enregistrement des blueprints se fait APRÈS l'initialisation de PostHog dans create_app()
  • Souvenez-vous que le code source est disponible dans le répertoire venv/site-packages
  • posthog est le nom du package SDK Python
  • Installez les dépendances avec pip install posthog ou pip install -r requirements.txt et n'utilisez PAS de spécificateurs de version non échappés comme >= directement dans les commandes shell
  • Dans les CLIs et scripts : DEVEZ appeler posthog.shutdown() avant la sortie sinon tous les événements sont perdus
  • Utilisez toujours le constructeur de la classe Posthog() (API basée sur les instances) au lieu de la configuration posthog.api_key au niveau du module
  • Incluez toujours enable_exception_autocapture=True dans le constructeur Posthog() pour suivre automatiquement les exceptions
  • N'ENVOYEZ JAMAIS de PII dans les propriétés d'événement capture() — pas d'e-mails, de noms complets, de numéros de téléphone, d'adresses physiques, d'adresses IP ou de contenu généré par l'utilisateur
  • Les PII appartiennent aux propriétés de personne dans identify(), PAS aux propriétés d'événement capture(). Les propriétés d'événement sûres sont des métadonnées comme message_length, form_type, des 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) dans un contexte

Identifier les utilisateurs

Identifiez les utilisateurs lors des événements de connexion et d'inscription. Consultez le code exemple et la documentation pour le modèle d'identification correct pour ce framework. Si le code frontend et backend existent, transmettez la session côté client et l'ID distinct en utilisant les en-têtes X-POSTHOG-DISTINCT-ID et X-POSTHOG-SESSION-ID pour maintenir la corrélation.

Suivi des erreurs

Ajoutez le suivi des erreurs PostHog aux fichiers pertinents, en particulier autour des flux utilisateur critiques et des limites d'API.

Skills similaires