Mit PromQL Benachrichtigungsrichtlinien erstellen

Auf dieser Seite wird beschrieben, wie Sie PromQL-basierte Benachrichtigungsrichtlinien in Cloud Monitoring erstellen. Mit PromQL-Abfragen können Sie komplexe Bedingungen mit Funktionen wie Verhältnissen, dynamischen Grenzwerten basierend auf einem anderen Messwert und kombinierten Messwerten erstellen. Sie können PromQL-basierte Benachrichtigungsrichtlinien auch so konfigurieren, dass sie mehr als zwei Jahre alte Daten verarbeiten.

Wenn Sie Prometheus in Umgebungen außerhalb Google Cloud, verwenden oder wenn Sie Benachrichtigungen in Managed Service for Prometheus verwenden, können Sie Ihre Prometheus-Benachrichtigungsregeln zu PromQL-basierten Benachrichtigungs richtlinien migrieren. So können Sie alle Ihre Benachrichtigungsrichtlinien in Cloud Monitoring verwalten.

Sie können auch Grafana-Dashboards in Cloud Monitoring importieren.

PromQL in Cloud Monitoring-Benachrichtigungsrichtlinien verwenden

Sie können PromQL-basierte Benachrichtigungsrichtlinien auf folgende Arten erstellen:

Vorfälle, die durch eine PromQL-basierte Benachrichtigungsrichtlinie erstellt wurden, werden in der Google Cloud Console zusammen mit Ihren anderen Vorfällen angezeigt. Sie können in der Google Cloud Console mit diesen Vorfällen interagieren.

In den Bedingungen Ihrer PromQL-basierten Benachrichtigungsrichtlinie kann auf jeden Messwert in Cloud Monitoring verwiesen werden, einschließlich Systemmesswerte von Google Cloud , benutzerdefinierte und logbasierte Messwerte sowie Prometheus-Messwerte. Sie müssen die Namen von Nicht-Prometheus-Messwerten in die PromQL-Messwertsyntax übersetzen. Weitere Informationen finden Sie unter Monitoring-Messwerte PromQL zuordnen.

Mehr als zwei Jahre alte Messwertdaten abfragen

Im Gegensatz zu anderen Benachrichtigungsrichtlinientypen, bei denen nur Messwertdaten der letzten 25 Stunden abgefragt werden können, können Sie mit PromQL Benachrichtigungen für bis zu zwei Jahre alte Messwertdaten einrichten. Dies unterstützt Anwendungsfälle wie die folgenden:

  • Anomalien erkennen, indem die letzten fünf Minuten mit dem gleichen Zeitraum vor einer Woche verglichen werden.
  • Eine 7-Tage-Benachrichtigungsrichtlinie für langsame Burn-Rate ausführen.
  • Den Durchschnittswert des letzten Monats abrufen und eine Benachrichtigung senden, wenn die Daten der letzten Stunde um mehr als drei Standardabweichungen von diesem Durchschnitt abweichen.
  • Mit der Funktion predict_linear die Daten der letzten Woche verwenden, um zu sehen, ob Sie am nächsten Tag einen Grenzwert überschreiten.

PromQL-Benachrichtigungsrichtlinien, die die letzten 25 Stunden an Daten verarbeiten, wie durch die Summe des Ausrichtungszeitraums und einer Zeitverschiebung durch den Modifikator offset definiert, können so häufig wie alle 30 Sekunden ausgewertet werden. Richtlinien, die ältere Daten verarbeiten, werden seltener ausgewertet. Der Mindestzeitraum hängt davon ab, wie weit zurück die Benachrichtigungsrichtlinie reicht:

Abfragezeitraum Mindestauswertungsintervall (Standard)
Bis zu 25 Stunden1 30 Sekunden
25 Stunden bis 8 Tage 5 Minuten
8 Tage bis 16 Tage 1 Stunde
16 Tage bis 32 Tage 2 Stunden
32 Tage bis 93 Tage 6 Stunden
93 Tage bis 2 Jahre 12 Stunden

1 Einige Messwerte von Google Cloud Diensten unterstützen nur Auswertungsintervalle von 30 Sekunden für bis zu 23 Stunden und 30 Minuten.

Legen Sie für alle rate-Dauern mindestens die Länge des Auswertungsintervalls fest, damit Ihre Benachrichtigungsrichtlinie keine Daten verpasst. Wenn Ihr Auswertungsintervall beispielsweise eine Stunde beträgt, sollte Ihre Abfrage so aussehen: rate(metric[1h]).

Für Bedingungen, die mehr als 25 Stunden an Daten verarbeiten, gilt eine Abfragefrist von zwei Minuten, die der Frist im Metrics Explorer entspricht. Wenn für Ihre PromQL-Abfrage im Metrics Explorer kein Zeitlimit überschritten wird, wird auch für Ihre Benachrichtigung kein Zeitlimit überschritten.

PromQL-Benachrichtigungsrichtlinien sind deutlich zuverlässiger, wenn sie die letzten 25 Stunden an Daten verarbeiten. Für maximale Zuverlässigkeit darf die Summe aus Testzeitraum, Ausrichtungszeitraum und einer Zeitverschiebung durch den Modifikator offset höchstens 25 Stunden betragen.

Testzeiträume sind für PromQL-Benachrichtigungsabfragen deaktiviert, die auf Daten zugreifen, die älter als 25 Stunden sind.

Sie können nur Benachrichtigungen für die letzten 25 Stunden an Daten für benutzerdefinierte Messwerte (das Präfix custom.googleapis.com) und benutzerdefinierte logbasierte Messwerte (das Präfix logging.googleapis.com/user/) einrichten.

Beschränkungen

Fügen Sie Ihren PromQL-basierten Benachrichtigungsrichtlinien keine Filter hinzu, die Systemmetadaten-Labels verwenden.

Eine PromQL-basierte Benachrichtigungsrichtlinie kann einen Testzeitraum von maximal 24 Stunden haben. Wenn Sie ein erneutes Testfenster verwenden, muss die Summe aus erneutem Testfenster, Ausrichtungszeitraum und einer Zeitverschiebung durch den Modifikator offset höchstens 25 Stunden betragen.

Wenn in Ihrer Prometheus-Benachrichtigungsregel auf einen Messwert verwiesen wird, müssen Sie zuerst einen entsprechenden Messwertdeskriptor in Cloud Monitoring haben, bevor Sie Ihre PromQL-basierte Benachrichtigungsrichtlinie erstellen können. Sie können diese Validierung jedoch überschreiben, indem Sie Ihre PromQL-basierte Benachrichtigungsrichtlinie mit der Cloud Monitoring API konfigurieren. Weitere Informationen finden Sie unter Prüfung auf Messwertexistenz deaktivieren.

Wenn Ihre Benachrichtigungsrichtlinie ein Verhältnis von Messwerten überwacht, legen Sie die Dauer auf mindestens das Doppelte des Auswertungsintervalls fest. Kürzere Zeiträume können zu falschen Vorfällen führen. Weitere Informationen finden Sie unter Falsche Benachrichtigungen aufgrund von Anomalien bei der Verhältnisberechnung.

Preise

Informationen zu den Preisen für Cloud Monitoring finden Sie auf der Seite Google Cloud Observability-Preise.