Spring Boot ist ein leistungsstarkes Framework, das die Entwicklung von Java-Anwendungen vereinfacht. Eines seiner herausragenden Merkmale ist der Spring Boot Actuator, ein Unterprojekt, das entwickelt wurde, um produktionsbereite Funktionen bereitzustellen, die Ihnen helfen, Ihre Anwendung zu überwachen und zu verwalten. In diesem Blogbeitrag werden wir tief in die Spring Boot Actuator-Endpunkte eintauchen, ihre Bedeutung verstehen und wie Sie sie in Ihren Anwendungen optimal nutzen können.
Sind Sie bereit, Ihre Anwendungsüberwachung auf die nächste Stufe zu heben? Laden Sie Apidog KOSTENLOS herunter und beginnen Sie noch heute mit der Integration in Ihre Spring Boot Actuator-Endpunkte. Mit Apidog können Sie Ihre APIs einfach entwerfen, testen und überwachen und so optimale Leistung und Zuverlässigkeit gewährleisten.
Was sind Spring Boot Actuator Endpunkte?
Zunächst wollen wir klären, was Spring Boot Actuator-Endpunkte sind. Actuator-Endpunkte sind spezifische URLs, die vom Spring Boot Actuator bereitgestellt werden, um Ihre Anwendung zu überwachen und mit ihr zu interagieren. Diese Endpunkte geben verschiedene Anwendungsinformationen wie Zustand, Metriken, Umgebungseigenschaften und mehr aus.
Spring Boot Actuator wird mit einer Vielzahl von integrierten Endpunkten geliefert, und Sie können auch benutzerdefinierte Endpunkte erstellen. Diese Endpunkte sind äußerst nützlich, um Einblicke in den aktuellen Zustand Ihrer Anwendung zu erhalten und Verwaltungsaufgaben auszuführen.
Warum Spring Boot Actuator Endpunkte verwenden?
Warum sollten Sie sich für Spring Boot Actuator-Endpunkte interessieren? Nun, sie bieten mehrere Vorteile:
- Überwachung: Sie können die Leistung und den Zustand Ihrer Anwendung in Echtzeit überwachen.
- Fehlerbehebung: Actuator-Endpunkte helfen bei der Diagnose von Problemen, indem sie detaillierte Informationen über den internen Zustand der Anwendung liefern.
- Automatisierung: Diese Endpunkte können in Überwachungstools wie Prometheus, Grafana oder Apidog für automatisierte Gesundheitsprüfungen und Warnungen integriert werden.
- Benutzerfreundlichkeit: Sie sind einfach einzurichten und erfordern nur minimale Konfiguration, um loszulegen.
Mit diesen Vorteilen im Hinterkopf wollen wir einige der wichtigsten Spring Boot Actuator-Endpunkte und deren effektive Nutzung untersuchen.

Erste Schritte mit Spring Boot Actuator
Bevor wir uns mit bestimmten Endpunkten befassen, müssen wir Spring Boot Actuator in unserer Anwendung einrichten. Hier ist eine Kurzanleitung für den Einstieg:
Abhängigkeit hinzufügen: Fügen Sie die Spring Boot Actuator-Abhängigkeit in Ihre pom.xml
-Datei ein:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Konfiguration: Standardmäßig werden Actuator-Endpunkte über den Basispfad /actuator
verfügbar gemacht. Sie können dies in Ihrer application.properties
- oder application.yml
-Datei anpassen:
management.endpoints.web.base-path=/manage
Sicherheit: Für Produktionsumgebungen ist die Sicherung Ihrer Actuator-Endpunkte von entscheidender Bedeutung. Sie können Sicherheitseinstellungen konfigurieren, um den Zugriff einzuschränken:
management.endpoints.web.exposure.include=health,info
management.endpoint.health.probes.enabled=true
management.endpoint.health.show-details=always
management.endpoints.web.exposure.exclude=env
Nachdem die Einrichtung abgeschlossen ist, wollen wir uns mit der Erkundung der am häufigsten verwendeten Spring Boot Actuator-Endpunkte befassen.

Wichtige Spring Boot Actuator-Endpunkte
1. Health-Endpunkt
Der /health
-Endpunkt liefert grundlegende Gesundheitsinformationen über Ihre Anwendung. Er ist einer der am häufigsten verwendeten Endpunkte für Überwachungszwecke.
- URL:
/actuator/health
- Antwort: JSON-Objekt, das den Gesundheitsstatus (
UP
,DOWN
usw.) angibt
Beispielantwort:
{
"status": "UP",
"components": {
"db": {
"status": "UP",
"details": {
"database": "MySQL",
"validationQuery": "isValid()"
}
},
"diskSpace": {
"status": "UP",
"details": {
"total": 499963174912,
"free": 340105166848,
"threshold": 10485760
}
}
}
}
2. Info-Endpunkt
Der /info
-Endpunkt gibt beliebige Anwendungsinformationen aus. Sie können diesen Endpunkt verwenden, um Details wie Version, Beschreibung und andere Metadaten bereitzustellen.
- URL:
/actuator/info
- Konfiguration: Sie können die Informationen in der Datei
application.properties
konfigurieren:
info.app.name=My Spring Boot Application
info.app.description=This is a sample application.
info.app.version=1.0.0
3. Metrics-Endpunkt
Der /metrics
-Endpunkt liefert eine Fülle von Informationen über verschiedene Metriken, die von der Anwendung gesammelt werden, wie z. B. Speichernutzung, CPU-Auslastung und HTTP-Anforderungsstatistiken.
- URL:
/actuator/metrics
- Antwort: JSON-Objekt mit Metrikdaten
Beispielantwort:
{
"names": [
"jvm.memory.used",
"jvm.gc.pause",
"http.server.requests",
...
]
}
Sie können auch bestimmte Metriken abfragen, z. B. um HTTP-Anforderungsstatistiken abzurufen:
- URL:
/actuator/metrics/http.server.requests
- Antwort: Detaillierte Metrikdaten für HTTP-Anforderungen
4. Env-Endpunkt
Der /env
-Endpunkt gibt Eigenschaften aus der Spring Environment aus. Dies kann sehr nützlich sein, um Konfigurationsprobleme zu debuggen.
- URL:
/actuator/env
- Antwort: JSON-Objekt mit Umgebungseigenschaften
Beispielantwort:
{
"activeProfiles": ["dev"],
"propertySources": [
{
"name": "applicationConfig: [classpath:/application.properties]",
"properties": {
"server.port": {
"value": "8080"
}
}
},
...
]
}
5. Beans-Endpunkt
Der /beans
-Endpunkt liefert eine Liste aller Spring-Beans im Anwendungskontext zusammen mit ihren Abhängigkeiten. Dies ist nützlich, um die Verdrahtung Ihrer Anwendung zu verstehen.
- URL:
/actuator/beans
- Antwort: JSON-Objekt mit Bean-Daten
Beispielantwort:
{
"contexts": {
"application": {
"beans": {
"beanName": {
"aliases": [],
"scope": "singleton",
"type": "com.example.MyBean",
"resource": "file:./classes/com/example/MyBean.class",
"dependencies": []
},
...
}
}
}
}
Integration von Spring Boot Actuator-Endpunkten mit Apidog
Spring Boot Actuator-Endpunkte bieten eine Vielzahl von Tools zur Überwachung und Verwaltung Ihrer Anwendung. Um diese Funktionen voll auszuschöpfen, kann die Integration mit einem leistungsstarken API-Verwaltungstool wie Apidog unglaublich vorteilhaft sein. Apidog hilft beim nahtlosen Entwerfen, Testen und Überwachen von APIs und verbessert so Ihre gesamte Anwendungsverwaltungsstrategie.
Warum mit Apidog integrieren?
Apidog bietet mehrere Vorteile bei der Integration mit Spring Boot Actuator-Endpunkten:
- Zentralisierte Überwachung: Aggregieren Sie alle Ihre Actuator-Endpunktdaten an einem Ort.
- Automatisierte Warnungen: Richten Sie automatisierte Warnungen für kritische Metriken und Gesundheitszustände ein.
- Erweiterte Analysen: Nutzen Sie die Analysefunktionen von Apidog für eine eingehende Analyse von Metriken.
- API-Dokumentation: Generieren Sie mühelos eine umfassende API-Dokumentation.
Schritte zur Integration von Spring Boot Actuator mit Apidog
Registrieren Sie Ihre API: Beginnen Sie damit, Ihre Spring Boot-API bei Apidog zu registrieren.

Dadurch kann Apidog Ihre Actuator-Endpunkte erkennen und mit ihnen interagieren.

Stellen Sie sicher, dass Ihre Actuator-Endpunkte verfügbar gemacht und zugänglich sind. Passen Sie Ihre Sicherheitseinstellungen bei Bedarf an, damit Apidog auf diese Endpunkte zugreifen kann.
Gesundheit überwachen: Verwenden Sie Apidog, um den Endpunkt kontinuierlich zu überwachen. Dadurch wird der Gesundheitszustand Ihrer Anwendung verfolgt und Sie über alle Probleme informiert.

Nutzen Sie die Analysefunktionen von Apidog, um Erkenntnisse aus dem Endpunkt zu gewinnen. Dies hilft Ihnen, Leistungstrends zu verstehen und potenzielle Engpässe zu identifizieren.
Vorteile der Integration
Die Integration von Spring Boot Actuator-Endpunkten mit Apidog bietet eine robuste Überwachungslösung. Hier sind einige wichtige Vorteile:
- Echtzeitüberwachung: Erhalten Sie Echtzeit-Updates zum Zustand und zur Leistung Ihrer Anwendung.
- Proaktive Problemlösung: Automatisierte Warnungen ermöglichen es Ihnen, Probleme zu beheben, bevor sie sich auf die Benutzer auswirken.
- Umfassende Analysen: Detaillierte Analysen helfen Ihnen, Nutzungsmuster zu verstehen und die Ressourcenzuweisung zu optimieren.
- Vereinfachte Verwaltung: Die zentralisierte API-Verwaltung erleichtert die Überwachung und Verwaltung mehrerer Dienste.
Diese Integration eröffnet eine Welt voller Möglichkeiten für das proaktive Anwendungsmanagement. Beginnen Sie noch heute mit der Integration und erleben Sie die Vorteile der nahtlosen Überwachung und Verwaltung mit Spring Boot Actuator und Apidog.
Erweiterte Tipps und Tricks für die Verwendung von Spring Boot Actuator-Endpunkten
Nachdem wir nun ein solides Verständnis der Grundlagen haben, wollen wir uns mit einigen erweiterten Tipps und Tricks befassen, die Ihnen helfen können, noch mehr aus Spring Boot Actuator-Endpunkten herauszuholen.
Feinabstimmung der Metriksammlung
Standardmäßig sammelt Spring Boot Actuator eine Fülle von Metriken. In einer Produktionsumgebung möchten Sie jedoch möglicherweise anpassen, welche Metriken gesammelt werden, um die Leistung und den Speicher zu optimieren.
Bestimmte Metriken aktivieren: Sie können mit Eigenschaften in application.properties
oder application.yml
fein abstimmen, welche Metriken aktiviert werden.
management.metrics.enable.jvm=true
management.metrics.enable.process=true
management.metrics.enable.http.server.requests=true
Abtastung und Histogramm: Passen Sie die Abtastrate und die Histogrammkonfiguration an, um die Granularität und Leistung der Metriksammlung zu verwalten.
management.metrics.distribution.percentiles.http.server.requests=0.5,0.95,0.99
management.metrics.distribution.expiry=http.server.requests=60s
Erstellen von zusammengesetzten Gesundheitsindikatoren
Zusammengesetzte Gesundheitsindikatoren aggregieren mehrere Gesundheitsindikatoren zu einem einzigen Gesundheitsstatus. Dies kann besonders nützlich sein, wenn Sie mehrere Subsysteme überwachen müssen.
Gesundheitsindikatoren erstellen: Implementieren Sie benutzerdefinierte Gesundheitsindikatoren, indem Sie AbstractHealthIndicator
erweitern.
import org.springframework.boot.actuate.health.Health;
import org.springframework.boot.actuate.health.HealthIndicator;
import org.springframework.stereotype.Component;
@Component
public class CustomHealthIndicator implements HealthIndicator {
@Override
public Health health() {
// Custom health check logic
return Health.up().withDetail("custom", "All systems go").build();
}
}
Gesundheitsindikatoren aggregieren: Verwenden Sie HealthAggregator
, um mehrere Gesundheitsindikatoren zu kombinieren.
import org.springframework.boot.actuate.health.CompositeHealthContributor;
import org.springframework.boot.actuate.health.HealthContributor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class HealthConfig {
@Bean
public HealthContributor customHealthContributor() {
return CompositeHealthContributor.fromMap(Map.of(
"custom", new CustomHealthIndicator(),
"db", new DataSourceHealthIndicator(dataSource)
));
}
}
Anpassen von Endpunktpfaden und -exposition
Möglicherweise möchten Sie die Standardpfade ändern oder steuern, welche Endpunkte basierend auf verschiedenen Umgebungen (z. B. Dev vs. Prod) verfügbar gemacht werden.
Benutzerdefinierter Pfad: Ändern Sie den Basispfad für alle Actuator-Endpunkte.
management.endpoints.web.base-path=/monitoring
Umgebungsspezifische Exposition: Verwenden Sie Profile, um die Endpunktexposition für verschiedene Umgebungen anzupassen.
# application-dev.properties
management.endpoints.web.exposure.include=*
# application-prod.properties
management.endpoints.web.exposure.include=health,info,metrics
Nutzung von Überwachungstools von Drittanbietern
Während Spring Boot Actuator eine solide Grundlage bietet, kann die Integration mit Tools von Drittanbietern robustere Überwachungsfunktionen bieten. Tools wie Prometheus, Grafana und New Relic können Metriken von Actuator-Endpunkten aufnehmen und erweiterte Analysen, Warnungen und Visualisierungen bereitstellen.
Prometheus: Konfigurieren Sie einen Prometheus-Endpunkt, um Metriken zu scrapen.
management.endpoint.prometheus.enabled=true
Grafana: Verwenden Sie Grafana, um Prometheus-Metriken zu visualisieren, indem Sie eine Datenquelle hinzufügen, die auf Ihren Prometheus-Server verweist.
Debugging und Protokollierung
Eine erweiterte Protokollierung rund um Actuator-Endpunkte kann bei der Fehlersuche helfen. Passen Sie die Protokollierungsebenen für Actuator-Endpunkte in application.properties
an.
logging.level.org.springframework.boot.actuate=DEBUG
logging.level.org.springframework.boot.actuate.endpoint=TRACE
Automatisierung mit CI/CD
Integrieren Sie Actuator-Endpunkte in Ihre CI/CD-Pipelines, um Gesundheitsprüfungen und BereitstellungsValidierungen zu automatisieren.
CI/CD ist auf Apidog verfügbar

Vorab-Bereitstellungsprüfungen: Bevor Sie bereitstellen, lösen Sie ein Skript aus, das den Gesundheitsendpunkt überprüft.
curl -f http://localhost:8080/actuator/health || exit 1
Überwachung nach der Bereitstellung: Überwachen Sie nach der Bereitstellung kontinuierlich wichtige Metriken und richten Sie Warnungen für Anomalien ein.
Fazit
Spring Boot Actuator-Endpunkte sind nicht nur ein Tool zur Überwachung; sie sind eine umfassende Lösung zur Aufrechterhaltung des Zustands, der Leistung und der Zuverlässigkeit Ihrer Anwendung. Durch die Nutzung der Leistungsfähigkeit dieser Endpunkte können Sie tiefe Einblicke in die Funktionsweise Ihrer Anwendung gewinnen, Verwaltungsaufgaben automatisieren und sicherstellen, dass Ihr System unter verschiedenen Bedingungen robust und reaktionsfähig bleibt.
Egal, ob Sie gerade erst mit Spring Boot beginnen oder Ihre Überwachungsstrategie verfeinern möchten, die Actuator-Endpunkte bieten eine solide Grundlage. In Verbindung mit Tools wie Apidog können Sie Ihre Überwachungsfunktionen auf ein neues Niveau heben und sicherstellen, dass Ihre Anwendungen immer reibungslos und effizient laufen.
Denken Sie daran, dass die Standardeinstellungen sofort gut funktionieren, aber die wahre Leistung in der Anpassung und Integration dieser Endpunkte in Ihren spezifischen Workflow liegt. Beginnen Sie also noch heute mit dem Erkunden, Optimieren und Integrieren von Actuator-Endpunkten und beobachten Sie, wie sich Ihre Anwendungsüberwachung von einfach zu brillant verwandelt.