Entwickeln von Vorgängen mit Einblicken
- 15 Minuten
Erstellen Sie eine Kultur, die die Qualität kontinuierlich verbessert, indem Sie die Arbeitsauslastung überwachen und alle Säulen des Azure Well-Architected Framework berücksichtigen. Ermöglichen Sie es dem Team und den Projektbeteiligten, sowohl kurzfristige als auch langfristige Entscheidungen über viele Facetten hinweg zu treffen, indem sie die erforderlichen Daten, Statistiken und Trends bereitstellen. Erfahren Sie mehr über Ihre Daten und fördern Sie Verbesserungen.
Vorgänge, die für die Zwecke der Observierbarkeit entwickelt wurden, sind entscheidend für die proaktive Wartung der Anwendung, Qualität und Sicherheitssicherung, Kapazitätsplanung und Produktmanagement.
Ein wichtiger Aspekt der Anwendungsüberwachung ist die Verwendung der Gesundheitsmodellierung, um Probleme zu antizipieren, bevor sie zu Vorfällen werden und sich auf die Kundenbindung auswirken. Die effiziente Überwachung reduziert reaktive Zyklen, die für die Vorfallverwaltung aufgewendet werden.
Beispielszenario
Contoso hat eine App für die interne Verwendung namens Contoso Real Estate entwickelt. Diese Web-App ermöglicht es Neueinstellungen oder vorhandenen Mitarbeitern, die umziehen, nach Kurzzeitwohnungen zu suchen und diese zu reservieren, um ihren Umzug zu erleichtern. Die Personalabteilung von Contoso verwendet auch die App, um Umsiedlungen zu unterstützen.
Die App befindet sich in der Produktion und wird vollständig in Azure bereitgestellt. Es basiert auf Mikrodiensten mit Azure-Container-Apps und verwendet auch Azure-Funktionen, Azure-Datenbank für PostgreSQL, Azure Blob Storage und Azure Monitor.
Beobachten Ihrer Arbeitsauslastung durch Telemetrie
Übertragen Sie Telemetrie aus dem Anwendungscode, die die Schlüsselpunkte des Ausführungsflusses korreliert und eine umfassende Ansicht auf unterschiedlichen Detailebenen bietet.
Priorisieren Sie Aktionen basierend auf dem Schweregrad und verstehen Sie den Kontext angesichts seiner Ausführlichkeit. Diese Informationen sind für Problembehandlungszwecke von entscheidender Bedeutung.
Herausforderung für Contoso
- Benutzer melden, dass nach einer kürzlichen Aktualisierung der Contoso Real Estate-Anwendung gelegentlich eine leere Seite oder eine generische Fehlermeldung auf der Suchseite der Web App angezeigt wird. Die Fehler scheinen zufällig zu sein, und die Suchfunktion funktioniert in der Regel, wenn die Benutzer nur die Seite aktualisieren oder die Suche erneut übermitteln.
- Beim Überprüfen der Protokolle des Such-Microservice bemerkt das Team eine Zunahme von Fehlern aufgrund von Zeitüberschreitungen bei der Verbindung zur Azure-Datenbank für PostgreSQL. Derzeit gibt es jedoch keine Möglichkeit festzustellen, ob ein Fehler, der in den Protokollen des Such-Microservice angezeigt wird, den Fehlerseiten entspricht, die die Benutzer sehen.
Anwenden des Ansatzes und der Ergebnisse
- Das Entwicklungsteam hat beschlossen, die Informationen zu erweitern, die sie sowohl von der Web-App als auch von den kernigen Mikrodiensten protokollieren, um tiefer in das Problem einzutauchen. Für das Suchszenario stellen sie sicher, dass die Suchbegriffe zusammen mit anderen verfügbaren Transaktionsattributen wie Zeit, Client-IP und dem Benutzernamen erfasst werden, der der Suche zugeordnet ist. Diese zusätzlichen Daten sollten ihnen genügend Informationen geben, um Transaktionen über Ebenen hinweg korrelieren zu können.
- Diese Änderung ermöglichte es dem Team zu bestätigen, dass Timeouts für Datenbankabfragen, die im neuesten Update der App nicht ordnungsgemäß behandelt wurden, die Ursache für die Fehler waren, die die Benutzer hatten. Nach der Suche nach der Ursache war es für das Team einfach, einen Fix zu implementieren.
- Das Team entwickelt nun einen neuen Ansatz mit OpenTelemetry, um eine umfassendere verteilte Ablaufverfolgungslösung zu implementieren, die alle Lösungsebenen abdeckt.
Visualisieren von Überwachungsdaten in Dashboards
Aggregieren und visualisieren Sie Daten in Dashboards, um Überwachungsdaten darzustellen, die auf Zielgruppen ausgerichtet sind, und behalten Sie den Geschäftskontext im Auge. Verwenden Sie Situationsdashboards zum Anzeigen von Daten, um das Bewusstsein für die Beteiligten zu steigern. Verwenden Sie operative Dashboards und Arbeitsmappen mit Drilldownfunktionen für Operatoraktivitäten wie die Reaktion auf Vorfälle. Aktualisieren Sie die Dashboards häufig, und stellen Sie präzise Daten bereit.
Mit Visualisierungen können Sie Trends analysieren, Geschäftsziele nachverfolgen und Vorfälle verwalten.
Dashboards, die auf das Interesse des Kunden zugeschnitten sind, machen Interpretation relevant und beschleunigen die Zeit zur Erkennung und Aktion.
Herausforderung für Contoso
- Das Workloadteam aggregiert Telemetriedaten aus allen Lösungsebenen in einem einzigen Log Analytics-Arbeitsbereich, auf den von den Betriebs- und Entwicklungsteams und anderen Projektbeteiligten zugegriffen werden kann. Die Interaktion mit den Daten ist jedoch schwierig und komplex, was für Teammitglieder frustrierend ist, die Hintergrundgeräusche von umsetzbaren Daten erkennen müssen.
Anwenden des Ansatzes und der Ergebnisse
- Das Team bemüht sich, Daten mithilfe von Dashboards zu aggregieren und zu visualisieren. Jedes Dashboard wird auf eine bestimmte Zielgruppe zugeschnitten:
- Die Dashboards der Lösungsbeteiligten werden geschäftsorientierter sein und einen höheren Überblick über die Gesamtintegrität der Lösung sowie Geschäftsindikatoren wie die Anzahl der bereitgestellten Benutzer, Suchvorgänge und Reservierungen darstellen.
- Betriebs-Dashboards und Arbeitsmappen werden detailliertere und granulierte Daten für das Operationsteam enthalten. Diese Dashboards verfügen über Drilldownfunktionen, mit denen benutzer die Daten auf unterschiedlichen Granularitätsebenen untersuchen können. Die Benutzer können diese Dashboards und Arbeitsmappen verwenden, um Problembehandlungs- und andere Aufgaben zur Reaktion auf Vorfälle auszuführen.
- Mit den Dashboards können Benutzer Trends analysieren, Geschäftsziele nachverfolgen und Vorfälle effektiver verwalten. Die auf jedem Dashboard präsentierten Daten sind für ihre beabsichtigte Zielgruppe relevanter und werden von ihren Interessen und Bedürfnissen gesteuert.
Entwerfen einer robusten Warnungsstrategie
Machen Sie Warnungen umsetzbar, indem Sie die verantwortlichen Rollen mit standardisierten Beschreibungen und Schweregraden benachrichtigen. Stellen Sie Informationen bereit, die aus verschiedenen Quellen zusammengetragen sind, und verfolgen Sie Abweichungen von Geschäftszielen nach.
Lösen Sie Warnungen nur bei Incidents aus, die Maßnahmen erfordern, und bemühen Sie sich um proaktive und zum Nachdenken anregende Warnungen, die Maßnahmen einleiten, bevor ein fehlerhafter Zustand zu einem Ausfall wird. Ein gutes Warnungssystem identifiziert Aktionen und Schweregrad und bietet nur genügend Daten, um Klarheit und Zweck zu steigern. Operatoren können unverzüglich mit der Behebung beginnen.
Herausforderung für Contoso
- Azure Monitor wird verwendet, um Warnungen an das Betriebsteam zu senden, wenn ein Fehler auftritt. Das Team empfängt derzeit jedoch zu viele Warnungen, die irrelevant, unklar oder redundant sind. Dies führt zu Alarmmüdigkeit, beeinträchtigt die Produktivität des Teams und führt dazu, dass einige wichtige Warnungen unbemerkt bleiben.
- Es gab auch einige Situationen von Ausfällen, die verhindert oder minimiert werden konnten, wenn eine Warnung vor einem Fehler gesendet wurde. Wenn das Team bessere Warnungen bezüglich Verschlechterungen gehabt hätte, bevor Ausfälle auftreten, hätten diese Situationen möglicherweise vermieden werden können. So gab es z. B. Fälle, in denen Verlangsamungen in der Verarbeitungszeit von Datenbankabfragen zu Ausfällen geführt haben. Während der Problembehandlung bei den Ausfällen bemerkt das Team, dass die Abfrageverarbeitungsleistung im Laufe der Zeit langsam abnimmt, schlimmer und schlimmer wird, bis es zu einem vollständigen Ausfall führt.
Anwenden des Ansatzes und der Ergebnisse
- Das Operationsteam startet eine Initiative, um alle Warnungen mit niedriger Priorität zu bereinigen, was zu einer Alarmmüdigkeit führt. Nur kritische und umsetzbare Warnungen dürfen aktiv bleiben. Außerdem überprüft das Team die Benachrichtigungen, die aktiv bleiben, und verbessert diese, um sicherzustellen, dass sie genügend Kontext enthalten, damit sie die erforderlichen Korrekturmaßnahmen ergreifen können.
- Sie nutzen auch die Möglichkeit, neue proaktive und umsetzbare Warnungen zu definieren, die es ihnen ermöglichen, Maßnahmen zu ergreifen, bevor ein Fehler auftritt. Sie generieren beispielsweise eine neue Warnung, um die DBAs zu benachrichtigen, sobald eine konsistente Verlangsamung der Datenbankabfrageleistung angezeigt wird.
- Als nächster Schritt prüft das Team die Automatisierung von Antworten auf allgemeine Warnungen, z. B. die Situation mit der Leistung von Datenbankabfragen.