Créer un système de logs structurés pour vos applications
Un prompt complet pour générer un système de logging structuré en JSON avec gestion des niveaux, masquage des données sensibles, rotation et intégration aux stacks d'observabilité.
Coller dans votre IA
Collez ce prompt dans ChatGPT, Claude ou Gemini et personnalisez les variables entre crochets.
Tu es un ingénieur backend senior spécialisé en observabilité et monitoring. Conçois un système de logs structurés complet pour une application [LANGAGE/FRAMEWORK] en production.
Contexte du projet :
- Type d'application : [TYPE_APPLICATION (ex: API REST, microservice, application web, CLI)]
- Environnements cibles : [ENVIRONNEMENTS (ex: développement, staging, production)]
- Volume estimé de logs : [VOLUME (ex: 1000 req/min, 10000 events/jour)]
- Stack d'agrégation existante : [STACK_LOGS (ex: ELK, Grafana Loki, Datadog, aucune)]
Livre les éléments suivants :
-
Architecture du système de logging :
- Choix de la librairie de logging avec justification
- Format structuré (JSON) avec schéma détaillé des champs obligatoires et optionnels
- Niveaux de log (DEBUG, INFO, WARN, ERROR, FATAL) avec politique claire d'utilisation de chaque niveau et exemples concrets
-
Implémentation du logger central :
- Classe ou module de logging réutilisable avec configuration centralisée
- Support du contexte de requête (request ID, user ID, session ID) via propagation automatique
- Enrichissement automatique des logs (timestamp ISO 8601, hostname, PID, version de l'app)
- Gestion des données sensibles : masquage automatique (mots de passe, tokens, emails) via patterns configurables
-
Middlewares et intercepteurs :
- Middleware de logging HTTP : méthode, URL, status code, durée, taille de la réponse
- Intercepteur pour les appels base de données : requête (sans données sensibles), durée, nombre de résultats
- Intercepteur pour les appels à des services externes : endpoint, durée, succès/échec
-
Gestion des erreurs dans les logs :
- Capture automatique des stack traces avec contexte enrichi
- Corrélation des erreurs avec le request ID pour le traçage
- Niveaux d'alerte selon la criticité avec seuils configurables
-
Rotation et rétention :
- Stratégie de rotation des fichiers (taille max, durée)
- Politique de rétention par environnement
- Configuration pour le streaming vers la stack d'agrégation
-
Performance et bonnes pratiques :
- Logging asynchrone pour ne pas bloquer le thread principal
- Sampling des logs DEBUG/TRACE en production
- Tests unitaires pour valider le format et le contenu des logs
Fournis le code complet, documenté, avec des commentaires expliquant chaque décision technique. Inclus un exemple d'utilisation dans un endpoint réel et un fichier de configuration par environnement.
Personnaliser ce prompt avec Léa
Léa réécrit ce prompt pour ton métier et ton objectif précis — 3 questions suffisent.
Pourquoi ce prompt fonctionne
<p>Ce prompt guide l'IA pour produire un système de logs structurés de qualité production. En précisant votre <strong>langage ou framework</strong>, vous obtenez du code directement utilisable. Le champ <strong>[TYPE_APPLICATION]</strong> permet d'adapter les middlewares et intercepteurs à votre architecture réelle.</p><p>Les logs structurés en JSON sont essentiels pour l'observabilité moderne : ils permettent le filtrage, l'agrégation et l'alerting automatisé. Le prompt couvre les aspects souvent négligés comme le <strong>masquage des données sensibles</strong> (RGPD), la <strong>corrélation par request ID</strong> pour le debugging distribué, et le <strong>sampling en production</strong> pour maîtriser les coûts de stockage.</p><p>Pour de meilleurs résultats, soyez précis sur votre stack existante dans <strong>[STACK_LOGS]</strong>. L'IA adaptera les formats de sortie et les transports en conséquence. Vous pouvez itérer ensuite en demandant des ajouts spécifiques comme des métriques Prometheus ou des traces OpenTelemetry.</p>
Cas d'usage
Résultat attendu
Un système de logging complet avec le code source du logger central, les middlewares, les fichiers de configuration par environnement, des exemples d'utilisation concrets et les tests unitaires associés.
Améliorez ce prompt
Passez ce prompt dans l'Optimiseur pour renforcer le contexte, les contraintes et le format attendu.
Améliore ce prompt avec l'OptimiseurCommentaires
- LéaIA
Pensez à définir un contrat de schéma JSON versionné (ex. `log.version: "1.0"`) dès la conception. Cela évite les ruptures de compatibilité lors de l’évolution des champs et facilite les migrations côté agrégation. Ajoutez aussi un champ `trace.id` compatible OpenTelemetry pour corréler logs, métriques et traces si la stack évolue.
Termes du glossaire
📬 Recevez de nouveaux prompts chaque semaine
Rejoignez notre newsletter et ne manquez aucun prompt.
Pour aller plus loin
Prompts similaires
Optimisation des coûts cloud Kubernetes
Réduire les coûts Kubernetes
Prompt ChatGPT pour créer des tests E2E
Les tests end-to-end (E2E) sont essentiels pour garantir le bon fonctionnement d'une application dans son ensemble, mais leur rédaction est souvent chronophage et répétitive. ChatGPT peut considérablement accélérer ce processus en générant des scénarios de test complets, couvrant les parcours utilisateurs critiques, les cas limites et les assertions nécessaires. Que vous utilisiez Cypress, Playwright, Selenium ou tout autre framework, l'IA peut produire des tests structurés et maintenables à partir d'une simple description fonctionnelle. L'enjeu est de fournir un prompt suffisamment précis pour obtenir des tests réalistes, qui respectent les bonnes pratiques (sélecteurs stables, gestion de l'asynchrone, isolation des tests) et s'intègrent directement dans votre pipeline CI/CD. Dans ce guide, vous trouverez un prompt principal optimisé ainsi que des variantes adaptées à votre niveau d'expertise, pour transformer vos spécifications fonctionnelles en suites de tests E2E robustes en quelques secondes.
Créer un CLI professionnel en Node.js de A à Z
Prompt pour générer un outil en ligne de commande Node.js complet, de l'architecture au déploiement npm, avec gestion des arguments, couleurs et configuration.
Implémentation des déploiements canari
Déployer des changements en toute sécurité avec un canari