Course Overview
Description du cours :
Dans ce cours, vous dĂ©couvrirez comment optimiser la journalisation et l’observabilitĂ© dans des architectures basĂ©es sur les microservices. Vous apprendrez les bonnes pratiques de journalisation, Ă choisir les bons formats, et Ă utiliser des outils tels que Node.js, winston, Morgan et la pile ELK (Elasticsearch, Logstash, Kibana) pour centraliser vos journaux et les visualiser efficacement.
Le cours vous guidera Ă©galement dans le dĂ©ploiement de solutions de surveillance avec Prometheus et Grafana, et explorera le traçage distribuĂ© Ă lâaide de Jaeger, Zipkin, et OpenTelemetry pour analyser et diagnostiquer les performances de vos services.
à travers des démonstrations pratiques, vous apprendrez à :
- Configurer des logs dans une application Node.js.
- Déployer et configurer la pile ELK pour une journalisation centralisée.
- Instrumenter des microservices avec Prometheus et Grafana pour la surveillance des métriques.
- Visualiser et analyser les logs et métriques pour résoudre des problÚmes.
- Implémenter un traçage distribué et gérer la propagation de contexte avec Jaeger, Zipkin ou OpenTelemetry.
Ce cours pratique, enrichi d’exemples concrets, est conçu pour les dĂ©veloppeurs, DevOps et architectes souhaitant amĂ©liorer la fiabilitĂ©, la performance et la visibilitĂ© de leurs systĂšmes microservices.
Ă qui s’adresse cette formation ?
Cette formation est idéale pour :
- Développeurs : souhaitant intégrer des pratiques de journalisation efficaces et implémenter une observabilité robuste dans leurs applications.
- IngĂ©nieurs DevOps : cherchant Ă centraliser et optimiser la collecte et l’analyse des logs pour des architectures basĂ©es sur les microservices.
- Architectes logiciels : désireux de concevoir des systÚmes fiables, performants et observables grùce aux outils modernes.
- Responsables techniques : souhaitant diagnostiquer rapidement les problÚmes et améliorer la résilience des services.
Pré-requis :
- Une connaissance de base des architectures microservices.
- Une familiarité avec Kubernetes, Docker et des langages comme Node.js.
- Une expĂ©rience prĂ©alable dans la manipulation de logs et de mĂ©triques serait un plus, mais nâest pas obligatoire.
Objectifs de la formation :
- Comprendre lâimportance de la journalisation dans les architectures modernes et comment cela contribue Ă l’observabilitĂ©.
- Maßtriser les outils clés comme winston, Morgan, et la pile ELK (Elasticsearch, Logstash, Kibana) pour centraliser et analyser les logs.
- Déployer des solutions de surveillance avec Prometheus et Grafana, et créer des tableaux de bord efficaces.
- Mettre en Ćuvre le traçage distribuĂ© pour comprendre les interactions entre les services avec Jaeger, Zipkin, et OpenTelemetry.
- Optimiser la collecte et lâanalyse des journaux pour diagnostiquer et rĂ©soudre rapidement les problĂšmes.
Ce que vous allez apprendre :
- Configurer des logs dans une application Node.js avec winston et Morgan.
- Déployer la pile ELK pour collecter, analyser et visualiser les journaux.
- Surveiller des microservices en temps réel avec Prometheus et Grafana.
- Créer des tableaux de bord personnalisés pour suivre les métriques des microservices.
- ImplĂ©menter un traçage distribuĂ© pour identifier les goulets dâĂ©tranglement et amĂ©liorer la performance des systĂšmes.
Ce cours vous permettra de passer de la thĂ©orie Ă la pratique grĂące Ă des dĂ©monstrations concrĂštes et des exercices appliquĂ©s. Ă la fin de cette formation, vous serez capable de gĂ©rer l’observabilitĂ© et la journalisation dans n’importe quelle architecture basĂ©e sur les microservices, et de garantir des systĂšmes plus fiables et performants.
Détails
- 4 Sections
- 45 Lessons
- 5 Hours
- Bonnes pratiques de journalisation pour les microservices10
- 1.1Why Log Application Events?
- 1.2Observability
- 1.3Logging Options in Node.js
- 1.4Observability
- 1.5Logging Formats
- 1.6Best Practices for Logging Microservices
- 1.7Demo: Enabling and Configuring Logs in a Node.js Application
- 1.8[PLAY â DEMO]45 Minutes
- 1.9[PLAY â DEMO 2 Logging with winston and Morgan â part 2]
- 1.10[PLAY â DEMO 3 Logging with Morgan and winston â End]
- Implementing Centralized Logging with ELK Stack17
- 2.1What is the ELK Stack?5 Minutes
- 2.2Installing the ELK Stack
- 2.3Demo: Installing ELK
- 2.4[PLAY â DEMO DEPLOY ELK]
- 2.5[PLAY â DEMO â Configure Transport to Leasticsearch]
- 2.6Log Engineering with Logstash10 Minutes
- 2.7Demo: Logstash
- 2.8[PLAY â DEMO â Send logs to Logstash]
- 2.9[PLAY â Send Logs with Filebeat]
- 2.10Storing Logs with Elasticsearch
- 2.11Demo: Interacting with Elasticsearch via Kibana DevTools
- 2.12[PLAY â DEMO Loggins with ELK]
- 2.13Visualizing Logs with Kibana
- 2.14[PLAY â DEMO â Visualizing Logs with Kibana]
- 2.15Optimizing the Implementation of the ELK Stack
- 2.16Case Study: Problem to Solve
- 2.17[PLAY â DEMO â Seach problems]
- Monitoring Microservices with Prometheus and Grafana9
- 3.1Objectives of Microservice Monitoring
- 3.2Monitoring with Prometheus and Grafana
- 3.3Demo: Deploying Prometheus and Grafana
- 3.4[PLAY â DEMO Deploying Prometheus and Grafana]
- 3.5Demo: Instrumenting Node.js Microservices
- 3.6[PLAY â DEMO Instrumenting Node.js Microservices]
- 3.7Demo: Creating Dashboards with Grafana for Metric Visualization
- 3.8Demo: Configuring Alerts
- 3.9[ PLAY â DEMO Dashboards with Grafana for Metric Visualization]
- Traçage distribué avec Jaeger ou Zipkin9
- 4.1Overcoming Logging Challenges in Microservice Architectures
- 4.2Demo: Running Jaeger and Zipkin with Docker Compose
- 4.3[ PLAY â DEMO Deploy Jaeger-Zipkin]
- 4.4Context Propagation in Distributed Tracing
- 4.5Demo: Tracing Logs with Zipkin
- 4.6[PLAY â DEMO â Tracing logs with Zipkin]
- 4.7Demo: Tracing Logs with Jaeger
- 4.8[PLAY â DEMO â Tracing logs with Jaeger]
- 4.9Demo: Tracing with OpenTelemetry