Actionneur de démarrage à ressort
Actionneur de démarrage à ressort est un sous-projet du Spring Boot Framework. Il comprend un certain nombre de fonctionnalités supplémentaires qui nous aident à surveiller et à gérer l'application Spring Boot. Il contient les points finaux de l'actionneur (l'endroit où vivent les ressources). On peut utiliser HTTP et JMX points de terminaison pour gérer et surveiller l’application Spring Boot. Si nous souhaitons obtenir des fonctionnalités prêtes pour la production dans une application, nous devons utiliser le S Actionneur de démarrage à ressort.
Caractéristiques de l'actionneur à ressort
Il y a trois Principales caractéristiques de Spring Boot Actuator :
bash si sinon
Point final : Les points de terminaison de l'actionneur nous permettent de surveiller et d'interagir avec l'application. Spring Boot fournit un certain nombre de points de terminaison intégrés. Nous pouvons également créer notre propre point de terminaison. Nous pouvons activer et désactiver chaque point de terminaison individuellement. La plupart des applications choisissent HTTP , où l'identifiant du point de terminaison, ainsi que le préfixe de /actionneur, est mappé à une URL.
Par exemple, le /santé Le point de terminaison fournit les informations de base sur l’état d’une application. L'actionneur, par défaut, l'a mappé à /actionneur/santé .
Métrique: Spring Boot Actuator fournit des métriques dimensionnelles en s'intégrant au micromètre . Le micromètre est intégré à Spring Boot. Il s'agit de la bibliothèque d'instrumentation qui alimente la fourniture de métriques d'application à partir de Spring. Il fournit des interfaces indépendantes du fournisseur pour minuteries, jauges, compteurs, résumés de distribution, et minuteries de tâches longues avec un modèle de données dimensionnel.
Audit: Spring Boot fournit un cadre d'audit flexible qui publie les événements sur un AuditEventRepository. Il publie automatiquement les événements d'authentification si spring-security est en exécution.
Activation de l'actionneur Spring Boot
Nous pouvons activer l'actionneur en injectant la dépendance actionneur de démarreur à ressort dans le fichier pom.xml.
org.springframework.boot spring-boot-starter-actuator 2.2.2.RELEASE
Points de terminaison de l'actionneur Spring Boot
Les points de terminaison de l'actionneur nous permettent de surveiller et d'interagir avec notre application Spring Boot. Spring Boot comprend un certain nombre de points de terminaison intégrés et nous pouvons également ajouter des points de terminaison personnalisés dans l'application Spring Boot.
Le tableau suivant décrit les points de terminaison largement utilisés.
Identifiant | Usage | Défaut |
---|---|---|
actionneur | Il fournit un système hypermédia page découverte pour les autres points de terminaison. Cela nécessite que Spring HATEOAS soit sur le chemin de classe. | Vrai |
événements d'audit | Il expose les informations sur les événements d'audit pour l'application actuelle. | Vrai |
configuration automatique | Il est utilisé pour afficher un rapport de configuration automatique montrant tous les candidats à la configuration automatique et la raison pour laquelle ils « ont été » ou « n'ont pas été » appliqués. | Vrai |
haricots | Il est utilisé pour afficher une liste complète de tous les beans Spring de votre application. | Vrai |
accessoires de configuration | Il est utilisé pour afficher une liste rassemblée de tous les @ConfigurationProperties. | Vrai |
décharge | Il est utilisé pour effectuer un thread dump. | Vrai |
env | Il est utilisé pour exposer les propriétés du ConfigurableEnvironment de Spring. | Vrai |
s'envoler | Il est utilisé pour afficher toutes les migrations de bases de données Flyway qui ont été appliquées. | Vrai |
santé | Il est utilisé pour afficher les informations sur l’état de l’application. | FAUX |
Info | Il est utilisé pour afficher des informations d’application arbitraires. | FAUX |
bûcherons | Il permet d'afficher et de modifier la configuration des enregistreurs dans l'application. | Vrai |
liquibase | Il est utilisé pour afficher toutes les migrations de bases de données Liquibase qui ont été appliquées. | Vrai |
métrique | Il est utilisé pour afficher les informations de métriques pour l'application actuelle. | Vrai |
mappages | Il est utilisé pour afficher une liste rassemblée de tous les chemins @RequestMapping. | Vrai |
fermer | Il est utilisé pour permettre à l’application de s’arrêter correctement. | Vrai |
tracer | Il est utilisé pour afficher les informations de trace. | Vrai |
Pour Spring MVC, les points de terminaison supplémentaires suivants sont utilisés.
Identifiant | Description | Défaut |
---|---|---|
documents | Il est utilisé pour afficher la documentation, y compris des exemples de demandes et de réponses pour les points de terminaison de l'actionneur. | FAUX |
vidage de tas | Il est utilisé pour renvoyer un fichier de vidage de tas hprof compressé GZip. | Vrai |
jolokia | Il est utilisé pour exposer les beans JMX via HTTP (lorsque Jolokia est sur le chemin de classe). | Vrai |
fichier journal | Il est utilisé pour renvoyer le contenu du fichier journal. | Vrai |
Prométhée | Il est utilisé pour exposer les métriques dans un format qui peut être récupéré par un serveur Prometheus. Cela nécessite une dépendance à micrometer-registry-prometheus. | Vrai |
Propriétés de l'actionneur Spring Boot
Spring Boot permet la sécurité de tous les points de terminaison de l'actionneur. Il utilise basé sur un formulaire authentification qui fournit ID de l'utilisateur en tant qu'utilisateur et un généré aléatoirement mot de passe . Nous pouvons également accéder aux points de terminaison restreints par des actionneurs en personnalisant la sécurité basicauth pour les points de terminaison. Nous devons remplacer cette configuration par gestion.sécurité.rôles propriété. Par exemple:
management.security.enabled=true management.security.roles=ADMIN security.basic.enabled=true security.user.name=admin security.user.passowrd=admin
Exemple d'actionneur de démarrage à ressort
Comprenons le concept de l'actionneur à travers un exemple.
Étape 1: Initialisation du printemps ouvert https://start.spring.io/ et créer un Maven projet.
Étape 2: Fournir le Groupe nom. Nous avons fourni com.javatpoint.
Étape 3: Fournir le Artefact Identifiant. Nous avons fourni le exemple d'actionneur à ressort.
Étape 4: Ajoutez les dépendances suivantes : Spring Web, actionneur de démarrage Spring Boot, et Navigateur HAL de repos de données Spring .
Étape 5 : Clique sur le Générer bouton. Lorsque nous cliquons sur le bouton Générer, toutes les spécifications liées au projet sont regroupées dans un Pot fichier et le télécharge sur notre système local.
Étape 6 : Extrayez le fichier Jar et collez-le dans l'espace de travail STS.
Étape 7 : Importez le dossier du projet.
Fichier -> Importer -> Projets Maven existants -> Parcourir -> Sélectionnez le dossier spring-boot-actuator-example -> Terminer
L'importation prend un certain temps. Après avoir importé le projet, nous pouvons voir le répertoire du projet dans la section explorateur de packages.
Étape 8 : Créez une classe de contrôleur. Nous avons créé la classe de contrôleur avec le nom DemoRestController.
DémoRestController.java
package com.javatpoint; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class DemoRestController { @GetMapping('/hello') public String hello() { return 'Hello User!'; } }
Étape 9 : Ouvrez le application.propriétés et désactivez la fonction de sécurité de l'actionneur en ajoutant l'instruction suivante.
application.propriétés
management.security.enabled=false
Étape 10 : Exécutez le SpringBootActuatorExampleApplication.java déposer.
Étape 11 : Ouvrez le navigateur et appelez l'URL http://localhost:8080/actuator. Il renvoie la page suivante :
pour les boucles java
{'_links':{'self':{'href':'http://localhost:8080/actuator','templated':false},'health':{'href':'http://localhost:8080/actuator/health','templated':false},'health-path':{'href':'http://localhost:8080/actuator/health/{*path}','templated':true},'info':{'href':'http://localhost:8080/actuator/info','templated':false}}}
L'application s'exécute sur le port 8080 par défaut. Une fois l'actionneur démarré, nous pouvons voir la liste de tous les points de terminaison exposés via HTTP.
Invoquons le santé point de terminaison en appelant l’URL http://localhost:8080/actuator/health. Il indique le statut EN HAUT . Cela signifie que l'application est saine et fonctionne sans aucune interruption.
De même, nous pouvons appeler d'autres points de terminaison qui nous aident à surveiller et gérer l'application Spring Boot.
Télécharger le projet