Share via


Überwachen des Betriebs für den Azure Spring Apps-Zielzonenbeschleuniger

Dieser Artikel enthält Überlegungen zu Einblicken und Empfehlungen für Ihre in Azure Spring Apps bereitgestellte Spring Boot-Anwendung.

Die Organisation kann eine zentralisierte Überwachung bereitstellen, die von allen Workloads gemeinsam genutzt wird, oder dedizierte Azure Monitor Log Analytics-Arbeitsbereiche pro Workload bereitstellen. Wenn Sie von den zentralisierten Ressourcen abhängig sind, stellen Sie sicher, dass die Anwendungsteammitglieder mit ihren Rollen der rollenbasierten Zugriffssteuerung (Role-Based Access Control, RBAC) von Azure auf die Protokolle haben.

Informationen zum Plattformdesign finden Sie unter Workdloadverwaltung und -überwachung.

Sie können Ihre eigenen Überwachungsressourcen bereitstellen. Dieser Ansatz gibt dem Anwendungsteam mehr Autonomie und vereinfacht die allgemeine Verwaltung Ihrer Anwendung. Der Kompromiss kann ein höherer Verwaltungsaufwand sein. Der Azure Spring Apps-Zielzonenbeschleuniger und der folgende Leitfaden basieren auf diesem Ansatz.

Überlegungen zum Entwurf

  • Protokolle und Metriken. Sammeln Sie Protokolle und Metriken, die von der Anwendung und den Ressourcen ausgegeben werden. Protokolle bieten Einblicke in den Vorgänge des Workloads. Metriken werden in regelmäßigen Abständen gesammelt und bieten Erkenntnisse nahezu in Echtzeit. Protokolle und Metriken können bei Untersuchungen im Zusammenhang mit der Integrität und Nutzung von Ressourcen helfen.

    Metriken sind für Skalierungsentscheidungen entscheidend. Sie können Apps die Skalierung basierend auf Metrikschwellenwerten erlauben, oder Apps können während eines bestimmten Zeitfensters skalieren.

    Sie sollten erwägen, diese Daten für zukünftige Analysen zu speichern. Behalten Sie die Fähigkeit, Daten zu visualisieren, damit Sie Trends schnell erkennen können.

  • Instrumentierung. Sehen Sie eine Instrumentierung vor, um mehr Daten zu Einblicken aus der Anwendung zu generieren. Verwenden Sie zum Sammeln von Instrumentierungsinformationen ein Application Performance Management (APM)-Tool, z. B. Azur Application Insights Java-Agent. Kombinieren Sie Plattformdiagnose mit diesen Informationen, um erweiterte Überwachungsfunktionen bereitzustellen.

  • Verteilte Ablaufverfolgung: Implementieren Sie die verteilte Ablaufverfolgung, um Einblicke zu verschiedenen Diensten innerhalb Ihres Azure Spring Apps-Ökosystems zu erhalten.

  • Warnungen: Die Anwendungsteams müssen über Ereignisse benachrichtigt werden, die für den Workload wichtig sind. Sie können Warnungen festlegen, die Ressourcen basierend auf Metriken wie Speicher, Anforderungsrate und Datennutzung überwachen.

  • Integritätstests. Sie können Integritätstests einrichten, um die Integrität der Back-End-Dienste zu erkennen. Überprüfen Sie, wie die Integritätstests eingerichtet sind, damit Anforderungen an fehlerfreie Instanzen weitergeleitet werden, und stellen Sie sicher, dass die Anwendung ordnungsgemäß beendet wird, wenn keine Back-End-Dienste verfügbar sind.

Entwurfsempfehlungen

  • Verwenden Sie Azure Monitor-Metriken, um Metriken zu sammeln, die von überwachten Ressourcen in einer Zeitreihendatenbank ausgegeben werden.

    Zeigen Sie für Azure Spring Apps die Diagramme auf jeder Anwendungsübersichtsseite und auf der Seite mit allgemeinen Metriken an.

  • Verwenden Sie die Seite Diagnoseeinstellung in Azure Spring Apps, um die gewünschte Kombination von Diagnoseeinstellungen für Ihre Apps zu konfigurieren.

    Hinweis

    Es kommt zu einer Verzögerung für die Anzeige von Protokollen in Ihrem Speicherkonto, Ihrem Event Hub oder der Protokollanalyse. Wenn die Spring-App-Instanzen während dieser Zeit gelöscht oder verschoben werden, sollten die Diagnoseeinstellungen gelöscht werden, um sicherzustellen, dass eine andere App mit derselben Ressourcen-ID nicht dieselbe Diagnoseeinstellung wiederverwendet.

  • Nutzen Sie Application Insights als einheitliches Tool zur Anwendungsleistungsüberwachung (Application Performance Monitoring, APM) für alle Anwendungskomponenten und zum Sammeln von Anwendungsprotokollen, Metriken und Ablaufverfolgungsdaten. Es kann Daten aus allen Abhängigkeiten und Ablaufverfolgungen sammeln und bietet die Möglichkeit, End-to-End-Transaktionen zu visualisieren.

    Mit Azure Spring Apps können Sie Spring Cloud Resilience4J-Metriken in Application Insights sammeln. Aktivieren Sie den Java-In-Process-Agent, und konfigurieren Sie die Dimensionssammlung, um diese Funktion zu aktivieren.

    Azure Spring Apps integriert Spring Cloud Sleuth und Zipkin in Application Insights.

  • Wählen Sie Dienstermittlungsmechanismen aus, mit denen Sie App-Instanzen schnell ermitteln und registrieren können. Die Optionen variieren je nach Azure Spring Apps-Ebene.

  • Verwenden Sie Bereitschafts- und Livetests zusammen, damit fehlerhafte App-Instanzen aus den Dienstermittlungsfunktionen entfernt werden.

  • Wenn Ihre Anwendung eine längere Startzeit hat, passen Sie den Gesamttimeout „initialDelaySeconds + periodSeconds * failureThreshold“ auf einen Wert an, der länger als die Startzeit Ihrer Anwendung ist. Diese Anpassung trägt dazu bei, einen Fehler beim Test zu vermeiden und den Neustart der Anwendung zu erzwingen.

  • Konfigurieren Sie Ihre Integritätstests, um Aktionen basierend auf dem anwendungsspezifischen Befehl, einer TCP-Socket-Verbindung oder einer HTTP-Anforderung auszuführen.

  • Nutzen Sie für Spring Boot-Apps den Spring Boot Actuator Health Indicator, um Ihre Integritätstests zu konfigurieren.

Nächste Schritte

Azure Spring Apps-Zielzonenbeschleuniger