Dieses Dokument im Google Cloud-Architektur-Framework enthält Betriebsprinzipien zum Erstellen von Benachrichtigungen, die Ihnen beim Ausführen zuverlässiger Dienste helfen. Je mehr Informationen Sie über die Leistung Ihres Dienstes haben, desto besser sind Ihre Entscheidungen über ein Problem. Gestalten Sie Ihre Benachrichtigungen so, dass alle nutzerrelevanten Systemprobleme frühzeitig und genau erkannt und falsch positive Ergebnisse minimiert werden.
Benachrichtigungsverzögerung optimieren
Zu früh gesendete Benachrichtigungen, durch die das operative Team überlastet wird, und zu spät gesendete Benachrichtigungen, die lange Dienstausfälle verursachen, sollten in ein Gleichgewicht gebracht werden. Passen Sie die Benachrichtigungsverzögerung an, nach der das Monitoringsystem Personen über ein Problem benachrichtigt. Dadurch minimieren Sie die Zeit zur Erkennung und maximieren gleichzeitig das Signal-zu-Rausch-Verhältnis. Verwenden Sie die Fehlerbudget-Verbrauchsrate, um die optimale Benachrichtigungskonfiguration zu ermitteln.
Benachrichtigung bei Symptomen statt Ursachen
Lösen Sie Benachrichtigungen auf Basis der direkten Auswirkungen auf die Nutzererfahrung aus. Die Nichteinhaltung globaler oder kundenspezifischer SLOs weist auf eine direkte Auswirkung hin. Senden Sie Warnungen nicht bei jeder möglichen Ursache für einen Fehler, besonders wenn die Auswirkungen auf ein einzelnes Replikat beschränkt sind. Ein gut durchdachtes verteiltes System wird nahtlos wiederhergestellt, wenn ein einzelnes Replikat ausfällt.
Benachrichtigung über Ausreißerwerte anstelle von Durchschnittswerten
Definieren Sie beim Überwachen der Latenz SLOs und legen Sie Benachrichtigungen für Latenzen für das 90., 95. oder 99. Perzentil fest (zwei von drei auswählen), nicht für die durchschnittliche oder die 50. Perzentillatenz. Gute Werte für durchschnittliche oder Median-Latenz können inakzeptabel hohe Werte beim 90. Perzentil oder höher verbergen, die zu einer sehr schlechten Nutzererfahrung führen. Daher sollten Sie dieses Prinzip der Benachrichtigung bei Ausreißerwerten anwenden, wenn die Latenz bei kritischen Vorgängen überwacht wird, z. B. bei einer Anfrage-Antwort-Interaktion mit einem Webserver, einer Batchabschluss in einer Datenverarbeitungspipeline oder einem Lesevorgang oder Schreibvorgang in einem Speicherdienst.