In diesem Dokument wird beschrieben, wie Sie Ihre Vorfälle indem Sie ihnen benutzerdefinierte Labels zuweisen. Diese Labels werden konfiguriert auf Benachrichtigungsrichtlinien und sind in den Benachrichtigungsrichtlinien Vorfälle. Abhängig von Ihrer Konfiguration sind die Labels auch Benachrichtigungen angezeigt.
Über Labels
Labels sind Schlüssel/Wert-Paare, mit denen Informationen eine Zeitreihe, eine Benachrichtigungsrichtlinie, einen Vorfall oder eine Benachrichtigung. Beispielsweise können die Beschriftungen einer Zeitreihe die spezifischen VM-Instanz, von der Daten erfasst wurden. Labels sind entweder benutzerdefiniert oder vordefiniert.
Benutzerdefinierte Labels
Benutzerdefinierte Labels enthalten Informationen, die Sie angeben. Diese Labels können entweder statische oder dynamische Werte haben:
Statische benutzerdefinierte Labels haben Werte, die nicht geändert werden können. Sie können statische benutzerdefinierte Labels beim Konfigurieren einer Benachrichtigungsrichtlinie mithilfe von der Google Cloud Console oder der Cloud Monitoring API. Weitere Informationen finden Sie in folgenden Dokumenten:
Dynamische benutzerdefinierte Labels haben Werte, die sich basierend auf folgenden Werten ändern können: die Zeitreihendaten. Sie können dynamische benutzerdefinierte Labels erstellen, wenn Sie Konfigurieren Sie die Bedingung einer Benachrichtigungsrichtlinie mit MQL. Ein Beispiel finden Sie unter Beispiel: Benutzerdefinierte Labels mit dynamischen Werten hinzufügen
Labelschlüssel müssen mit einem Kleinbuchstaben beginnen. Sowohl Labelschlüssel als auch Label -Werte dürfen nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche.
Vordefinierte Labels
Vordefinierte Labels sind in Ressourcendeskriptoren enthalten. müssen diese Labels die beim Schreiben von Zeitreihendaten ausgefüllt wird. Diese Labels zeigen Informationen den erfassten Messwert oder die Ressource, für die der Messwert geschrieben. Die Beschriftungen einer Zeitreihe könnten z. B. eine virtuelle Maschine (VM), eine Zone, ein Google Cloud-Projekt und ein Gerätetyp. Wenn Monitoring einen Vorfall auf Grundlage dieser Zeitreihe erstellt, übernimmt der Vorfall diese Labels.
Labels aufrufen
Sie können die Labels einer Benachrichtigungsrichtlinie oder eines Vorfalls ansehen auf der Detailseite eines Vorfalls auf der Detailseite einer Benachrichtigungsrichtlinie und in einigen Benachrichtigungen.
- Benachrichtigungsrichtlinien: Statische benutzerdefinierte Labels werden in der Nutzerlabels. Dynamische benutzerdefinierte und vordefinierte Labels nicht sichtbar sind.
- Vorfälle: Statische benutzerdefinierte Labels werden unter Richtlinienlabels aufgeführt. und dynamische benutzerdefinierte Labels werden unter Messwertlabels aufgeführt. . Vordefinierte Labels sind unter Labels für überwachte Ressourcen aufgeführt und Messwertlabels.
Benachrichtigungen: Vordefinierte und benutzerdefinierte Labels werden aufgelistet in den folgenden Benachrichtigungstypen:
- Google Chat
- Logo: PagerDuty
- Pub/Sub
- Webhook
Beispiel: Benutzerdefinierte Labels mit dynamischen Werten hinzufügen
Mit MQL können Sie ein Label so konfigurieren, dass sein Wert
ändert sich basierend auf Zeitreihendaten dynamisch. Zum Beispiel möchten Sie
um ein criticality
-Label zu erhalten, dessen Wert sich ändert,
abhängig vom Wert des überwachten CPU-Auslastungsmesswerts:
fetch gce_instance
| metric 'compute.googleapis.com/instance/cpu/utilization'
| group_by sliding(5m), [value_utilization_mean: mean(value.utilization)]
| map
add[
criticality:
if(val() >= 90 '%', 'CRITICAL',
if(val() >= 80 '%', 'WARNING',
if(val() >= 70 '%', 'INFO', 'GOOD')))
]
| condition val() >= 70 '%'
Die folgende Abbildung zeigt, wie Benachrichtigungsrichtlinien, MQL-Abfragen verarbeiten die von ihnen überwachten Zeitreihendaten:
Der Policy-Handler verarbeitet die CPU-Auslastungsdaten und gibt eine Zeitreihe, die anzeigt, wann die Bedingung erfüllt ist. In der vorherigen Beispiel: Die Bedingung ist erfüllt, wenn die CPU-Auslastung mindestens 70%. Der Richtlinien-Handler kann für jede Eingabezeitachse Generieren Sie eine von vier Zeitreihen:
Name der Ausgabezeitreihe | Bedingung erfüllt | Beschreibung |
---|---|---|
GUT | Nein | Diese Zeitreihe hat dieselben Labels wie die Eingabezeitachse. Sie hat kein Label für den Schweregrad. |
"KRITISCH" | Ja | Die CPU-Auslastung beträgt mindestens 90%. Die Ausgabezeitachse hat dieselben Labels wie die „GUT“-Zeitreihe und ein Schweregradlabel mit dem Wert „KRITISCH“. |
„WARNUNG“ | Ja | Die CPU-Auslastung beträgt mindestens 80 %, aber weniger als 90%. Die Ausgabezeitachse hat dieselben Labels wie die „GUT“-Zeitreihe und ein Schweregradlabel mit dem Wert „WARNING“ erhalten. |
„INFO“ | Ja | Die CPU-Auslastung beträgt mindestens 70 %, aber weniger als 80%. Die Ausgabezeitachse hat dieselben Labels wie die „GUT“-Zeitreihe und ein Schweregradlabel mit dem Wert „INFO“. |
Die vom Richtlinien-Handler generierten Zeitreihendaten sind die Eingabe für den
Incident Manager, mit dem festgelegt wird, wann Vorfälle erstellt und geschlossen werden.
Um zu bestimmen, wann ein Vorfall geschlossen werden muss, verwendet der Vorfallmanager das
duration
-, evaluationMissingData
- und
und autoClose
.
Best Practices
Um sicherzustellen, dass beim Erstellen von Labels immer nur ein Vorfall geöffnet ist deren Werte dynamisch festgelegt werden, gehen Sie so vor:
Überschreiben Sie im Objekt
MetricThreshold
den Parameter Standardwerte für die folgenden Felder:- Feld
duration
: auf einen Wert ungleich null gesetzt. - Feld
evaluationMissingData
: Legen Sie fest, dass Vorfälle geschlossen werden. wenn keine Daten mehr eingehen. Wenn Sie die Cloud Monitoring API verwenden, Legen Sie dieses Feld aufEVALUATION_MISSING_DATA_INACTIVE
fest. Wenn Sie in der Google Cloud Console das Feld auf „Fehlende Datenpunkte werden als Werte behandelt die nicht gegen die Richtlinienbedingung verstoßen.“
- Feld
Legen Sie im
AlertStrategy
-ObjektautoClose
fest. auf den Mindestwert von 30 Minuten. Wenn Sie die Cloud Monitoring API verwenden, Legen Sie dieses Feld auf30m
fest.
Weitere Informationen finden Sie unter Teilmesswertdaten.
Vorfallfluss
Angenommen, die CPU-Auslastungsmessungen betragen weniger als 70 %, wenn der Benachrichtigungsrichtlinie erstellt. Die folgende Abfolge zeigt, wie Vorfälle geöffnet und geschlossen werden:
Da die CPU-Auslastungsmessungen weniger als 70 % betragen, Policy-Handler generiert die Zeitreihen und werden keine Vorfälle geöffnet.
Nehmen wir als Nächstes an, dass die CPU-Auslastung auf 93 % ansteigt. Richtlinien-Handler die Meldung „GUT“ nicht mehr generiert. Zeitreihendaten erfasst und beginnt, Daten für das „KRITISCHE“ Zeitreihe.
Der Vorfallmanager sieht eine neue die mit der und erstellt dann einen Vorfall. Die Benachrichtigung enthält das Label für den Schweregrad mit dem Wert
CRITICAL
.Angenommen, die CPU-Auslastung sinkt auf 75%. Richtlinien-Handler stoppt die Ausgabe von „KRITISCH“ und beginnt, „INFO“ zu generieren Zeitreihe.
Der Vorfallmanager sieht eine neue die mit der und erstellt dann einen Vorfall. Die Die Benachrichtigung enthält das Schweregradlabel mit dem Wert
INFO
.Der Vorfallmanager stellt fest, dass keine Daten für die und dass ein Vorfall für diese Zeitreihe offen ist. Da die so konfiguriert, dass Vorfälle geschlossen werden, wenn keine Daten eingehen, schließt der Vorfallmanager Vorfall im Zusammenhang mit der Zeitreihe. Dementsprechend wird bleibt nur der Vorfall offen, dessen Schweregradlabel den Wert
INFO
hat.Nehmen wir abschließend an, dass die CPU-Auslastung auf 45 % sinkt. Dieser Wert ist kleiner als alle Grenzwerte, sodass der Richtlinien-Handler aufhört, die „INFO“ und beginnt, den Status „GUT“ zu generieren Zeitreihe.
Der Vorfallmanager sieht, dass keine Daten für die „INFO“-Anfrage eintreffen. und dass ein Vorfall für diese Zeitreihe offen ist. Da die die empfohlenen Einstellungen verwendet, wird der Vorfall geschlossen.
Wenn Sie nicht den empfohlenen Wert für das Feld evaluationMissingData
verwenden,
Wenn keine Daten eingehen, werden offene Vorfälle nicht sofort geschlossen.
Das kann dazu führen, dass Sie mehrere offene Vorfälle für dieselbe Eingabe sehen.
Zeitreihe. Weitere Informationen finden Sie unter Teilmesswertdaten.
Nächste Schritte
- Benachrichtigungsrichtlinien mit der Monitoring API erstellen
- Benachrichtigungsrichtlinien mit MQL
- Teilmesswertdaten verarbeiten