Überblick
Der Kern der Springstiefelüberwachung ist die Abhängigkeit von Spring-Boot-Starter-Aktuators. Nach dem Hinzufügen von Abhängigkeiten konfiguriert Spring Start eine allgemeine Überwachung standardmäßig, wie z. B. JVM -Überwachung, Klassenbelastung, Gesundheitsüberwachung usw.
Wir haben zuvor über die visuelle Überwachung von Docker -Containern gesprochen, dh den Betrieb des Containers, einschließlich CPU -Nutzung, Speicherverbrauch, Netzwerkstatus, Speicherplatz und andere Informationen, überwacht. Bei der Auswahl von Springboot als Instanziationstechnologie von MicroService -Einheiten ist eines der unvermeidlichen Probleme, mit denen wir konfrontiert sind, wie die Gesundheitszustandsdaten der Anwendung in Echtzeit überwacht werden können: Gesundheit, Betriebsindikatoren, Protokollinformationen, Thread -Status usw. In diesem Artikel wird das Problem untersucht und den experimentellen Prozess aufgezeichnet.
Erste Schritte mit: Aktuator -Plugin
Das Aktuator-Plug-In ist ein von Springboot nativ erbrachte Service. Es kann verwendet werden, um viele Endpunktinformationen in der Anwendung auszugeben, indem Endpunktwege aufgedeckt werden. Nehmen Sie einen praktischen Kampf!
Fügen Sie Abhängigkeiten in pom.xml hinzu:
<Depopenty> <gruppe> org.springFramework.boot </Groupid> <artifactId> Spring-Boot-Starter-Actuator </artifactid> </abhängig>
Nach dem Start der Spring -Boot -Anwendung können Sie einige Statusinformationen der Anwendung erhalten, indem Sie einfach die Endpunktinformationen im Browser eingeben.
Gemeinsame Endpunkte sind wie folgt aufgeführt. Sie können sie ausführlich ausprobieren:
Natürlich können zu diesem Zeitpunkt nur /Gesundheits- und /Info -Endpunkte verwendet werden, und auf andere Endpunkte können aufgrund von Erlaubnisproblemen nicht zugegriffen werden. Wenn Sie auf den angegebenen Endpunkt zugreifen möchten, können Sie in der YML -Konfiguration relevante Konfigurationselemente hinzufügen. Wenn Sie beispielsweise den Endpunkt /Metrics -Endpunkt konfigurieren müssen:
Endpunkte: Metriken: empfindlich: Falsch
Zu diesem Zeitpunkt greift der Browser auf den Endpunkt /Metrics zu und kann Informationen erhalten, wie sie unten gezeigt werden:
{"mem": 71529, "mem.free": 15073, "processors": 4, "instance.uptime": 6376, "fahrzeit": 9447, "systemload "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.unloaded": 6129, "classes.unload": 0, "gc.copy.count": 74, "gc.copy.time": 173, "gc.marksweepcompact.count": 3, "gc.marksweepcompact.timeNatürlich können Sie auch alle Endpoint -Berechtigungen aktivieren und sie einfach wie folgt konfigurieren:
Endpunkte: empfindlich: Falsch
Da die vom Aktuator-Plug-In bereitgestellten Überwachungsfunktionen schließlich begrenzt sind und die Benutzeroberfläche relativ einfach ist, erfordert es ein ausgereifteres Werkzeug.
Feder Boot Admin -Überwachungssystem
SBA wurde weiter auf der Grundlage von Aktuator entwickelt, ein Überwachungsinstrument für die Verschönerung und Verpackung von UI für die Aktuatorschnittstelle. Lassen Sie uns experimentieren.
Erstellen Sie zunächst ein Spring Boot Admin -Serverprojekt als Server
Fügen Sie pom.xml die folgenden Abhängigkeiten hinzu:
<Depopenty> <gruppe> de.Codecentrik </Groupid> <artifactId> Spring-Boot-Admin-server </artifactId> <version> 1.5.7 </Version> </abhängig> <Depopentcy> <gruppeId> de.Codecentric </gruppe> <artifactid> Spring-boot-admin-server-server-ui </artifactId> <version> 1.5.7 </Version> </abhängig>
Aktivieren Sie den Spring Boot Admin, indem Sie Annotationen zur Hauptklasse der Anwendung hinzufügen
@ANLEBLEADMINSERVER@SpringBootApplicationPublic Class SpringBtadminverApplication {public static void main (String [] args) {SpringApplication.run (SpringBtadMinServerApplication.class, Args); }}Starten Sie das Programm und öffnen Sie Localhost: 8081 im Browser, um die Spring Boot Admin -Hauptseite anzuzeigen:
Spring Boot Admin -Homepage
Zu diesem Zeitpunkt ist die Anwendungsspalte leer und wartet darauf, dass die Anwendung überwacht wird
Erstellen Sie eine Spring -Boot -App, um zu überwachen
Fügen Sie pom.xml die folgenden Abhängigkeiten hinzu
<Depopenty> <gruppe> de.Codecentric </GroupID> <artifactId> Spring-Boot-Admin-Starter-Client </artifactid> <version> 1.5.7 </Version> </abhängig>
Fügen Sie dann die folgende Konfiguration in die YML -Konfiguration hinzu und registrieren Sie die Anwendung auf den Administratorserver:
Frühling: Boot: Admin: URL: http: // localhost: 8081 Kunde: Name: admintest
Sobald die Client -Anwendung gestartet wurde, hat der Administratordienst sofort eine Nachricht überschritten und Ihnen mitgeteilt, dass Admintest online ist:
App, um Nachrichten online zu verschieben
Gehen Sie zu diesem Zeitpunkt zur Hauptadmin -Schnittstelle, um zu überprüfen, ob die Client -Anwendung tatsächlich registriert wurde:
Die Kundenanwendung wurde registriert
Detail anzeigen
Detailinformationen
Metriken anzeigen
Metrikeninformationen
Umgebung anzeigen
Umweltinformationen
JMX anzeigen
JMX -Informationen
Threads anzeigen
Themeninformationen
Spur und Details anzeigen
Verfolgungsinformationen
Klicken Sie auf das Top -Journal und Sie sehen die Ereignisänderungen der überwachten Anwendung:
Informationen zur Änderung von Anwendungsereignissen
In der Abbildung ist deutlich zu sehen, dass die Anwendung vom Status der Registrierung → unbekannt → Up springt.
Dies wird alle Endpunktinformationen aus dem Aktuator-Plug-In in der SBA ausprobieren.
Referenzen
http://codecentric.github.io/spring-boot-admin/1.5.7/
Zusammenfassen
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Referenzwert für das Studium oder die Arbeit eines jeden hat. Wenn Sie Fragen haben, können Sie eine Nachricht zur Kommunikation überlassen. Vielen Dank für Ihre Unterstützung bei Wulin.com.