Personalized Service Health mencatat peristiwa kondisi layanan di Cloud Logging. Fungsi ini mencatat semua pembaruan pada deskripsi, relevansi, atau status peristiwa sebagai log yang berbeda.
Dokumen ini menjelaskan cara melihat, mengekspor, dan menyimpan log Kesehatan Layanan.
Sebelum memulai
Anda harus memiliki akses ke log Kondisi Layanan.
Skema log
Lihat Referensi skema log untuk mengetahui kolom yang dapat Anda tetapkan dalam kueri.
Melihat log Service Health
Untuk melihat log Service Health:
- Buka konsol Google Cloud.
- Pilih Operations > Logging > Logs Explorer.
- Pilih project Google Cloud di bagian atas halaman.
Di menu drop-down Log name, pilih Service Health.
Daftar log untuk
type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog
akan muncul.Luaskan entri log untuk melihat detail peristiwa. Contoh berikut menunjukkan peristiwa umum.
"insertId":"1pw1msgf6a3zc6", "timestamp":"2022-06-14T17:17:55.722035096Z", "receiveTimestamp":"2022-06-14T17:17:55.722035096Z", "logName":"projects/PROJECT_ID/logs/servicehealth.googleapis.com%2Factivity", "resource":{ "type":"servicehealth.googleapis.com/Event", "labels":{ "resource_container":"797731824162", "location":"global", "event_id":"U4AqrjwFQYi5fFBmyAX-Gg" } } "labels":{ "new_event":"true" "updated_fields": "[]" }, "jsonPayload":{ "@type":"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog", "category":"INCIDENT", "title":"We are experiencing a connectivity issue affecting Cloud SQL in us-east1, australia-southeast2.", "description":"We are experiencing an issue with Google Cloud infrastructure components at us-east1, australia-southeast2. Our engineering team continues to investigate the issue. We apologize to all who are affected by the disruption.", "updateTime":"2023-11-14T22:26:40Z", "endTime":"2023-11-14T22:13:20Z", "impactedLocations":"['us-east1','australia-southeast2']", "impactedProducts":"['Google Cloud SQL']", "impactedProductIds":"['hV87iK5DcEXKgWU2kDri']", "nextUpdateTime":"2023-11-14T22:40:00Z", "startTime":"2020-09-13T12:26:40Z", "state":"ACTIVE", "detailedState":"CONFIRMED", "relevance":"RELATED", }
Mengkueri log Service Health
Anda dapat menggunakan Logs Explorer untuk membuat kueri log Status Layanan. Anda mungkin memerlukan referensi berikut untuk membuat kueri:
Contoh:
Kondisi | Kueri |
Mendapatkan log dengan relevansi insiden tertentu | jsonPayload.relevance = ("IMPACTED" OR "RELATED")
|
Menggabungkan beberapa filter | jsonPayload.impactedLocations : "us-central1" AND jsonPayload.impactedProducts : "Google Compute Engine" AND jsonPayload.state = "ACTIVE"
|
Mengekspor log Service Health
Anda dapat mengekspor log Kondisi Layanan ke tujuan sink Cloud Logging menggunakan Konsol Google Cloud, API, atau gcloud CLI. Untuk menyiapkan sink Cloud Logging, lihat Mengonfigurasi dan mengelola sink.
Anda dapat menyertakan dan mengecualikan log Kesehatan Layanan dengan mengonfigurasi filter penyertaan dan pengecualian untuk sink.
Saat menetapkan produk atau lokasi, gunakan nilai yang ditemukan di Google Cloud products dan locations.
Menggabungkan log Service Health di tingkat folder
Mengirim log terkait Service Health dari semua project dalam folder ke project yang dibuat untuk log Service Health memungkinkan Anda melakukan kueri yang lebih kompleks pada log tersebut.
Anda akan membuat sink di tingkat folder untuk mengirim semua log terkait Kesehatan Layanan ke project baru di bawah folder tersebut. Lakukan tindakan berikut:
Membuat project baru dalam folder. Project ini dialokasikan ke log Service Health.
gcloud projects create PROJECT_ID --folder FOLDER_ID
Buat sink gabungan di tingkat folder untuk project lain dalam folder.
gcloud logging sinks create SINK_NAME \ SINK_DESTINATION --include-children \ --folder=FOLDER_ID --log-filter="LOG_FILTER"
Untuk mendapatkan log semua insiden yang relevan, tetapkan nilai LOG_FILTER ke hal berikut:
resource.type=servicehealth.googleapis.com/Event AND jsonPayload.category=INCIDENT AND jsonPayload.relevance!=NOT_IMPACTED AND jsonPayload.@type=type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog
Tetapkan izin untuk Akun Layanan sink.
gcloud projects add-iam-policy-binding PROJECT_ID --member=SERVICE_ACCT_NAME --role=roles/logging.bucketWriter gcloud projects add-iam-policy-binding PROJECT_ID --member=SERVICE_ACCT_NAME --role=roles/logging.logWriter
(Opsional) Jika Anda tidak ingin mengirim log ke sink
_Default
, buat bucket log untuk log terkait Kesehatan Layanan di project.gcloud logging buckets create BUCKET_ID --location=LOCATION --enable-analytics --async
Jika Anda membuat bucket log, buat sink untuk mengirim log tersebut ke bucket.
gcloud logging sinks create SINK_NAME_BUCKET \ logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID \ --project=PROJECT_ID --log-filter="LOG_FILTER"
Mengkueri log Kesehatan Layanan dengan BigQuery
Anda dapat membuat kueri log yang dikirim ke Cloud Logging menggunakan BigQuery dengan:
- Membuat kueri SQL.
- Menggunakan BigQuery API untuk memasukkan hasil kueri ke sistem eksternal.
Lakukan tindakan berikut:
Buat bucket log di project yang Anda buat untuk log Status Layanan.
gcloud logging buckets create BUCKET_ID --location=LOCATION --enable-analytics --async
-
gcloud logging buckets update BUCKET_ID --location=LOCATION --enable-analytics --async
Buat set data BigQuery baru yang ditautkan ke bucket dengan log Status Layanan.
gcloud logging links create LINK_ID --bucket=BUCKET_ID --location=LOCATION
Jika perlu, aktifkan BigQuery API.
gcloud services enable bigquery.googleapis.com
Sekarang Anda dapat menjalankan kueri SQL yang kompleks terhadap BigQuery, seperti:
Kondisi | Kueri |
Mendapatkan log dengan relevansi insiden tertentu | gcloud query --use_legacy_sql=false 'SELECT * FROM `PROJECT_ID.LINK_ID._AllLogs` WHERE JSON_VALUE(json_payload["relevance"]) = "IMPACTED"'
|
Mendapatkan semua peristiwa log turunan untuk peristiwa induk | gcloud query --use_legacy_sql=false 'SELECT * FROM `PROJECT_ID.LINK_ID._AllLogs` WHERE JSON_VALUE(json_payload["parentEvent"]) = "projects/PROJECT_ID/locations/global/events/EVENT_ID"'
|
Mempertahankan peristiwa sebelumnya
Personalized Service Health menyediakan retensi peristiwa yang terbatas.
Jika Anda perlu menyimpan catatan peristiwa kondisi layanan sebelumnya selama beberapa bulan, sebaiknya simpan log Kondisi Layanan.