Indicateurs de fonctionnalité PostHog pour Ruby
Cette skill vous aide à ajouter des indicateurs de fonctionnalité PostHog à des applications Ruby.
Fichiers de référence
references/ruby.md- Installation des indicateurs de fonctionnalité Ruby - docsreferences/adding-feature-flag-code.md- Ajout du code d'indicateur de fonctionnalité - docsreferences/best-practices.md- Bonnes pratiques des indicateurs de fonctionnalité - docs
Consultez la documentation pour les détails de l'API et les modèles spécifiques au framework.
Principes clés
- Variables d'environnement : Utilisez toujours des variables d'environnement pour les clés PostHog. Ne les codez jamais en dur.
- Modifications minimales : Ajoutez le code d'indicateur de fonctionnalité à côté de la logique existante. Ne remplacez ni ne restructurez le code existant.
- Indicateurs booléens en priorité : Par défaut, vérifiez les indicateurs booléens sauf si l'utilisateur demande spécifiquement des indicateurs multivariés.
- Côté serveur si possible : Préférez l'évaluation des indicateurs côté serveur pour éviter le scintillement de l'interface.
Outils PostHog MCP
Vérifiez si un serveur PostHog MCP est connecté. Si disponible, cherchez les outils liés à la gestion des indicateurs de fonctionnalité (création, listage, mise à jour, suppression d'indicateurs). Utilisez ces outils pour gérer les indicateurs directement dans PostHog plutôt que de demander à l'utilisateur de le faire manuellement dans le tableau de bord.
Directives du framework
- posthog-ruby est le nom du gem SDK Ruby (ajoutez
gem 'posthog-ruby'au Gemfile) mais importez-le avecrequire 'posthog'(PASrequire 'posthog-ruby') - Utilisez PostHog::Client.new(api_key: key, host: host) pour l'initialisation basée sur une instance dans les scripts et CLIs
- Dans les CLIs et scripts : VOUS DEVEZ appeler client.shutdown avant la fermeture sinon tous les événements sont perdus
- Utilisez begin/rescue/ensure avec shutdown dans le bloc ensure pour un nettoyage approprié
- capture et identify prennent un seul argument hash : client.capture(distinct_id: 'user_123', event: 'my_event', properties: { key: 'value' })
- capture_exception prend des args POSITIONNELS (pas des keyword) : client.capture_exception(exception, distinct_id, additional_properties) — N'UTILISEZ PAS la syntaxe keyword
distinct_id: