🛢️Parcours Fioul GroupéSpring Boot · Chapitre 17
Accueil › Spring Boot › Chapitre 17
Chapitre 17 / 19 · projet

Projet — la surveillance

On rend l'API Fioul Groupé observable en conditions réelles : gestion homogène des exceptions, logs utiles, health check pour l'hébergeur, et centralisation des logs.

1 Étape

Gestion homogène des exceptions

On complète le @RestControllerAdvice (chapitre 5) pour couvrir toutes les erreurs métier et renvoyer un corps d'erreur uniforme.

{ "erreur": "Campagne clôturée", "code": "CAMPAGNE_FERMEE", "statut": 409 }
2 Bonne pratique

Journaliser ce qui compte

On loggue les événements métier importants (campagne ouverte/clôturée, inscription) en INFO, les erreurs en ERROR avec la pile. On évite le bruit.

3 Étape

Health check pour l'hébergeur

/actuator/health renseigne l'état de l'appli et de ses dépendances (dont MongoDB). L'hébergeur s'en sert pour redémarrer l'appli si elle tombe.

GET /actuator/health { "status": "UP", "components": { "mongo": { "status": "UP" } } }
4 Notion

Centraliser les logs

En production multi-instances, on envoie les logs vers un collecteur (Graylog, ELK, ou le service de logs de l'hébergeur) pour les rechercher et poser des alertes.

🛢️ Sur le projet Fioul Groupé

Uniformise les réponses d'erreur, ajoute des logs métier lisibles, expose un health check qui remonte l'état de MongoDB. Tu obtiens une API qu'on peut exploiter et diagnostiquer — pas seulement démontrer.

À retenir
  • Réponses d'erreur uniformes via @RestControllerAdvice.
  • Logs métier (INFO) + erreurs (ERROR) ; health check avec dépendances.
  • Centralisation des logs en production.
← Chapitre 16