Dokumen ini menunjukkan cara melakukan hal berikut:
- Memantau log eksekusi.
- Melihat log Logging untuk Dataform.
- Mengonfigurasi pemberitahuan untuk pemanggilan alur kerja yang gagal.
Sebelum memulai
Untuk memantau log eksekusi, pastikan Anda melakukan hal berikut:
Di Google Cloud konsol, buka halaman Dataform.
Pilih atau buat repositori.
Pilih atau buat ruang kerja pengembangan.
Picu eksekusi setidaknya sekali.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk melihat log eksekusi, minta administrator untuk memberi Anda peran IAM berikut:
-
Dataform Editor (
roles/dataform.editor) di repositori Dataform tempat eksekusi alur kerja dilacak -
Memverifikasi penyiapan eksekusi:
Service Account User (
roles/iam.serviceAccountUser) di akun layanan kustom
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Peran IAM Logs Viewer
(roles/logging.viewer) memberi Anda akses hanya baca
ke semua fitur Cloud Logging. Untuk mengetahui informasi selengkapnya tentang peran dan izin Identity and Access Management
yang berlaku untuk data Logging, lihat
Kontrol akses dengan IAM.
Untuk membuat dan mengelola pemberitahuan berbasis log, pastikan peran IAM Anda menyertakan izin yang dijelaskan dalam Peran yang diperlukan untuk membuat dan menggunakan kebijakan pemberitahuan berbasis log.
Memantau log eksekusi
Bagian ini menunjukkan cara melihat log eksekusi di Dataform.
Anda dapat melihat log semua eksekusi yang dipicu di repositori, dan log eksekusi yang dipicu di ruang kerja dalam 24 jam terakhir.
Memeriksa log eksekusi repositori
Untuk melihat log semua eksekusi yang dipicu di repositori, ikuti langkah-langkah berikut:
Di Google Cloud konsol, buka halaman Dataform.
Buka repositori Anda.
Klik Workflow Execution Logs.
Untuk melihat detail eksekusi, klik eksekusi.
Untuk melihat detail tindakan dalam eksekusi, klik View details.
Memeriksa log eksekusi ruang kerja
Untuk melihat log 1.000 eksekusi terbaru yang dipicu di ruang kerja dalam 24 jam terakhir, ikuti langkah-langkah berikut:
Di Google Cloud konsol, buka halaman Dataform.
Buka repositori Anda, lalu pilih ruang kerja Anda.
Di ruang kerja Anda, klik Executions.
Untuk melihat detail eksekusi, klik eksekusi.
Untuk melihat detail tindakan dalam eksekusi, klik View details.
Melihat log Logging untuk Dataform
Bagian ini menunjukkan cara melihat log Cloud Logging untuk pemanggilan alur kerja Dataform.
Setiap pemanggilan alur kerja Dataform dicatat menggunakan Logging. Logging otomatis diaktifkan untuk pemanggilan alur kerja Dataform, yang dapat dikenai biaya penagihan Logging. Untuk mengetahui informasi selengkapnya, lihat Harga Dataform.
Melihat log
Untuk melihat log, buka halaman Logs Explorer.
Untuk mengetahui informasi tentang cara memfilter log Logging di Logs Explorer, lihat Melihat log menggunakan Logs Explorer.
Log Dataform diindeks berdasarkan repositori Dataform.
Format log
Dataform mengirim pesan log pemanggilan alur kerja dalam format berikut:
{
"insertId": "14ip1tza5",
"jsonPayload": {
"terminalState": "SUCCEEDED",
"workflowInvocationId": "1678383230-ac4ed48c-eb70-4555-b2b0-cda54d13edfa",
"@type": "type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry"
},
"resource": {
"type": "dataform.googleapis.com/Repository",
"labels": {
"repository_id": "repository-name-example",
"resource_container": "PROJECT_ID",
"location": "us-central1"
}
},
"timestamp": "2023-03-09T17:34:06.965981805Z",
"severity": "INFO",
"logName": "projects/project-name-example/logs/dataform.googleapis.com%2Fworkflow_invocation_completion",
"receiveTimestamp": "2023-03-09T17:34:07.362371980Z"
}
Yang dicatat di log
Entri log Dataform berisi informasi yang berguna untuk memantau dan men-debug pemanggilan alur kerja Anda.
Entri log berisi jenis informasi berikut:
receiveTimestamprelease_config_idrepository_idresource_containerworkflow_invocation_idworkflow_config_idseverity: dapat berupaINFO,WARNING, atauERRORterminalState: dapat berupaSUCCEEDED,CANCELED, atauFAILEDtimestamp@type
Mengonfigurasi metrik dan pemberitahuan dengan Cloud Monitoring
Anda dapat menggunakan Monitoring untuk mengamati tren dalam log dan memberi tahu Anda saat kondisi yang Anda jelaskan terjadi.
Untuk memberi Monitoring data dari log Anda, Logging menawarkan hal berikut:
- Metrik berbasis log, yang dapat Anda gunakan sebagai berikut:
- Untuk membuat kebijakan pemberitahuan yang memberi tahu Anda tentang perubahan dari waktu ke waktu.
- Untuk membuat diagram yang menampilkan perubahan dari waktu ke waktu.
- Pemberitahuan berbasis log, yang memberi tahu Anda setiap kali peristiwa tertentu muncul di log.
Untuk mengetahui informasi selengkapnya tentang metrik berbasis log dan pemberitahuan berbasis log, lihat Memantau log Anda.
Untuk mempelajari cara mengonfigurasi pemberitahuan berbasis log untuk pemanggilan alur kerja Dataform, lihat Mengonfigurasi pemberitahuan untuk pemanggilan alur kerja yang gagal.
Mengonfigurasi pemberitahuan untuk pemanggilan alur kerja yang gagal
Bagian ini menunjukkan cara mengonfigurasi pemberitahuan berbasis log untuk pemanggilan alur kerja Dataform yang gagal menggunakan Logs Explorer.
Anda dapat menggunakan Monitoring untuk mengamati tren dalam log Logging untuk pemanggilan alur kerja Dataform dan memberi tahu Anda saat kondisi yang Anda jelaskan terjadi.
Setiap pemanggilan alur kerja Dataform dicatat menggunakan Logging. Logging otomatis diaktifkan untuk pemanggilan alur kerja Dataform, yang dapat dikenai biaya penagihan Logging. Untuk mengetahui informasi selengkapnya, lihat Harga Dataform.
Untuk menerima pemberitahuan saat pemanggilan alur kerja Dataform gagal, Anda dapat membuat pemberitahuan berbasis log.
Anda dapat membuat pemberitahuan berbasis log dari halaman Logs Explorer di Google Cloud konsol atau menggunakan Monitoring API. Bagian ini menjelaskan cara membuat pemberitahuan berbasis log untuk kegagalan pemanggilan alur kerja Dataform menggunakan Logs Explorer.
Untuk mengonfigurasi pemberitahuan berbasis log untuk pemanggilan alur kerja Dataform yang gagal, ikuti langkah-langkah berikut:
Di Google Cloud konsol, pilih Logging, lalu pilih Logs Explorer.
Di panel Query , pilih Show query , lalu masukkan kueri berikut:
resource.type="dataform.googleapis.com/Repository" jsonPayload.@type="type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry" jsonPayload.terminalState="FAILED"Kueri ini akan memberi tahu Anda tentang semua pemanggilan alur kerja Dataform yang gagal.
Opsional: Untuk memfilter pemanggilan alur kerja yang gagal berdasarkan konfigurasi rilis, tambahkan hal berikut ke kueri:
jsonPayload.releaseConfigId="RELEASE_CONFIGURATION_ID"Ganti
RELEASE_CONFIGURATION_IDdengan ID konfigurasi rilis.Opsional: Untuk memfilter pemanggilan alur kerja yang gagal berdasarkan konfigurasi alur kerja, tambahkan hal berikut ke kueri:
jsonPayload.workflowConfigId="WORKFLOW_CONFIGURATION_ID"Ganti
WORKFLOW_CONFIGURATION_IDdengan ID konfigurasi alur kerja.
Kueri berikut akan memberi tahu Anda saat pemanggilan alur kerja Dataform yang terkait dengan konfigurasi rilis
dailydan konfigurasi alur kerjaproductiongagal:resource.type="dataform.googleapis.com/Repository" jsonPayload.@type="type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry" jsonPayload.terminalState="FAILED" jsonPayload.releaseConfigId="daily" jsonPayload.workflowConfigId="production"Opsional: Untuk memvalidasi kueri, gunakan Run query di panel Query results.
Di header panel Query results, klik Create alert. Jika jendela Anda sempit, opsi Create alert mungkin muncul di menu Actions.
Di panel Alert details, beri nama dan deskripsi pemberitahuan:
Masukkan nama untuk pemberitahuan Anda di kolom Alert Name. Contoh:
Dataform: workflow failure.Masukkan deskripsi pemberitahuan ini. Anda juga dapat menyertakan informasi yang dapat membantu penerima notifikasi mendiagnosis masalah. String berikut merangkum alasan pemberitahuan:
Log-based alert in project ${project} detected a failed Dataform workflow.Untuk mengetahui informasi tentang cara memformat dan menyesuaikan konten kolom ini, lihat Membuat anotasi notifikasi dengan dokumentasi yang ditentukan pengguna.
Untuk melanjutkan ke langkah berikutnya, klik Next.
Di panel Choose logs to include in the alert, periksa kueri dan hasilnya dengan mengklik Preview logs.
Sebaiknya buat kueri di panel Query Logs Explorer. Kueri yang Anda buat di panel Query juga ditampilkan di panel ini.
Anda dapat mengedit kueri di panel ini, jika perlu. Jika Anda mengedit kueri, periksa hasilnya dengan mengklik Preview logs.
Klik Next.
Pilih waktu minimum antar-notifikasi. Nilai ini memungkinkan Anda mengontrol jumlah notifikasi yang Anda dapatkan dari pemberitahuan ini jika dipicu beberapa kali. Untuk contoh ini, pilih 5 min dari opsi.
Opsional: Pilih durasi penutupan insiden otomatis. Secara default, durasi penutupan insiden otomatis ditetapkan ke 7 hari.
Klik Next.
Pilih satu atau beberapa saluran notifikasi untuk pemberitahuan Anda. Untuk contoh ini, pilih saluran notifikasi email.
Jika sudah mengonfigurasi saluran notifikasi email, Anda dapat memilihnya dari daftar. Jika belum, klik Manage notification channels dan tambahkan saluran email. Untuk mengetahui informasi tentang cara membuat saluran notifikasi, lihat Membuat dan mengelola saluran notifikasi.
Klik Save.
Pemberitahuan berbasis log Anda kini siap diuji. Untuk mengetahui petunjuk cara menguji pemberitahuan, lihat Menguji contoh kebijakan pemberitahuan berbasis log.
Langkah berikutnya
- Pelajari cara memicu eksekusi secara manual.
- Pelajari cara menjadwalkan eksekusi dengan Workflows dan Cloud Scheduler.
- Pelajari cara mengonfigurasi penggantian kompilasi dengan Dataform API.
- Pelajari tentang Cloud Audit Logs dan Monitoring.
- Pelajari harga Logging.