Filter pengecualian memungkinkan Anda mengontrol volume log Dataflow yang diserap oleh Cloud Logging sekaligus tetap menyediakan logging verbose untuk proses debug. Anda dapat menggunakan filter pengecualian untuk mengecualikan entri log yang cocok agar tidak diserap oleh Cloud Logging atau agar tidak dirutekan ke tujuan sink. Buat filter pengecualian menggunakan Bahasa kueri logging. Bahasa kueri Logging memungkinkan Anda menentukan subset dari semua entri log di resource Google Cloud yang dipilih, seperti project atau folder.
Dengan menggunakan filter pengecualian, Anda dapat mengurangi biaya Cloud Logging yang dikeluarkan oleh penyerapan log Dataflow. Untuk mengetahui informasi selengkapnya tentang harga penyerapan log untuk Cloud Logging, lihat ringkasan harga Cloud Logging. Untuk mengetahui detail selengkapnya tentang cara kerja filter pengecualian dan batasannya, lihat Filter pengecualian di dokumentasi Cloud Logging.
Tugas Dataflow memancarkan beberapa jenis log. Halaman ini menunjukkan cara memfilter log tugas Dataflow dan log pekerja.
Membuat filter pengecualian log
Contoh ini membuat filter pengecualian pada
sink Cloud Logging _Default
. Filter
mengecualikan semua log Dataflow tingkat keparahan DEFAULT
, DEBUG
, INFO
, dan NOTICE
agar tidak di-ingest ke Cloud Logging. Log tingkat keparahan WARNING
,
ERROR
, CRITICAL
, ALERT
, dan EMERGENCY
masih dicatat. Untuk mengetahui informasi selengkapnya tentang
tingkat log yang didukung, lihat
LogSeverity.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
Anda memiliki project Google Cloud dengan log yang dapat Anda lihat di Logs Explorer.
Anda memiliki salah satu peran IAM berikut untuk project sumber Google Cloud tempat Anda merutekan log.
- Pemilik (
roles/owner
) - Logging Admin (
roles/logging.admin
) - Logs Configuration Writer (
roles/logging.configWriter
)
Izin yang terdapat dalam peran ini memungkinkan Anda membuat, menghapus, atau mengubah sink. Untuk mengetahui informasi tentang cara menetapkan peran IAM, lihat Panduan kontrol akses Logging.
- Pemilik (
Anda memiliki resource di tujuan yang didukung atau dapat membuatnya.
Anda perlu membuat tujuan perutean sebelum sink, melalui Google Cloud CLI, Google Cloud konsol, atau Google Cloud API. Anda dapat membuat tujuan di project mana pun di organisasi mana pun. Google Cloud Sebelum membuat tujuan, pastikan akun layanan dari sink memiliki izin untuk menulis ke tujuan.
Di konsol Google Cloud , buka halaman Logs Router:
Temukan baris dengan sink
_Default
, luaskan opsi Tindakan, lalu klik Edit sink.Di bagian Choose logs to filter out of sink, untuk Build an exclusion filter, klik
Add exclusion.Masukkan nama untuk filter pengecualian Anda.
Di bagian Buat filter pengecualian, tempel teks berikut ke dalam kotak:
resource.type="dataflow_step" AND labels."dataflow.googleapis.com/job_name"!~".*debug" AND severity=(DEFAULT OR DEBUG OR INFO OR NOTICE)
- Baris pertama memilih semua entri log yang dihasilkan oleh layanan Dataflow.
- Baris kedua memilih semua entri log dengan kolom
job_name
yang tidak berakhir dengan stringdebug
. - Baris ketiga memilih semua entri log dengan tingkat keparahan
DEFAULT
,DEBUG
,INFO
, atauNOTICE
.
Klik Perbarui tujuan.
Di konsol Google Cloud , buka halaman Jobs Dataflow.
Daftar tugas Dataflow akan muncul beserta statusnya.
Pilih lowongan.
Di halaman Detail tugas, di panel Log, klik segmentTampilkan.
Pastikan tidak ada log yang muncul di panel Job logs dan tidak ada log
DEFAULT
,DEBUG
,INFO
, atauNOTICE
yang muncul di panel Worker logs.
Izin
Saat Anda memulai, pastikan hal-hal berikut:
Menambahkan filter pengecualian
Langkah-langkah berikut menunjukkan cara menambahkan filter pengecualian Cloud Logging ke log Dataflow Anda. Filter pengecualian ini memilih semua entri log Dataflow dengan tingkat keparahan DEFAULT
, DEBUG
, INFO
, dan NOTICE
dari tugas yang memiliki nama tugas Dataflow yang tidak diakhiri dengan string debug
. Filter
mengecualikan log ini dari penyerapan ke bucket Cloud Logging Default
.
Menguji filter pengecualian
Anda dapat memverifikasi bahwa filter berfungsi dengan benar dengan menjalankan contoh tugas Dataflow, lalu melihat log.
Setelah tugas Anda mulai berjalan, untuk melihat log tugas, selesaikan langkah-langkah berikut:
Melewati filter pengecualian
Nama tugas Dataflow (job_name
) digunakan untuk menyediakan mekanisme bypass untuk
skenario saat log Dataflow yang dihasilkan perlu diambil. Anda dapat
menggunakan penggantian ini untuk menjalankan ulang tugas yang gagal dan merekam semua informasi log.
Filter yang dibuat dalam skenario ini mempertahankan semua entri log saat kolom job_name
berakhir dengan string debug
. Jika Anda ingin melewati filter pengecualian dan menampilkan semua log untuk tugas Dataflow, tambahkan debug
ke nama tugas. Misalnya, untuk melewati filter pengecualian, Anda
dapat menggunakan nama tugas dataflow-job-debug
.
Membandingkan jumlah log
Jika Anda ingin membandingkan volume log yang diserap dengan dan tanpa filter pengecualian, jalankan satu tugas dengan debug
ditambahkan ke nama tugas dan satu tugas tanpa filter. Gunakan
metrik berbasis log yang ditentukan sistem
Byte log untuk melihat dan membandingkan
data penyerapan. Untuk informasi selengkapnya tentang melihat data penyerapan, lihat
Melihat data penyerapan di Metrics Explorer.
Membuat tujuan eksternal
Secara opsional, setelah membuat filter pengecualian, Anda dapat membuat sink Cloud Logging tambahan. Gunakan sink ini untuk mengalihkan kumpulan lengkap log Dataflow ke tujuan eksternal yang didukung, seperti BigQuery, Pub/Sub, atau Splunk.
Dalam skenario ini, log eksternal tidak disimpan di Logs Explorer, tetapi tersedia di tujuan eksternal. Dengan menggunakan tujuan eksternal, Anda akan memiliki kontrol yang lebih besar atas biaya yang dikeluarkan untuk menyimpan log di Logs Explorer.
Untuk mengetahui langkah-langkah terperinci tentang cara mengontrol perutean log oleh Cloud Logging, lihat Mengonfigurasi dan mengelola sink. Untuk merekam semua log Dataflow di tujuan eksternal, di panel Pilih log untuk disertakan dalam sink, di kolom Buat filter penyertaan, masukkan ekspresi filter berikut:
resource.type="dataflow_step"
Untuk menemukan entri log yang Anda rutekan dari Cloud Logging ke tujuan yang didukung, lihat Melihat log di tujuan sink.
Melacak pesan log Dataflow berdasarkan tingkat keparahan
Filter pengecualian tidak berlaku untuk metrik berbasis log yang ditentukan pengguna. Metrik ini menghitung jumlah entri log yang cocok dengan filter tertentu atau mencatat nilai tertentu dalam entri log yang cocok. Untuk melacak jumlah pesan log Dataflow berdasarkan tingkat keparahan, Anda dapat membuat metrik berbasis log untuk log Dataflow. Log dilacak meskipun pesan log dikecualikan dari penyerapan.
Anda ditagih untuk metrik berbasis log yang ditentukan pengguna. Untuk mengetahui informasi harga, lihat Metrik yang dapat dikenakan biaya.
Untuk mengonfigurasi metrik berbasis log yang ditentukan pengguna, lihat Membuat metrik penghitung. Untuk melacak log Dataflow, di bagian Filter selection, di kotak Build filter, masukkan teks berikut:
resource.type="dataflow_step"