Gérer et superviser une application avec l’actionneur Spring Boot
Remarque
Les plans Essentiel, Standard et Entreprise seront déconseillés à compter de la mi-mars 2025, avec une période de mise hors service de 3 ans. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez l’annonce de mise hors service d’Azure Spring Apps.
Le plan de consommation standard et dédiée sera déconseillé à compter du 30 septembre 2024, avec un arrêt complet après six mois. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez Migrer le plan de consommation standard et dédiée Azure Spring Apps vers Azure Container Apps.
Cet article s’applique à :✅ Java ❎ C#
Cet article s’applique à :✅ Essentiel/Standard ✅ Entreprise
Spring Boot Actuator offre des fonctionnalités prêtes pour la production à vos applications. Vous pouvez surveiller facilement votre application, collecter des métriques et comprendre l’état ou l’activité de base de données avec cet outil. Vous bénéficiez d’un accès aux outils de niveau professionnel sans avoir besoin de les créer à partir de zéro.
L’actionneur expose des données opérationnelles vitales sur votre application en cours d’exécution, telles que l’état d’intégrité, les métriques, les informations, etc. L’actionneur utilise des points de terminaison HTTP ou des extensions de gestion Java (JMX), ce qui facilite l’interaction. Une fois que vous l’avez intégré, il fournit plusieurs points de terminaison par défaut, et comme d’autres modules Spring, il est facilement configurable et extensible.
Azure Spring Apps utilise l’actionneur pour enrichir les métriques via JMX. Il peut également utiliser Application Live View dans le plan Entreprise pour vous aider à obtenir et à interagir avec les données à partir d’applications.
Configurer Spring Boot Actuator
Les sections qui suivent décrivent comment configurer Actuator.
Ajouter une dépendance d’actionneur
Pour ajouter l’actionneur à un projet basé sur Maven, ajoutez la dépendance suivante :
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
</dependencies>
Cette configuration fonctionne avec n’importe quelle version de Spring Boot, car les versions sont couvertes dans la facture de documents Spring Boot (BOM).
Configurer un point de terminaison d’actionneur
Par défaut, une application Spring Boot expose uniquement le point de terminaison health
. Pour observer la configuration et l’environnement configurable, procédez comme suit pour activer également les points de terminaison env
et configprops
:
Accédez au volet Vue d’ensemble de l’application, sélectionnez Configuration dans le menu des paramètres et ensuite accédez à la page de configuration Variables d’environnement.
Ajoutez les propriétés suivantes comme dans le formulaire « key:value ». Cet environnement ouvre les points de terminaison Spring Actuator suivants :
health
,env
etconfigprops
.management.endpoints.web.exposure.include: health,env,configprops
Sélectionnez Enregistrer. Votre application redémarre automatiquement et charge les nouvelles variables d’environnement.
Vous pouvez maintenant revenir au volet Vue d’ensemble de l’application et patienter jusqu’à ce que l’état d’approvisionnement passe à Réussi.
Pour afficher tous les points de terminaison intégrés et les configurations associées, consultez la section Exposition des points de terminaison de Fonctionnalités prêtes pour la production Spring Boot.
Sécuriser le point de terminaison d’actionneur
Lorsque vous ouvrez l’application au public, ces points de terminaison d’actionneur sont également exposés au public. Nous vous recommandons de masquer tous les points de terminaison en définissant management.endpoints.web.exposure.exclude=*
, car la propriété exclude
est prioritaire sur la propriété include
. Cette action bloque Application Live View dans le plan Entreprise et d’autres applications ou outils qui s’appuient sur le point de terminaison HTTP de l’actionneur.
Dans le plan Entreprise, il existe deux façons de sécuriser l’accès :
Vous pouvez désactiver le point de terminaison public des applications et configurer une règle d’acheminement dans VMware Spring Cloud Gateway pour désactiver l’accès des actionneurs à partir du public. Pour plus d’informations, consultez Configurer VMware Spring Cloud Gateway.
Vous pouvez configurer l’actionneur pour écouter sur un autre port HTTP de l’application principale. Dans une application autonome, le port HTTP d’actionneur est défini par défaut sur le même port HTTP que le port HTTP principal. Pour que l’application écoute sur un autre port, définissez la propriété
management.server.port
. L’affichage en direct de l’application ne peut pas détecter automatiquement cette modification de port. Vous devez donc également configurer la propriété sur un déploiement Azure Spring Apps. Ensuite, l’actionneur n’est pas accessible publiquement, mais l’affichage en direct de l’application peut lire à partir du point de terminaison d’actionneur via un autre port. Pour plus d’informations, consultez Utiliser Application Live View avec le plan Entreprise Azure Spring Apps.