Dokumen ini menjelaskan cara mengaktifkan, membuat, dan melihat log dari Cloud Logging untuk tugas Batch.
Anda dapat menggunakan log untuk mendapatkan informasi yang berguna untuk menganalisis tugas. Misalnya, log dapat membantu Anda men-debug tugas yang gagal.
Secara khusus, log hanya dihasilkan setelah tugas mulai berjalan dan hanya jika logging diaktifkan untuk tugas tersebut. Jika Anda perlu menganalisis tugas tanpa log, lihat peristiwa status.
Sebelum memulai
- Jika belum pernah menggunakan Batch, baca Mulai menggunakan Batch dan aktifkan Batch dengan menyelesaikan prasyarat untuk project dan pengguna.
-
Untuk mendapatkan izin yang Anda perlukan untuk menganalisis tugas menggunakan log, minta administrator Anda untuk memberi Anda peran IAM berikut:
-
Untuk membuat tugas:
-
Batch Job Editor (
roles/batch.jobsEditor
) pada project -
Service Account User (
roles/iam.serviceAccountUser
) pada akun layanan tugas, yang secara default merupakan akun layanan Compute Engine default
-
Batch Job Editor (
-
Untuk melihat log:
Logs Viewer (
roles/logging.viewer
) di project
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
-
Untuk membuat tugas:
Mengaktifkan logging untuk tugas
Agar log dapat dibuat untuk suatu tugas, aktifkan log dari Cloud Logging saat Anda membuat tugas:
- Jika Anda membuat tugas menggunakan Konsol Google Cloud, log dari Cloud Logging selalu diaktifkan.
Jika Anda membuat tugas menggunakan gcloud CLI atau Batch API, log dari Cloud Logging dinonaktifkan secara default. Untuk mengaktifkan log dari Cloud Logging, sertakan konfigurasi berikut untuk kolom
logsPolicy
saat membuat tugas:{ ... "logsPolicy": { "destination": "CLOUD_LOGGING" } ... }
Menulis dan menghasilkan log untuk tugas
Saat log dari Cloud Logging diaktifkan untuk suatu tugas, Cloud Logging akan otomatis menghasilkan log apa pun yang ditulis untuk tugas tersebut. Secara khusus, tugas Batch dapat memiliki jenis log berikut:
Log agen (
batch_agent_logs
): log untuk aktivitas dari agen layanan Batch.Batch akan otomatis menulis log agen untuk setiap tugas yang telah mengaktifkan logging.
log tugas (
batch_task_logs
): mencatat log untuk data apa pun yang telah Anda konfigurasi runnable tugas untuk ditulis ke stream output standar (stdout
) atau stream error standar (stderr
).Secara opsional, Anda dapat menulis log tugas untuk setiap tugas yang telah mengaktifkan logging.
Melihat log khusus tugas
Anda dapat melihat log tugas menggunakan Konsol Google Cloud, gcloud CLI, Logging API, Go, Java, Python, atau C++.
Konsol
Untuk melihat log tugas menggunakan konsol Google Cloud, lakukan langkah berikut:
Di konsol Google Cloud, buka halaman Job list.
Di kolom Nama pekerjaan, klik nama pekerjaan. Halaman Detail pekerjaan akan terbuka.
Klik tab Logs. Batch menampilkan semua log yang terkait dengan tugas.
Opsional: Untuk memfilter log, lakukan salah satu tindakan berikut:
Masukkan filter di kolom Filter.
Dalam daftar Keparahan, pilih keparahan.
Klik membuat kueri di Logs Explorer menggunakan Batch filter filters.
View in Logs Explorer untuk
gcloud
Untuk melihat log menggunakan gcloud CLI, gunakan perintah gcloud logging read
:
gcloud logging read "QUERY"
dengan QUERY
adalah
kueri untuk log Batch yang berisi
Parameter filter batch.
API
Untuk melihat log menggunakan Logging API, gunakan metode entries.list
:
POST https://logging.googleapis.com/v2/entries:list
{
"resourceNames": [
"projects/PROJECT_ID"
],
"filter": "QUERY"
"orderBy": "timestamp desc"
}
Ganti kode berikut:
PROJECT_ID
: project ID project Anda.QUERY
: kueri untuk log Batch yang berisi Parameter filter batch.
Go
Go
Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Batch Go.
Untuk mengautentikasi ke Batch, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Java
Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Batch Java.
Untuk mengautentikasi ke Batch, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Python
Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Batch Python.
Untuk mengautentikasi ke Batch, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C++
C++
Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Batch C++.
Untuk mengautentikasi ke Batch, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Filter Log Batch
Anda dapat memfilter log Batch dengan menulis kueri
yang menyertakan satu atau beberapa parameter filter berikut serta nol atau beberapa
operator boolean (AND
, OR
, dan NOT
).
Untuk memfilter log dari tugas tertentu, tentukan ID unik (UID) tugas:
labels.job_uid=JOB_UID
dengan
JOB_UID
adalah UID tugas. Untuk mendapatkan UID tugas, lihat detail tugas.Untuk memfilter jenis log Batch tertentu, tentukan jenis log:
logName=projects/PROJECT_ID/logs/BATCH_LOG_TYPE
Ganti kode berikut:
PROJECT_ID
: project ID project yang lognya ingin Anda lihat.BATCH_LOG_TYPE
: jenis Log batch yang ingin Anda lihat,batch_task_logs
untuk log tugas ataubatch_agent_logs
untuk log agen.
Untuk memfilter log dengan peristiwa status kustom, tentukan bahwa log harus menentukan kolom
jsonPayload.batch/custom/event
:jsonPayload.batch"/"custom"/"event!=NULL_VALUE
Untuk memfilter log yang memiliki satu atau beberapa tingkat keparahan tertentu, tentukan perbandingan berikut:
severityCOMPARISON_OPERATORSEVERITY_ENUM
Ganti kode berikut:
COMPARISON_OPERATOR
: operator perbandingan—misalnya,>=
.SEVERITY_ENUM
: enumLogSeverity
, yang menjelaskan tingkat keparahan log—misalnya,ERROR
.
Untuk opsi filter lainnya, lihat dokumentasi bahasa kueri Cloud Logging.
Langkah selanjutnya
- Pelajari pemecahan masalah lebih lanjut.
- Pelajari Cloud Logging lebih lanjut.
- Pelajari cara menulis log tugas.
- Pelajari cara menghapus dan mengekspor tugas.