Dokumen ini menunjukkan contoh kebijakan pemberitahuan yang menyesuaikan konten notifikasi pemberitahuan.
Sebelum memulai
Pahami cara menyiapkan pemberitahuan untuk Personalized Service Health.
Lihat referensi skema log Service Health untuk mengetahui kolom yang dapat Anda tetapkan dalam notifikasi dan kondisi pemberitahuan.
Contoh kondisi pemberitahuan
Bagian berikut menunjukkan contoh kondisi pemberitahuan terperinci yang dapat Anda gunakan untuk Cloud Logging atau Terraform.
Pemberitahuan tentang insiden baru untuk produk Google Cloud tertentu
Tetapkan ALERT_CONDITION
ke hal berikut:
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\"
Nama produk menggunakan format Google Cloud umum. Lihat Kondisi Layanan Google Cloud untuk mengetahui contoh formatnya.
Notifikasi tentang insiden baru untuk wilayah tertentu
Tetapkan ALERT_CONDITION
ke hal berikut:
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\"
Nama lokasi menggunakan format Google Cloud umum. Lihat Kondisi Layanan Google Cloud untuk mengetahui contoh formatnya.
Notifikasi tentang insiden baru yang muncul untuk produk tertentu
Tetapkan ALERT_CONDITION
ke hal berikut:
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\"
Pemberitahuan tentang pembaruan atau perubahan pada insiden
Tetapkan ALERT_CONDITION
ke hal berikut:
jsonPayload.detailedCategory = \"CONFIRMED_INCIDENT\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Pemberitahuan tentang pembaruan apa pun pada insiden yang dikonfirmasi
Tetapkan ALERT_CONDITION
ke hal berikut:
jsonPayload.state =~ \"ACTIVE\" AND jsonPayload.detailedCategory = \"CONFIRMED_INCIDENT\" AND jsonPayload.detailedState != \"EMERGING\" AND jsonPayload.@type = \"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog\"
Notifikasi tentang pembaruan status atau relevansi
Tetapkan ALERT_CONDITION
ke hal berikut:
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\"
Notifikasi pemberitahuan dengan detail insiden lengkap
Notifikasi pemberitahuan berikut memberikan detail insiden lengkap.
{
"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" }
}
Kolom labelExtractors
dan content
dalam contoh menyertakan
semua informasi yang tersedia untuk insiden.
Notifikasi pemberitahuan dengan link ke dasbor Service Health
Contoh berikut memberikan link ke dasbor Kesehatan Layanan.
{
"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" }
}