integration-django

Par posthog · skills

Intégration PostHog pour les applications Django

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

Intégration PostHog pour Django

Cette skill vous aide à ajouter PostHog analytics à des applications Django.

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 Django exemple
  • references/django.md - Django - docs
  • references/identify-users.md - Identify users - 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 pattern 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.
  • Suivez l'exemple : Votre implémentation doit suivre les patterns du projet exemple aussi fidèlement que possible.

Directives du framework

  • Ajoutez 'posthog.integrations.django.PosthogContextMiddleware' à MIDDLEWARE pour extraire automatiquement les headers de tracing et capturer les exceptions
  • Initialisez PostHog dans AppConfig.ready() avec api_key et host issus des variables d'environnement
  • Utilisez le pattern de context API avec new_context(), identify_context(user_id), puis capture()
  • Pour les vues de login/logout, créez un nouveau context puisque l'état utilisateur change pendant la requête
  • NE CRÉEZ PAS de middleware personnalisé, d'helpers distinct_id, ou de vérifications conditionnelles - le SDK les gère
  • Souvenez-vous que le code source est disponible dans le répertoire venv/site-packages
  • posthog est le nom du package Python SDK
  • 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 : VOUS DEVEZ appeler posthog.shutdown() avant la sortie ou tous les événements seront perdus
  • Utilisez toujours le constructeur de classe Posthog() (API basée sur les instances) au lieu de la config module-level posthog.api_key
  • Incluez toujours enable_exception_autocapture=True dans le constructeur Posthog() pour tracer automatiquement les exceptions
  • NE JAMAIS envoyer de données 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 données 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 s'assurer que tous les événements sont vidés à la sortie
  • Le Python SDK 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 context

Identifier les utilisateurs

Identifiez les utilisateurs lors des événements de login et signup. Consultez le code exemple et la documentation pour le pattern d'identification correct pour ce framework. Si le code frontend et backend existent, passez la session côté client et le distinct ID en utilisant les headers 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, particulièrement autour des flux utilisateur critiques et des limites d'API.

Skills similaires