In diesem Dokument finden Sie Beispiele für Benachrichtigungsrichtlinien, mit denen der Inhalt von Benachrichtigungen angepasst werden kann.
Hinweise
Sie sollten mit dem Einrichten von Benachrichtigungen für Personalized Service Health vertraut sein.
In der Referenz zum Schema für Service Health-Logs finden Sie die Felder, die Sie in den Benachrichtigungen und Bedingungen für Warnungen festlegen können.
Beispiele für Benachrichtigungsbedingungen
In den folgenden Abschnitten finden Sie Beispiele für detaillierte Benachrichtigungsbedingungen, die Sie für Cloud Logging oder Terraform verwenden können.
.Benachrichtigung bei einem neuen Vorfall für ein bestimmtes Google Cloud -Produkt
Legen Sie für ALERT_CONDITION
Folgendes fest:
labels."servicehealth.googleapis.com/new_event"=true AND jsonPayload.detailedCategory = \"CONFIRMED_INCIDENT\" AND jsonPayload.impactedProductIds =~ \"hV87iK5DcEXKgWU2kDri\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Der Produktname ist im gängigen Format von Google Cloud . Ein Beispiel für das Format finden Sie unter Google Cloud Service Health.
Benachrichtigung bei einem neuen Vorfall in einer bestimmten Region
Legen Sie für ALERT_CONDITION
Folgendes fest:
labels."servicehealth.googleapis.com/new_event"=true AND jsonPayload.detailedCategory = \"CONFIRMED_INCIDENT\" AND jsonPayload.impactedLocations =~ \"us-central1\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Der Standortname muss dem gängigen Format von Google Cloud entsprechen. Ein Beispiel für das Format finden Sie unter Google Cloud Service Health.
Benachrichtigung bei einem neuen aufkommenden Vorfall für ein bestimmtes Produkt
Legen Sie für ALERT_CONDITION
Folgendes fest:
labels."servicehealth.googleapis.com/new_event"=true AND jsonPayload.detailedCategory = \"EMERGING_INCIDENT\" AND jsonPayload.impactedProductIds =~ \"ix7u9beT8ivBdjApTif3\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Benachrichtigungen bei Aktualisierungen oder Änderungen an einem Vorfall
Legen Sie für ALERT_CONDITION
Folgendes fest:
jsonPayload.detailedCategory = \"CONFIRMED_INCIDENT\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Benachrichtigungen zu Aktualisierungen bei bestätigten Vorfällen
Legen Sie für ALERT_CONDITION
Folgendes fest:
jsonPayload.state =~ \"ACTIVE\" AND jsonPayload.detailedCategory = \"CONFIRMED_INCIDENT\" AND jsonPayload.detailedState != \"EMERGING\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Benachrichtigung bei Status- oder Relevanzaktualisierungen
Legen Sie für ALERT_CONDITION
Folgendes fest:
jsonPayload.detailedCategory = \"CONFIRMED_INCIDENT\" AND "labels.servicehealth.googleapis.com/updated_fields" =~ \"'state'\" OR labels."servicehealth.googleapis.com/updated_fields" =~ \"'relevance'\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Benachrichtigung mit vollständigen Details zum Vorfall
Die folgende Benachrichtigung enthält alle Details zum Vorfall.
{
"displayName": "ALERT_NAME",
"combiner": "OR",
"conditions": [ {
"displayName": "Log match condition",
"conditionMatchedLog": {
"filter": "ALERT_CONDITION",
"labelExtractors": {
"description": "EXTRACT(jsonPayload.description)",
"impactedLocations": "EXTRACT(jsonPayload.impactedLocations)",
"impactedProducts": "EXTRACT(jsonPayload.impactedProducts)",
"startTime": "EXTRACT(jsonPayload.startTime)",
"state": "EXTRACT(jsonPayload.state)"
"detailedState": "EXTRACT(jsonPayload.detailedState)"
} } } ],
"documentation": {
"content": "# View details at [Service Health dashboard](https://console.cloud.google.com/servicehealth/incidentDetails/projects%2F${resource.labels.resource_container}%2Flocations%2F${resource.labels.location}%2Fevents%2F${resource.labels.event_id}?project=${resource.labels.resource_container}) \n## Description \n${log.extracted_label.description} \n## Impacted locations \n${log.extracted_label.impactedLocations} \n## Impacted products \n${log.extracted_label.impactedProducts} \n## Incident start time \n${log.extracted_label.startTime} \n## Event state \n${log.extracted_label.state} \n## Event detailed state \n ${log.extracted_label.detailedState}",
"mimeType": "text/markdown"
},
"notificationChannels": [ "NOTIFICATION_CHANNEL" ],
"enabled": true,
"alertStrategy": { "notificationRateLimit": { "period": "300s" }, "autoClose": "1800s" }
}
Die Felder labelExtractors
und content
im Beispiel enthalten alle für den Vorfall verfügbaren Informationen.
Benachrichtigung mit einem Link zum Dashboard „Dienststatus“
Das folgende Beispiel enthält einen Link zum Dashboard zur Dienstbereitschaft.
{
"displayName": "ALERT_NAME",
"combiner": "OR",
"conditions": [ {
"displayName": "Log match condition",
"conditionMatchedLog": {
"filter": "ALERT_CONDITION",
"labelExtractors": {
"description": "EXTRACT(jsonPayload.description)",
"impactedLocations": "EXTRACT(jsonPayload.impactedLocations)",
"impactedProducts": "EXTRACT(jsonPayload.impactedProducts)",
"startTime": "EXTRACT(jsonPayload.startTime)",
"state": "EXTRACT(jsonPayload.state)",
"detailedState": "EXTRACT(jsonPayload.detailedState)"
} } } ],
"documentation": {
"content": "# View details at [Service Health dashboard](https://console.cloud.google.com/servicehealth/eventDetails/projects%2F${resource.labels.resource_container}%2Flocations%2F${resource.labels.location}%2Fevents%2F${resource.labels.event_id})",
"mimeType": "text/markdown"
},
"notificationChannels": [ "NOTIFICATION_CHANNEL" ],
"enabled": true,
"alertStrategy": { "notificationRateLimit": { "period": "300s" }, "autoClose": "1800s" }
}