
DevOps, Logging et CI/CD
Winston, Pino, structured logging, correlation IDs, APM, GitHub Actions, GitLab CI, pipelines, automated testing, deployment automation
1Quelle est la différence principale entre Winston et Pino ?
Quelle est la différence principale entre Winston et Pino ?
Réponse
Pino est conçu pour être extrêmement rapide avec un faible overhead (asynchrone par défaut), tandis que Winston est plus riche en fonctionnalités mais légèrement plus lent. Pino utilise JSON structuré par défaut et évite les transformations synchrones, ce qui le rend idéal pour les applications haute performance. Winston offre plus de transports et d'options de formatage prêts à l'emploi.
2Qu'est-ce qu'un correlation ID dans le contexte du logging ?
Qu'est-ce qu'un correlation ID dans le contexte du logging ?
Réponse
Un correlation ID est un identifiant unique (UUID) associé à une requête HTTP ou un événement, qui permet de tracer toutes les opérations liées à cette requête à travers les différents services et logs. Cela facilite le débogage des systèmes distribués en permettant de regrouper tous les logs d'une même transaction. Il est généralement propagé via des headers HTTP (X-Correlation-ID).
3Quel est l'avantage principal du structured logging ?
Quel est l'avantage principal du structured logging ?
Réponse
Le structured logging (logs au format JSON avec des champs clés-valeurs) permet de facilement filtrer, rechercher et analyser les logs avec des outils comme Elasticsearch, Grafana ou Datadog. Contrairement aux logs en texte brut, les logs structurés peuvent être indexés et requêtés efficacement. Cela améliore grandement l'observabilité et le débogage en production.
Quels sont les niveaux de log standards dans Winston et Pino ?
Comment implémenter un logger global dans NestJS ?
+22 questions d'entretien
Autres sujets d'entretien Node.js / NestJS
Fondamentaux Node.js
APIs Core Node.js
Programmation asynchrone
Bases Express.js
Fondamentaux NestJS
Conception d'API REST
Validation et DTO
Documentation d'API
Gestion des erreurs
Tests unitaires
Planification de tâches
Modules et DI NestJS
Configuration et environnements
Authentification JWT
Autorisation et RBAC
Base de données avec TypeORM
Prisma ORM
Middleware et Interceptors
Upload de fichiers
WebSockets
GraphQL avec NestJS
Tests end-to-end
Cache avec Redis
Files d'attente avec Bull
Docker et Containerization
Microservices
Bonnes pratiques de sécurité
Performance et Déploiement Cloud
Maîtrise Node.js / NestJS pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement