MODULE 11 - Spring Boot Actuator et Monitoring
Bienvenue au Module 11! 📊
Votre application est en production... mais comment savoir si elle fonctionne correctement? Est-elle lente? Manque-t-elle de mémoire? Spring Boot Actuator vous donne les yeux pour surveiller votre application.
🎓 Objectifs d'Apprentissage
À la fin de ce module, vous serez capable de:
- ✅ Configurer Spring Boot Actuator
- ✅ Utiliser les endpoints de monitoring
- ✅ Créer des health checks personnalisés
- ✅ Collecter et exposer des métriques
- ✅ Intégrer Prometheus et Grafana
📚 Prérequis
Avant de commencer ce module, vous devez avoir:
- ✅ Complété les Modules 1 à 10
- ✅ Comprendre les bases de HTTP
- ✅ Avoir Docker installé (pour Prometheus/Grafana)
- ✅ Connaître les concepts de base du monitoring
🗺️ Plan du Module
Partie Théorique (4 chapitres)
Chapitre 1: Introduction à Actuator
Durée: 30 minutes
Contenu:
- Qu'est-ce qu'Actuator?
- Installation et configuration
- Sécurité des endpoints
- Premiers pas
Pourquoi important? Comprendre l'outil de base
Chapitre 2: Les Endpoints
Durée: 45 minutes
Contenu:
- /health, /info, /env
- /beans, /mappings, /conditions
- /loggers, /heapdump, /threaddump
- Endpoints personnalisés
Pourquoi important? Diagnostiquer votre application
Chapitre 3: Métriques avec Micrometer
Durée: 1 heure
Contenu:
- Micrometer et registres
- Counter, Gauge, Timer, Summary
- Métriques JVM, HTTP, Database
- Métriques personnalisées
- Tags et dimensions
Pourquoi important? Mesurer les performances
Chapitre 4: Health Checks
Durée: 45 minutes
Contenu:
- Health Indicators natifs
- Health checks personnalisés
- Groupes de santé
- Liveness vs Readiness (Kubernetes)
Pourquoi important? Détecter les problèmes
Partie Pratique (2 TPs)
TP11.1: Configuration Actuator
Durée: 1h30
Objectif: Configurer Actuator pour une application
Vous allez:
- Activer et sécuriser les endpoints
- Créer des health checks personnalisés
- Ajouter des informations application
- Tester tous les endpoints
TP11.2: Monitoring avec Prometheus & Grafana
Durée: 1h30
Objectif: Mettre en place un stack de monitoring complet
Vous allez:
- Configurer Prometheus
- Créer des dashboards Grafana
- Ajouter des métriques métier
- Configurer des alertes
📊 Durée Totale
| Type | Durée |
|---|---|
| Théorie | 3h (4 chapitres) |
| Pratique | 3h (2 TPs) |
| Total | 6h (~2 séances) |
🎯 Ce Que Vous Allez Comprendre
Avant ce Module
// Application en production... 🤞
// "Ça marche?"
// "Je ne sais pas, les utilisateurs ne se plaignent pas..."
// "Combien de mémoire utilise-t-on?"
// "Aucune idée..."
Après ce Module
# Vérifier la santé
curl http://localhost:8080/actuator/health
{
"status": "UP",
"components": {
"db": { "status": "UP" },
"diskSpace": { "status": "UP" },
"redis": { "status": "UP" }
}
}
# Voir les métriques
curl http://localhost:8080/actuator/metrics/http.server.requests
{
"name": "http.server.requests",
"measurements": [
{ "statistic": "COUNT", "value": 1523 },
{ "statistic": "TOTAL_TIME", "value": 45.2 }
]
}
Dashboard Grafana:
┌─────────────────────────────────────────────┐
│ 📊 Application Dashboard │
├──────────────┬──────────────┬───────────────┤
│ Requests/sec │ Latency P99 │ Error Rate │
│ 125 │ 45ms │ 0.1% │
├──────────────┴──────────────┴───────────────┤
│ [Graph: Request Rate over Time] │
│ [Graph: JVM Memory Usage] │
│ [Graph: Database Connection Pool] │
└─────────────────────────────────────────────┘
🚀 Pourquoi Ce Module Est Essentiel
1. Visibilité en Production
Sans Actuator:
- "L'application est lente" → Pourquoi?
- "Ça ne marche plus" → Depuis quand? Qu'est-ce qui a changé?
- "On a un problème de mémoire" → Vraiment?
Avec Actuator:
- Métriques temps réel
- Historique des performances
- Alertes proactives
2. DevOps et SRE
Kubernetes Health Probes:
livenessProbe:
httpGet:
path: /actuator/health/liveness
readinessProbe:
httpGet:
path: /actuator/health/readiness
→ Redémarrage automatique si l'app est morte
→ Trafic coupé si l'app n'est pas prête
3. Compétence Recherchée
Offres d'emploi:
✓ "Expérience avec Prometheus/Grafana"
✓ "Mise en place de monitoring"
✓ "Observabilité des applications"
✓ "Spring Boot Actuator"
🗺️ Progression dans la Formation
Module 11 = Observer votre application en production!
📖 Comment Aborder Ce Module
Progression Recommandée
- Chapitre 1 → Installer et configurer Actuator
- Chapitre 2 → Explorer les endpoints
- TP11.1 → Pratiquer la configuration
- Chapitre 3-4 → Métriques et Health
- TP11.2 → Stack complète Prometheus/Grafana
✅ Auto-Évaluation
Avant de commencer, répondez:
- Savez-vous ce qu'est Spring Boot Actuator? ☐ Oui ☐ Non
- Connaissez-vous Prometheus? ☐ Oui ☐ Non
- Avez-vous déjà utilisé Grafana? ☐ Oui ☐ Non
- Savez-vous ce qu'est un health check? ☐ Oui ☐ Non
Ce module vous rendra expert sur tous ces sujets!
🎯 Prochaine Étape
Prêt à rendre votre application observable?
➡️ Commencer avec le Chapitre 1: Introduction à Actuator