Aperçu
Le noyau de la surveillance de la démarrage de ressort est la dépendance à spring-boot-starter-actuator. Après avoir ajouté des dépendances, Spring Boot configurera une surveillance générale par défaut, telle que la surveillance JVM, le chargement des classes, la surveillance de la santé, etc.
Nous avons déjà parlé de la surveillance visuelle des conteneurs Docker, c'est-à-dire de la surveillance du fonctionnement du conteneur, y compris l'utilisation du processeur, l'utilisation de la mémoire, l'état du réseau, l'espace disque et d'autres informations. Lors de la sélection de Springboot comme technologie d'instanciation des unités de microservice, l'un des problèmes inévitables auxquels nous devons faire face est de surveiller les données de l'état de santé de l'application en temps réel, telles que: la santé, les indicateurs de fonctionnement, les informations sur le journal, l'état du thread, etc. Cet article explore le problème et enregistre le processus expérimental.
Partage avec: Plugin Actorator
Le plug-in actionneur est un service fourni nativement par Springboot. Il peut être utilisé pour produire de nombreuses informations de point de terminaison dans l'application en exposant les itinéraires de point de terminaison. Prenez une bataille pratique!
Ajouter des dépendances dans pom.xml:
<dependency> <proupId> org.springframework.boot </rombasid> <ArtefactId> printemp-boot-starter-actuator </retifactid> </pedidency>
Après avoir démarré l'application Spring Boot, vous pouvez obtenir des informations d'état de l'application en entrant simplement les informations de point de terminaison dans le navigateur.
Les points de terminaison courants sont répertoriés comme suit, vous pouvez les essayer en détail:
Bien sûr, seuls les points de terminaison / santé et / info peuvent être utilisés pour le moment, et d'autres points de terminaison ne sont pas accessibles en raison de problèmes d'autorisation. Si vous souhaitez accéder au point de terminaison spécifié, vous pouvez ajouter des éléments de configuration pertinents dans la configuration YML. Par exemple, si vous avez besoin de configurer le point de terminaison / des métriques:
Points de terminaison: métriques: sensible: faux
À l'heure actuelle, le navigateur accède au point de terminaison / des métriques et peut obtenir des informations telles que ci-dessous:
{ "mem": 71529, "mem.free": 15073, "processors": 4, "instance.uptime": 6376, "uptime": 9447, "systemload.average": -1.0, "heap.committed": 48024, "heap.init": 16384, "heap.used": 32950, "heap": 506816, "nonheap.committed": 23840, "nonheap.init": 160, "nonheap.used": 23506, "nonheap": 0, "threads.peak": 25, "threads.daemon": 23, "threads.totalstarted": 28, "threads": 25, "classes": 6129, "Classes.Unloted": 6129, "Classes": 6129, "Classes. "GC.Copy.Count": 74, "GC.Copy.Time": 173, "GC.MarksweepCompact.Count": 3, "GC.MarksweepCompact.Time": 88, "HttpSessions.Max": -1, "HttpSessions.Active": 0}Bien sûr, vous pouvez également activer toutes les autorisations de point de terminaison, il suffit de les configurer comme suit:
points de terminaison: sensible: faux
Étant donné que les capacités de surveillance fournies par le plug-in de l'actionneur sont limitées après tout et que l'interface utilisateur est relativement simple, elle nécessite un outil plus mature.
Système de surveillance de l'administration de démarrage Spring
SBA a été en outre évolué en fonction de l'actionneur, qui est un outil de surveillance pour l'embellissement de l'interface utilisateur et l'emballage pour l'interface de l'actionneur. Expérimentons.
Tout d'abord, créez un projet Spring Boot Admin Server en tant que serveur
Ajoutez les dépendances suivantes à pom.xml:
<Dendency> <ProupId> de.codecentric </rompuprid> <letifactive> printemps-boot-admin-server </ artifactid> <version> 1.5.7 </-version> </dependency> <dependency> <proupId> de.codecentric </proupId> <Artifactid> Spring-Boot-Admin-Server-Ui </ Artifactid> <version> 1.5.7 </ version> </ dépendance>
Ensuite, activez Spring Boot Admin en ajoutant des annotations sur la classe principale de l'application
@ Perteadminerver @ springbootapplicationpublic class SpringBtAdMinServerApplication {public static void main (String [] args) {springApplication.run (SpringBtAdMinserverApplication.class, args); }}Démarrez le programme et ouvrez LocalHost: 8081 dans le navigateur pour afficher la page principale de Spring Boot Admin:
Page d'accueil de Spring Boot Admin
À l'heure actuelle, la colonne d'application est vide, en attendant que l'application soit surveillée pour rejoindre
Créer une application Spring Boot pour surveiller
Ajouter les dépendances suivantes à pom.xml
<dependency> <proupId> de.codecentric </rombandid> <ErtifactId> printemps-boot-admin-starter-client </ artifactive> <version> 1.5.7 </-version> </Dependency>
Ensuite, ajoutez la configuration suivante dans la configuration YML et enregistrez l'application sur le serveur d'administration:
Spring: Boot: Admin: URL: http: // localhost: 8081 Client: Nom: Admintest
Dès le démarrage de la demande client, le service d'administration a immédiatement poussé un message, vous disant que l'admission est en ligne:
Application pour pousser les messages en ligne
À l'heure actuelle, accédez à l'interface d'administration principale pour vérifier et constater que l'application client a effectivement été enregistrée:
La demande client a été enregistrée
Afficher les détails
Des informations détaillées
Voir les mesures
Informations sur les métriques
Voir l'environnement
Informations sur l'environnement
Afficher JMX
Informations JMX
Afficher les fils
Informations sur les threads
Afficher la trace et les détails
Tracer des informations
Cliquez sur le journal supérieur et vous verrez les modifications de l'événement de l'application surveillée:
Informations sur le changement d'événement d'application
On peut voir clairement dans la figure que l'application saute du statut d'enregistrement → inconnu → UP.
Cela essaiera toutes les informations de point de terminaison fournies par le plug-in Actorator dans la SBA.
Références
http://codecentric.github.io/spring-boot-admin/1.5.7/
Résumer
Ce qui précède est l'intégralité du contenu de cet article. J'espère que le contenu de cet article a une certaine valeur de référence pour l'étude ou le travail de chacun. Si vous avez des questions, vous pouvez laisser un message pour communiquer. Merci pour votre soutien à wulin.com.