Freigeben über


Konfigurieren der Komponente „Administrator für Spring“ in Azure Container Apps

Die verwaltete Komponente „Administrator für Spring“ bietet eine Verwaltungsschnittstelle für Spring Boot-Webanwendungen, die Aktorenendpunkte verfügbar machen. In diesem Artikel erfahren Sie, wie Sie Ihre Spring-Komponente konfigurieren und verwalten.

Anzeigen

Sie können die Details einer einzelnen Komponente mithilfe des Befehls show anzeigen.

Bevor Sie den folgenden Befehl ausführen, ersetzen Sie Platzhalter, die mit <> umgeben sind, mit Ihren Werten.

az containerapp env java-component admin-for-spring show \
  --environment <ENVIRONMENT_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --name <JAVA_COMPONENT_NAME>

Aktualisieren

Sie können die Replikatanzahl und Konfiguration der Komponente „Administrator für Spring“ mithilfe des Befehls update aktualisieren.

Bevor Sie den folgenden Befehl ausführen, ersetzen Sie Platzhalter, die mit <> umgeben sind, mit Ihren Werten. Unterstützte Konfigurationen werden in der Eigenschaftentabelle aufgeführt.

az containerapp env java-component admin-for-spring update \
  --environment <ENVIRONMENT_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --name <JAVA_COMPONENT_NAME> \
  --min-replicas <REPLICA_COUNT> \
  --max-replicas <REPLICA_COUNT> \
  --configuration <CONFIGURATION_KEY>="<CONFIGURATION_VALUE>"

Liste

Sie können alle registrierten Java-Komponenten mithilfe des Befehls list auflisten.

Bevor Sie den folgenden Befehl ausführen, ersetzen Sie Platzhalter, die mit <> umgeben sind, mit Ihren Werten.

az containerapp env java-component list \
  --environment <ENVIRONMENT_NAME> \
  --resource-group <RESOURCE_GROUP>

Aufheben der Bindung

Verwenden Sie die Option --unbind, um eine Bindung aus einer Container-App zu entfernen.

Bevor Sie den folgenden Befehl ausführen, ersetzen Sie Platzhalter, die mit <> umgeben sind, mit Ihren Werten.

az containerapp update \
  --name <APP_NAME> \
  --unbind <JAVA_COMPONENT_NAME> \
  --resource-group <RESOURCE_GROUP>

Abhängigkeit

Wenn Sie die Administratorkomponente in Ihrer Container-App verwenden, müssen Sie die folgende Abhängigkeit in Ihrer pom.xml-Datei hinzufügen. Ersetzen Sie die Versionsnummer durch die aktuelle Version, die im Maven-Repository verfügbar ist.

<dependency>
    <groupId>de.codecentric</groupId>
    <version>3.3.2</version>
    <artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>

Konfigurierbare Eigenschaften

Ab Spring Boot 2 werden Endpunkte außer den Integritäts- und Informationsendpunkten standardmäßig nicht verfügbar gemacht. Sie können diese verfügbar machen, indem Sie die folgende Konfiguration in Ihrer Datei application.properties hinzufügen.

management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always

Liste der zulässigen Konfigurationen für Ihren Administrator für Spring

In der folgenden Liste sind die Eigenschaften der Administratorkomponente aufgeführt, die Sie für Ihre App konfigurieren können. Weitere Details finden Sie in der Dokumentation zu Spring Boot Admin.

Eigenschaftenname BESCHREIBUNG Standardwert
spring.boot.admin.server.enabled Aktiviert die Spring Boot Admin Server-Instanz true
spring.boot.admin.context-path Das Pfadpräfix, bei dem die statischen Ressourcen sowie die API des Verwaltungsservers bereitgestellt werden. Relativ zum Dispatcher-Servlet
spring.boot.admin.monitor.status-interval Zeitintervall in Millisekunden, um den Status von Instanzen zu überprüfen 10,000ms
spring.boot.admin.monitor.status-lifetime Lebensdauer des Status in Millisekunden. Der Status wird nicht aktualisiert, solange der letzte Status nicht abgelaufen ist. 10.000 ms
spring.boot.admin.monitor.info-interval Zeitintervall in Millisekunden, um die Informationen von Instanzen zu überprüfen 1m
spring.boot.admin.monitor.info-lifetime Lebensdauer von Informationen in Minuten. Die Informationen werden nicht aktualisiert, solange die letzten Informationen nicht abgelaufen sind. 1m
spring.boot.admin.monitor.default-timeout Standardtimeout beim Senden von Anforderungen. Einzelne Werte für bestimmte Endpunkte können mithilfe von spring.boot.admin.monitor.timeout.* überschrieben werden. 10,000
spring.boot.admin.monitor.timeout.* Schlüssel-Wert-Paare mit dem Timeout pro endpointId Der Standardwert lautet default-timeout.
spring.boot.admin.monitor.default-retries Standardanzahl der Wiederholungen für fehlgeschlagene Anforderungen. Anforderungen zum Ändern von Daten (PUT, POST, PATCH, DELETE) werden niemals wiederholt. Einzelne Werte für bestimmte Endpunkte können mithilfe von spring.boot.admin.monitor.retries.* überschrieben werden. 0
spring.boot.admin.monitor.retries.* Schlüssel-Wert-Paare mit der Anzahl der Wiederholungen pro endpointId. Anforderungen zum Ändern von Daten (PUT, POST, PATCH, DELETE) werden niemals wiederholt. Der Standardwert lautet default-retries.
spring.boot.admin.metadata-keys-to-sanitize Metadatenwerte für die Schlüssel, die diesen RegEx-Mustern entsprechen und in allen JSON-Ausgaben zum Bereinigen verwendet werden. Ab Spring Boot 3 sind alle Aktorenwerte standardmäßig maskiert. Weitere Informationen zum Konfigurieren des Prozesses zur Aufhebung der Bereinigung finden Sie unter Bereinigen vertraulicher Werte. ".**password$", ".\*secret$", ".\*key$", ".\*token$", ".\*credentials.**", ".*vcap_services$"
spring.boot.admin.probed-endpoints Bei Clientanwendungen mit Spring Boot 1.x sucht Spring Boot Admin mithilfe einer OPTIONS-Anforderung nach den angegebenen Endpunkte. Wenn sich der Pfad von der ID unterscheidet, können Sie diesen Wert als id:path angeben (z. B. health:ping) "health", "env", "metrics", "httptrace:trace", "threaddump:dump", "jolokia", "info", "logfile", "refresh", "flyway", "liquibase", "heapdump", "loggers", "auditevents"
spring.boot.admin.instance-proxy.ignored-headers Header, die beim Senden von Anforderungen an Clients nicht weitergeleitet werden sollen "Cookie", "Set-Cookie", "Authorization"
spring.boot.admin.ui.title Der angezeigte Seitentitel "Spring Boot Admin"
spring.boot.admin.ui.poll-timer.cache Abrufdauer in Millisekunden für das Abrufen neuer Cachedaten 2500
spring.boot.admin.ui.poll-timer.datasource Abrufdauer in Millisekunden für das Abrufen neuer Daten aus Datenquelle 2500
spring.boot.admin.ui.poll-timer.gc Abrufdauer in Millisekunden für das Abrufen neuer GC-Daten 2500
spring.boot.admin.ui.poll-timer.process Abrufdauer in Millisekunden für das Abrufen neuer Prozessdaten 2500
spring.boot.admin.ui.poll-timer.memory Abrufdauer in Millisekunden für das Abrufen neuer Daten aus dem Arbeitsspeicher 2500
spring.boot.admin.ui.poll-timer.threads Abrufdauer in Millisekunden für das Abrufen neuer Daten aus Threads 2500
spring.boot.admin.ui.poll-timer.logfile Abrufdauer in Millisekunden für das Abrufen neuer Daten aus Protokolldateien 1000
spring.boot.admin.ui.enable-toasts Aktiviert oder deaktiviert Popupbenachrichtigungen false
spring.boot.admin.ui.title Wert des Fenstertitels des Browsers ""
spring.boot.admin.ui.brand HTML-Code, der im Navigationsheader gerendert wird und standardmäßig den Namen „Spring Boot Admin“ aufweist. Standardmäßig steht der Name nach dem Spring Boot Admin-Logo. ""
management.scheme Wert, der in der Dienst-URL ersetzt wird, die für den Zugriff auf die Aktorenendpunkte verwendet wird
management.address Wert, der in der Dienst-URL ersetzt wird, die für den Zugriff auf die Aktorenendpunkte verwendet wird
management.port Wert, der in der Dienst-URL ersetzt wird, die für den Zugriff auf die Aktorenendpunkte verwendet wird
management.context-path Wert, der an die Dienst-URL angefügt wird, die für den Zugriff auf die Aktorenendpunkte verwendet wird ${spring.boot.admin.discovery.converter.management-context-path}
health.path Wert, der an die Dienst-URL angefügt wird, die für die Integritätsprüfung verwendet wird. Wird von EurekaServiceInstanceConverter ignoriert ${spring.boot.admin.discovery.converter.health-endpoint}
spring.boot.admin.discovery.enabled Aktiviert die DiscoveryClient-Unterstützung für den Verwaltungsserver. true
spring.boot.admin.discovery.converter.management-context-path Wert, der an das service-url-Element des ermittelten Diensts angefügt wird, wenn der management-url-Wert durch DefaultServiceInstanceConverter konvertiert wird /actuator
spring.boot.admin.discovery.converter.health-endpoint-path Wert, der an das management-url-Element des ermittelten Diensts angefügt wird, wenn der health-url-Wert durch DefaultServiceInstanceConverter konvertiert wird "health"
spring.boot.admin.discovery.ignored-services Dienste, die bei Verwendung der Ermittlung ignoriert und nicht als Anwendung registriert werden. Unterstützt einfache Muster wie "foo*", "*bar" und "foo*bar*"
spring.boot.admin.discovery.services Dienste, die bei Verwendung der Ermittlung enthalten und als Anwendung registriert sind. Unterstützt einfache Muster wie "foo*", "*bar" und "foo*bar*" "*"
spring.boot.admin.discovery.ignored-instances-metadata Dienste werden ignoriert, wenn sie mindestens ein Metadatenelement enthalten, das Mustern in dieser Liste entspricht. Unterstützt Muster wie "discoverable=false"
spring.boot.admin.discovery.instances-metadata Dienste sind enthalten, wenn sie mindestens ein Metadatenelement enthalten, das Mustern in der Liste entspricht. Unterstützt Muster wie "discoverable=true"

Häufig verwendete Konfigurationen

  • Konfigurationen im Zusammenhang mit der Protokollierung:
    • logging.level.*
    • logging.group.*
    • Alle weiteren Konfigurationen unter dem logging.*-Namespace sollten nicht zugelassen werden. Beispiel: Das Schreiben von Protokolldateien mit logging.file sollte nicht zugelassen werden.

Nächste Schritte