Vorfälle mit Labels versehen

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. Die Beschriftungen einer Zeitreihe könnten z. B. die spezifische VM-Instanz, aus 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:

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:

    • E-Mail
    • 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:

Abbildung dazu, wie Benachrichtigungsrichtlinien ihre überwachten Zeitachsen verarbeiten.

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 auf EVALUATION_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.“
  • Legen Sie im AlertStrategy-Objekt autoClose fest. auf den Mindestwert von 30 Minuten. Wenn Sie die Cloud Monitoring API verwenden, Legen Sie dieses Feld auf 30m 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:

  1. Da die CPU-Auslastungsmessungen weniger als 70 % betragen, Policy-Handler generiert die Zeitreihen und werden keine Vorfälle geöffnet.

  2. 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.

  3. 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 im Zusammenhang mit der Zeitreihe. Dementsprechend wird bleibt nur der Vorfall offen, dessen Schweregradlabel den Wert INFO hat.

  4. 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 stellt fest, 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