In diesem Dokument wird beschrieben, wie Sie benachrichtigt werden, wenn die Ausführung Ihrer Anwendung fehlschlägt oder ihre Leistung nicht die festgelegten Kriterien erfüllt.
Funktionsweise von Benachrichtigungen
Der Cloud Monitoring-Benachrichtigungsprozess besteht aus drei Teilen:
Eine Benachrichtigungsrichtlinie, in der beschrieben wird, unter welchen Umständen und wie Sie über einen Vorfall benachrichtigt werden möchten. Mit der Benachrichtigungsrichtlinie können Zeitreihendaten, die von Monitoring gespeichert werden, oder Protokolle, die von Cloud Logging gespeichert werden, überwacht werden. Wenn diese Daten die Bedingung der Benachrichtigungsrichtlinie erfüllen, erstellt Monitoring einen Vorfall und sendet die Benachrichtigungen.
Jeder Vorfall ist ein Datensatz, der die Art der überwachten Daten und den Zeitpunkt enthält, zu dem die Bedingungen erfüllt wurden. Diese Informationen können Ihnen bei der Behebung der Probleme helfen, die den Vorfall verursacht haben.
Ein Benachrichtigungskanal definiert, wie Sie benachrichtigt werden, wenn in Monitoring ein Vorfall erstellt wird. Sie können beispielsweise einen Benachrichtigungskanal so konfigurieren, dass eine E-Mail an
[email protected]
gesendet und eine Slack-Nachricht im Kanal#my-support-team
gepostet wird. Eine Benachrichtigungsrichtlinie kann einen oder mehrere Benachrichtigungskanäle enthalten.
Für Benachrichtigungsrichtlinien können drei Arten von Daten ausgewertet werden:
Zeitreihendaten, auch Messwertdaten genannt, die von Monitoring gespeichert werden. Diese Richtlinien werden als messwertbasierte Benachrichtigungsrichtlinien bezeichnet.
Informationen zum Einrichten einer messwertbasierten Benachrichtigungsrichtlinie finden Sie in der Kurzanleitung für Compute Engine.
Von Cloud Logging gespeicherte Daten zu Logeinträgen. Benachrichtigungsrichtlinien, bei denen einzelne Logeinträge ausgewertet werden, werden als logbasierte Benachrichtigungsrichtlinien bezeichnet. Mit logbasierten Benachrichtigungsrichtlinien werden Sie benachrichtigt, wenn eine bestimmte Nachricht in Ihren Logs angezeigt wird. Weitere Informationen finden Sie unter Logs überwachen.
Die Ergebnisse einer SQL-Abfrage, die in Log Analytics für in Logging gespeicherte Logeintragsdaten ausgeführt wird. Benachrichtigungsrichtlinien, die die Ergebnisse einer SQL-Abfrage überwachen, werden als SQL-basierte Benachrichtigungsrichtlinien bezeichnet. Weitere Informationen finden Sie unter SQL-Abfrageergebnisse mit einer Benachrichtigungsrichtlinie überwachen.
SQL-basierte Benachrichtigungsrichtlinien befinden sich in der öffentlichen Vorschau.
Mithilfe von Benachrichtigungen können Sie auf Probleme reagieren, wenn die Leistung einer Anwendung nicht den zulässigen Werten entspricht. Sie stellen beispielsweise eine Webanwendung auf einer Compute Engine-VM-Instanz bereit. Sie erwarten zwar, dass die HTTP-Antwortlatenz schwankt, aber Sie möchten, dass Ihr Supportteam reagiert, wenn die Anwendung über einen längeren Zeitraum eine hohe Latenz aufweist. Sie können eine messwertbasierte Benachrichtigungsrichtlinie erstellen, die den HTTP-Antwortlatenzmesswert der Anwendung überwacht. Wenn die Antwortlatenz mindestens fünf Minuten lang länger als zwei Sekunden ist, erstellt Monitoring einen Vorfall und sendet E-Mail-Benachrichtigungen an Ihr Supportteam.
Benachrichtigungsrichtlinie erstellen
Es gibt mehrere Möglichkeiten, eine Benachrichtigungsrichtlinie zu erstellen. Sie können beispielsweise vorkonfigurierte Benachrichtigungsrichtlinien verwenden, indem Sie empfohlene Benachrichtigungen aus Integrationen oder bestimmten Seiten in der Google Cloud Console aktivieren. Sie können eine neue Benachrichtigungsrichtlinie auch mit der Google Cloud Console, der Cloud Monitoring API, der Google Cloud CLI und Terraform konfigurieren.
Integrationen und empfohlene Benachrichtigungsrichtlinien verwenden
Monitoring bietet vordefinierte Pakete, mit denen Sie Benachrichtigungsrichtlinien für Ihre Google Cloud-Dienste und Integrationen von Drittanbietern erstellen können. Die Pakete enthalten empfohlene Benachrichtigungsrichtlinien, Beispiel-Dashboards und wichtige Messwerte für den Dienst. Diese Pakete sind für Google Cloud-Dienste wie Google Kubernetes Engine, Compute Engine und Cloud SQL sowie gängige Integrationen von Drittanbietern wie MongoDB, Kafka und Elasticsearch verfügbar.
Wenn Sie ein Paket installieren, können Sie die empfohlenen Benachrichtigungsrichtlinien des Pakets aktivieren. Wenn Sie eine empfohlene Benachrichtigungsrichtlinie aktivieren, konfigurieren Sie den Benachrichtigungskanal und ändern optional andere Werte. Nach der Konfiguration wird das Ziel der Benachrichtigungsrichtlinie sofort überwacht, ohne dass weitere Nutzereingaben erforderlich sind.
Empfohlene Benachrichtigungsrichtlinien sind hilfreich, wenn Sie einen neuen Dienst bereitgestellt haben und bei wichtigen Messwerten benachrichtigt werden möchten. Das Cloud SQL-Integrationspaket enthält beispielsweise empfohlene Benachrichtigungsrichtlinien für fehlgeschlagene Instanzen und langsame Transaktionen:
Weitere Informationen zu Benachrichtigungsintegrationen finden Sie unter Drittanwendungen überwachen.
Neue Benachrichtigungsrichtlinien erstellen
Sie können Benachrichtigungsrichtlinien erstellen, um je nach Bedarf verschiedene Arten von Daten zu überwachen. In den folgenden Abschnitten werden die verschiedenen Datentypen aufgeführt, die Sie mit Benachrichtigungsrichtlinien überwachen können.
Zeitachsendaten überwachen
Bedingungstyp | Beschreibung | Beispiel |
---|---|---|
Bedingung für Messwertschwellen | Bedingungen für Messwertgrenzwerte werden erfüllt, wenn die Werte eines Messwerts innerhalb eines bestimmten Wiederholungszeitraums über oder unter einem Grenzwert liegen. Weitere Informationen finden Sie unter Benachrichtigungsrichtlinien mit Messwertschwellen erstellen und Benachrichtigungsrichtlinien mit der API erstellen. |
Sie möchten eine Benachrichtigungsrichtlinie, die eine Benachrichtigung sendet, wenn die Antwortlatenz bei fünf aufeinanderfolgenden Verfügbarkeitsdiagnosen über einen Zeitraum von 10 Minuten mindestens 500 ms beträgt. |
Bedingung für fehlenden Messwert | Bedingungen für fehlende Messwerte werden erfüllt, wenn eine überwachte Zeitachse für ein bestimmtes Wiederholungsfenster keine Daten enthält. Das maximale Zeitfenster für den Wiederholungstest beträgt 23,5 Stunden. Weitere Informationen finden Sie unter Benachrichtigungsrichtlinien für fehlende Messwerte erstellen und Benachrichtigungsrichtlinien mit der API erstellen. | Sie möchten eine Benachrichtigungsrichtlinie, die einen Vorfall bei Ihrem Supportteam öffnet, wenn eine Ressource innerhalb von fünf Minuten nicht auf HTTP-Anfragen antwortet. |
Bedingung für prognostizierten Messwert | Die Bedingungen für prognostizierte Messwertwerte werden erfüllt, wenn die Benachrichtigungsrichtlinie vorhersagt, dass der Grenzwert innerhalb des nächsten Prognosezeitraums überschritten wird. Der Prognosezeitraum kann zwischen einer Stunde und sieben Tagen liegen. Weitere Informationen finden Sie unter Benachrichtigungsrichtlinien für prognostizierte Messwerte erstellen und Benachrichtigungsrichtlinien mit der API erstellen. |
Sie möchten eine Benachrichtigungsrichtlinie, die einen Vorfall bei Ihrem Supportteam öffnet, wenn eine Ressource innerhalb der nächsten 24 Stunden voraussichtlich 80% der Laufwerksnutzung erreicht. |
Daten zu Logeinträgen überwachen
Verwenden Sie eine logbasierte Benachrichtigungsrichtlinie, um einzelne Logeinträge zu überwachen.
Eine Bedingung in einer logbasierten Benachrichtigungsrichtlinie ist erfüllt, wenn die Benachrichtigungsrichtlinie erkennt, dass ein Ausdruck aus einem Logeintrag den Kriterien der Benachrichtigungsrichtlinie entspricht. Angenommen, Sie möchten eine Benachrichtigungsrichtlinie, die einen Vorfall bei Ihrem Supportteam öffnet, wenn message
eines Logeintrags product_ids=['tier_1_support', 'tier_2_support']
enthält.
Weitere Informationen finden Sie in der Logging-Dokumentation unter Logbasierte Benachrichtigungsrichtlinien konfigurieren.
SQL-Abfrageergebnisse überwachen
Verwenden Sie eine SQL-basierte Benachrichtigungsrichtlinie, um die Ergebnisse von SQL-Abfrage zu überwachen.
Die Bedingung einer SQL-basierten Benachrichtigungsrichtlinie analysiert regelmäßig Ihre Protokolleintragsdaten und erstellt dann Vorfälle, wenn die Tabelle der Abfrageergebnisse bestimmte Kriterien erfüllt. Diese Art von Benachrichtigungsrichtlinie ist hilfreich, wenn Sie eine Benachrichtigungsrichtlinie benötigen, die Datenaggregationen oder komplexe Muster über mehrere Logeinträge hinweg überwacht. Angenommen, Sie möchten benachrichtigt werden, wenn mehr als 50 Logeinträge in den letzten 60 Minuten den Schweregrad WARNING
haben.
Weitere Informationen finden Sie in der Logging-Dokumentation unter SQL-Abfrageergebnisse mit einer Benachrichtigungsrichtlinie überwachen.
Komponenten von Benachrichtigungsrichtlinien
Jede Benachrichtigungsrichtlinie besteht aus den folgenden Komponenten:
Eine Bedingung, die beschreibt, wann sich eine Ressource oder eine Gruppe von Ressourcen in einem Zustand befindet, der eine Reaktion von Ihnen erfordert. Die Bedingung umfasst die Datenquelle, einen statischen oder dynamischen Grenzwert und Methoden zur Datenaggregation wie Filter und Gruppierung. Sie können Bedingungen für einen einzelnen Messwert, mehrere Messwerte oder ein Messwertverhältnis festlegen. Sie können auch die Prometheus Query Language (PromQL) verwenden, um komplexe Ausdrücke wie dynamische Grenzwerte und bedingte Logik einzubinden.
Wenn Sie eine Integration verwenden, um eine empfohlene Benachrichtigungsrichtlinie zu aktivieren, wird die Bedingung der Benachrichtigungsrichtlinie vorab ausgefüllt.
Eine Liste der Benachrichtigungskanäle, die beschreiben, wer benachrichtigt werden soll, wenn eine Aktion erforderlich ist. Weitere Informationen finden Sie unter Benachrichtigungskanäle erstellen und verwalten.
Dokumentation, die in Benachrichtigungen und auf Seiten zu Vorfällen angezeigt wird. Sie können den Betreff einer Benachrichtigung konfigurieren und dem Text der Benachrichtigung hilfreiche Informationen hinzufügen. Sie können die Benachrichtigung beispielsweise so konfigurieren, dass Links zu internen Playbooks oder zu Google Cloud-Seiten wie benutzerdefinierten Dashboards angezeigt werden. Weitere Informationen zur Dokumentation, einschließlich Beispielen, finden Sie unter Vorfälle mit benutzerdefinierter Dokumentation annotieren.
Abfragesprachen
Mit Abfragesprachen und Filtern in Ihren Benachrichtigungsrichtlinien können Sie die Messwertbewertung besser steuern. Für Monitoring werden die folgenden Abfragetypen unterstützt:
Die Prometheus Query Language (PromQL) ist eine funktionale Abfragesprache, mit der Zeitreihendaten in Echtzeit ausgewertet werden. Sie können Benachrichtigungsrichtlinien so konfigurieren, dass ihre Bedingungen eine PromQL-Abfrage enthalten. In Ihren PromQL-Abfragen können beliebige gültige Ausdrücke verwendet werden, z. B. Messwertkombinationen, Verhältnisse und Skalierungsgrenzwerte. Wenn Sie Benachrichtigungsrichtlinien mit einer PromQL-basierten Bedingung in Google Cloud konfigurieren, können Sie die Abhängigkeit von externer Benachrichtigungsinfrastruktur reduzieren. Weitere Informationen finden Sie unter PromQL in Cloud Monitoring und Benachrichtigungsrichtlinien mit PromQL.
Mit Monitoring-Filtern können Sie Benachrichtigungsrichtlinien so konfigurieren, dass filterbasierte Messwertverhältnisse verwendet werden. Filterbasierte Benachrichtigungsrichtlinien können in der Google Cloud Console nicht angezeigt oder geändert werden. Ein Beispiel für eine Richtlinie mit Monitoring-Filtern finden Sie unter Messwertverhältnis.
Monitoring Query Language (MQL) ist eine ausdrucksstarke, textbasierte Schnittstelle, mit der Sie Zeitreihendaten abrufen, filtern und bearbeiten können. Sie können Benachrichtigungsrichtlinien mit Bedingungen erstellen, die einen Benachrichtigungsvorgang in Monitoring Query Language (MQL) enthalten. Weitere Informationen finden Sie unter Monitoring Query Language und Benachrichtigungsrichtlinien mit MQL.
Benachrichtigungsrichtlinien und Vorfälle verwalten
Nachdem eine Benachrichtigungsrichtlinie aktiviert wurde, überwacht Monitoring kontinuierlich die Bedingungen dieser Richtlinie. Es ist nicht möglich, die Benachrichtigungsrichtlinie so zu konfigurieren, dass Bedingungen nur für bestimmte Zeiträume überwacht werden. Wenn Sie die Benachrichtigungsrichtlinie für einen bestimmten Zeitraum deaktivieren möchten, erstellen Sie eine Schlummerfunktion.
Wenn ein Vorfall geöffnet ist und Monitoring feststellt, dass die Bedingungen der messwertbasierten Richtlinie nicht mehr erfüllt sind, schließt Monitoring den Vorfall automatisch und sendet eine Benachrichtigung über den Abschluss.
Preise
Im Allgemeinen sind Cloud Monitoring-Systemmesswerte kostenlos, Messwerte von externen Systemen, Agents oder Anwendungen hingegen nicht. Abrechenbare Messwerte werden entweder nach der Anzahl der aufgenommenen Byte oder der Anzahl der aufgenommenen Stichproben abgerechnet.
Weitere Informationen zu den Preisen für Cloud Monitoring finden Sie in den folgenden Dokumenten:
Informationen zum Überwachen der Anzahl der aufgenommenen Trace-Bereiche oder Logs oder zum Erhalten einer Benachrichtigung, wenn bestimmte Inhalte in einem Logeintrag enthalten sind, finden Sie in den folgenden Dokumenten:
- Benachrichtigungen zur monatlichen Logaufnahme
- Benachrichtigungen zur monatlichen Aufnahme von Trace-Spans
- Logbasierte Benachrichtigungen konfigurieren
Nächste Schritte
Informationen zur Benachrichtigungslatenz und zu den Auswirkungen der Parameter für eine Benachrichtigungsrichtlinie beim Senden von Benachrichtigungen finden Sie unter Verhalten von messwertbasierten Benachrichtigungsrichtlinien.
Eine Liste mit Beispielen für messwertbasierte Richtlinien finden Sie unter Zusammenfassung von Beispielen für Benachrichtigungsrichtlinien.