Sink log di Cloud Logging memungkinkan Anda merutekan entri log dari project Google Cloud Anda ke tujuan yang didukung untuk penyimpanan jangka panjang, analisis, atau streaming. Untuk mengirimkan log, setiap sink menulis ke tujuan yang diizinkan, seperti bucket log atau topik Pub/Sub.
Sink melakukan tindakan tulis, sehingga harus diberi otorisasi untuk menulis ke tujuan. Jika tujuannya adalah bucket log dalam project yang sama dengan sink, sink akan otomatis diberi otorisasi. Untuk semua tujuan lainnya, sink harus dilampirkan ke akun layanan yang telah diberi izin yang diperlukan untuk menulis data ke tujuan.
Jika akun layanan diperlukan, Cloud Logging akan otomatis membuat dan mengelolanya. Namun, Anda mungkin perlu mengubah izin yang diberikan ke akun layanan. Anda tidak harus menggunakan akun layanan yang dibuat oleh Logging. Anda dapat membuat dan mengelola akun layanan yang digunakan oleh sink di beberapa project. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi sink log dengan akun layanan yang dikelola pengguna.
Ringkasan
Dokumen ini menjelaskan cara membuat sink dan cara mengonfigurasi opsi yang mungkin Anda lihat saat menggunakan konsol Google Cloud , Google Cloud CLI, atau API.
Sink termasuk dalam resource Google Cloud tertentu: project Google Cloud , akun penagihan, folder, atau organisasi. Saat resource menerima entri log, setiap sink dalam resource akan memproses entri log tersebut. Jika entri log cocok dengan filter sink, entri log tersebut akan dirutekan ke tujuan sink.
Biasanya, sink hanya merutekan entri log yang berasal dari resource. Namun, untuk folder dan organisasi, Anda dapat membuat sink gabungan. Sink ini merutekan entri log yang berasal dari folder atau organisasi dan yang berasal dari resource turunan-nya. Dokumen ini tidak membahas sink gabungan. Untuk mengetahui informasi selengkapnya, lihat Ringkasan sink gabungan.
Untuk membuat dan mengelola sink, Anda dapat menggunakan konsol Google Cloud , Cloud Logging API, dan Google Cloud CLI. Sebaiknya Anda menggunakan konsol Google Cloud karena alasan berikut:
- Anda dapat mengonfigurasi tujuan sink sebagai bagian dari alur untuk membuat sink.
- Anda dapat melihat pratinjau entri log yang cocok dengan filter sink.
- Beberapa langkah otorisasi disederhanakan.
Sebaiknya tinjau konfigurasi sink log saat Anda membuat perubahan apa pun pada penyimpanan log. Misalnya, jika Anda menghapus tujuan sink log, hapus sink log yang sesuai.
Untuk mengetahui informasi tentang cara melihat dan mengelola sink log, lihat bagian Mengelola sink dalam dokumen ini.
Tujuan yang didukung
Tujuan sink dapat berada di resource yang berbeda dengan sink. Misalnya, Anda dapat menggunakan sink log untuk merutekan entri log dari satu project ke bucket log yang disimpan di project lain.
Tujuan berikut didukung:
- Google Cloud project
Pilih tujuan ini jika Anda ingin sink log di project tujuan merutekan ulang entri log, atau jika Anda telah membuat sink gabungan yang mencegat. Sink log di project tujuan dapat mengalihkan entri log ke tujuan yang didukung, kecuali project.
Sink log yang dibuat sistem di project tujuan mengecualikan entri log yang dirutekan ke bucket log
_Requireddi project sumber. Misalnya, jika Anda merutekan log Aktivitas Admin ke project lain, sink log_Requireddan_Defaultdi project tujuan akan mengecualikan entri log tersebut. Untuk menyimpan entri log tersebut, di project tujuan, perbarui sink log_Defaultatau buat sink log kustom.
- Bucket log
- Pilih tujuan ini jika Anda ingin menyimpan data log di resource yang dikelola oleh Cloud Logging. Data log yang disimpan di bucket log dapat dilihat dan dianalisis menggunakan layanan seperti Logs Explorer.
- Topik Pub/Sub
- Pilih tujuan ini jika Anda ingin mengekspor data log dari Google Cloud , lalu menggunakan integrasi pihak ketiga. Entri log diformat sebagai JSON, lalu dirutekan ke topik Pub/Sub.
Batasan tujuan iklan
Bagian ini menjelaskan batasan khusus tujuan:
- Saat Anda mengonfigurasi tujuan sink, berikan jalur yang sepenuhnya memenuhi syarat dan gunakan endpoint global layanan.
Endpoint layanan regional (REP), seperti
pubsub.LOCATION.rep.googleapis.com, tidak didukung.
Perutean log ke topik Pub/Sub yang menerapkan pembatasan dalam pengiriman tidak didukung. Logging tidak dapat menjamin bahwa permintaan publikasi berasal dari region yang diizinkan, yang menyebabkan error konfigurasi
topic_region_not_alloweddan log yang dihapus.Batasan berikut berlaku jika tujuan sink log adalah project Google Cloud :
- Ada batas satu hop.
- Sink log
_Requireddi project tujuan merutekan entri log ke bucket log_Requiredproject saat entri log cocok dengan filter sink dan berasal dari project tujuan. - Sink log
_Defaultdi project tujuan merutekan entri log yang cocok dengan filter penyertaannya dan tidak cocok dengan filter pengecualian apa pun. Sink log_Defaultmengecualikan beberapa entri log. Misalnya, sink ini tidak merutekan entri log Aktivitas Admin dan Peristiwa Sistem. Anda dapat mengubah sink ini. - Hanya sink gabungan yang berada dalam hierarki resource entri log yang memproses entri tersebut.
Misalnya, asumsikan tujuan sink log di project
Aadalah projectB. Dalam hal ini, aturan berikut berlaku:- Karena batas satu hop, sink log di project
Btidak dapat mengalihkan rute entri log ke project Google Cloud lain. - Bucket log
_Requireddari projectBhanya menyimpan entri log yang berasal dari projectB. Bucket log ini tidak menyimpan entri log apa pun yang berasal dari resource lain, termasuk yang berasal dari projectA. - Jika project
Adan projectBmemiliki hierarki resource yang berbeda, entri log yang dirutekan oleh sink log di projectAke projectBtidak akan dikirim ke sink gabungan dalam hierarki resource projectB. - Jika project
Adan projectBmemiliki hierarki resource yang sama, entri log akan dikirim ke sink gabungan dalam hierarki tersebut. Jika entri log tidak dicegat oleh sink gabungan, Router Log akan mengirimkan entri tersebut ke sink di projectA.
Sebelum memulai
Petunjuk dalam dokumen ini menjelaskan cara membuat dan mengelola sink di level projectGoogle Cloud . Anda dapat menggunakan prosedur yang sama untuk membuat sink yang merutekan entri log yang berasal dari organisasi, folder, atau akun penagihan.
Untuk memulai, lakukan hal berikut:
-
Aktifkan Cloud Logging API, jika belum diaktifkan.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Service Usage Admin (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran. Pastikan project Google Cloud Anda berisi entri log yang dapat Anda lihat di Logs Explorer.
-
Untuk mendapatkan izin yang diperlukan untuk membuat, mengubah, atau menghapus sink, minta administrator untuk memberi Anda peran IAM Logs Configuration Writer (
roles/logging.configWriter) di project Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Untuk mengetahui informasi tentang cara memberikan peran IAM, lihat Panduan kontrol akses Logging.
Pastikan Anda memiliki resource di tujuan yang didukung atau memiliki kemampuan untuk membuatnya.
Untuk merutekan entri log ke tujuan, tujuan harus ada sebelum Anda membuat sink. Anda dapat membuat tujuan di projectGoogle Cloud mana pun di organisasi mana pun.
Sebelum membuat sink, tinjau batasan yang berlaku untuk tujuan sink. Untuk mengetahui informasi selengkapnya, lihat bagian Batasan tujuan dalam dokumen ini.
Pilih antarmuka yang ingin Anda gunakan:
Konsol
Saat menggunakan konsol Google Cloud untuk mengakses layanan dan API Google Cloud , Anda tidak perlu menyiapkan autentikasi.
gcloud
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda. Setelah login, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initREST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Membuat sink
Bagian ini menjelaskan cara membuat sink di project Google Cloud .
Anda dapat membuat hingga 200 sink per Google Cloud project.
Untuk melihat jumlah dan volume entri log yang dirutekan, lihat
metrik logging.googleapis.com/exports/.
Anda menggunakan bahasa kueri Logging untuk membuat ekspresi filter yang cocok dengan entri log yang ingin Anda sertakan. Jangan memasukkan informasi sensitif ke dalam filter sink. Filter sink diperlakukan sebagai data layanan.
Jika kueri berisi beberapa pernyataan,
Anda dapat menentukan cara pernyataan tersebut digabungkan atau mengandalkan Cloud Logging secara implisit
untuk menambahkan batasan konjungtif, AND, di antara pernyataan. Misalnya,
anggaplah dialog kueri atau filter berisi dua pernyataan,
resource.type = "gce_instance" dan severity >= "ERROR".
Kueri sebenarnya adalah resource.type = "gce_instance" AND severity >= "ERROR".
Cloud Logging mendukung batasan disjungtif, OR, dan batasan konjungtif, AND. Saat Anda menggunakan pernyataan OR, sebaiknya kelompokkan klausa dengan tanda kurung.
Untuk membuat sink, lakukan hal berikut:
Konsol
-
Di konsol Google Cloud , buka halaman Log Router:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.
Pilih project Google Cloud tempat asal entri log yang ingin Anda rutekan.
Misalnya, jika Anda ingin merutekan entri log Akses Data dari project bernama
Project-Ake bucket log di project bernamaProject-B, pilihProject-A.Pilih Create sink.
Di panel Sink details, masukkan detail berikut:
Sink name: Masukkan ID untuk sink. Setelah membuat sink, Anda tidak dapat mengganti namanya, tetapi Anda dapat menghapusnya dan membuat sink baru.
Sink description (opsional): Jelaskan tujuan atau kasus penggunaan sink.
Di panel Sink destination, pilih layanan dan tujuan sink menggunakan menu Select sink service. Lakukan salah satu hal berikut:
Untuk merutekan entri log ke layanan yang berada dalam projectGoogle Cloud yang sama, pilih salah satu opsi berikut:
- Cloud Logging bucket: Pilih atau buat Logging bucket.
- Pub/Sub topic: Pilih atau buat topik untuk menerima entri log yang dirutekan.
Untuk merutekan entri log ke project Google Cloud lain, pilih Google Cloud project, lalu masukkan nama yang sepenuhnya memenuhi syarat untuk tujuan:
logging.googleapis.com/projects/DESTINATION_PROJECT_IDUntuk merutekan entri log ke layanan yang berada di projectGoogle Cloud yang berbeda, lakukan hal berikut:
- Pilih Fasilitas lainnya.
- Masukkan nama yang sepenuhnya memenuhi syarat untuk tujuan. Untuk informasi tentang sintaksis, lihat Format jalur tujuan.
Tentukan entri log yang akan disertakan:
Buka panel Choose logs to include in sink.
Di kolom Filter sertakan build, masukkan ekspresi filter yang cocok dengan entri log yang ingin Anda sertakan. Untuk mengetahui informasi sintaksis, lihat Bahasa kueri logging.
Jika Anda tidak menetapkan filter, semua entri log dari resource yang dipilih akan dirutekan ke tujuan.
Misalnya, untuk merutekan semua entri log Akses Data ke bucket Logging, Anda dapat menggunakan filter berikut:
log_id("cloudaudit.googleapis.com/data_access") OR log_id("externalaudit.googleapis.com/data_access")Panjang filter tidak boleh melebihi 20.000 karakter.
Untuk memverifikasi bahwa Anda memasukkan filter yang benar, pilih Pratinjau log. Logs Explorer akan terbuka di tab baru dengan filter yang telah diisi otomatis.
(Opsional) Konfigurasikan filter pengecualian untuk menghilangkan beberapa entri log yang disertakan:
Buka panel Choose logs to filter out of sink.
Di kolom Exclusion filter name, masukkan nama.
Di kolom Build an exclusion filter, masukkan ekspresi filter yang cocok dengan entri log yang ingin Anda kecualikan. Anda juga dapat menggunakan fungsi
sampleuntuk memilih bagian entri log yang akan dikecualikan.
Anda dapat membuat hingga 50 filter pengecualian per sink. Perhatikan bahwa panjang filter tidak boleh melebihi 20.000 karakter.
Pilih Create sink.
Beri akun layanan sink izin untuk menulis entri log ke tujuan sink Anda. Untuk mengetahui informasi selengkapnya, lihat Menetapkan izin tujuan.
gcloud
Untuk membuat sink, lakukan hal berikut:
Jalankan perintah
gcloud logging sinks createberikut:gcloud logging sinks create SINK_NAME SINK_DESTINATION
Sebelum menjalankan perintah, buat pengganti berikut:
- SINK_NAME: Nama sink log. Anda tidak dapat mengubah nama sink setelah membuatnya.
SINK_DESTINATION: Layanan atau project tempat Anda ingin merutekan entri log. Tetapkan SINK_DESTINATION ke jalur yang sesuai, seperti yang dijelaskan dalam Format jalur tujuan.
Misalnya, jika tujuan sink Anda adalah topik Pub/Sub, SINK_DESTINATION akan terlihat seperti berikut:
pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
Anda juga dapat memberikan opsi berikut:
--log-filter: Gunakan opsi ini untuk menetapkan filter yang cocok dengan entri log yang ingin Anda sertakan dalam sink. Jika Anda tidak memberikan nilai untuk filter penyertaan, filter ini akan cocok dengan semua entri log.--exclusion: Gunakan opsi ini untuk menetapkan filter pengecualian untuk entri log yang tidak ingin dirutekan oleh sink Anda. Anda juga dapat menggunakan fungsisampleuntuk memilih bagian entri log yang akan dikecualikan. Opsi ini dapat diulang; Anda dapat membuat hingga 50 filter pengecualian per sink.--description: Gunakan opsi ini untuk menjelaskan tujuan atau kasus penggunaan sink.
Misalnya, untuk membuat sink ke bucket Logging, perintah Anda mungkin terlihat seperti ini:
gcloud logging sinks create my-sink logging.googleapis.com/projects/myproject123/locations/global/buckets/my-bucket \ --log-filter='logName="projects/myproject123/logs/matched"' --description="My first sink"
Untuk mengetahui informasi selengkapnya tentang cara membuat sink menggunakan Google Cloud CLI, lihat referensi
gcloud logging sinks.Jika respons perintah berisi kunci JSON berlabel
"writerIdentity", berikan izin akun layanan sink untuk menulis ke tujuan sink. Untuk mengetahui informasi selengkapnya, lihat Menetapkan izin tujuan.Anda tidak perlu menetapkan izin tujuan jika respons tidak berisi kunci JSON berlabel
"writerIdentity".
REST
Untuk membuat sink logging di project Google Cloud Anda, gunakan
projects.sinks.createdi Logging API. Dalam objekLogSink, berikan nilai wajib yang sesuai dalam isi permintaan metode:name: ID untuk sink. Setelah membuat sink, Anda tidak dapat mengganti namanya, tetapi Anda dapat menghapusnya dan membuat sink baru.destination: Layanan dan tujuan tempat Anda ingin merutekan entri log. Untuk merutekan entri log ke project lain, atau ke tujuan yang berada di project lain, tetapkan kolomdestinationke jalur yang sesuai, seperti yang dijelaskan dalam Format jalur tujuan.Misalnya, jika tujuan sink Anda adalah topik Pub/Sub,
destinationakan terlihat seperti berikut:pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
Dalam objek
LogSink, berikan informasi opsional yang sesuai:filter: Tetapkan kolomfilteragar cocok dengan entri log yang ingin Anda sertakan dalam sink. Jika Anda tidak menetapkan filter, semua entri log dari projectGoogle Cloud Anda akan dirutekan ke tujuan. Perhatikan bahwa panjang filter tidak boleh melebihi 20.000 karakter.exclusions: Tetapkan kolom ini agar cocok dengan entri log yang ingin Anda kecualikan dari sink. Anda juga dapat menggunakan fungsisampleuntuk memilih bagian entri log yang akan dikecualikan. Anda dapat membuat hingga 50 filter pengecualian per sink.description: Tetapkan kolom ini untuk menjelaskan tujuan atau kasus penggunaan sink.
Panggil
projects.sinks.createuntuk membuat sink.Jika respons API berisi kunci JSON berlabel
"writerIdentity", berikan izin akun layanan sink untuk menulis ke tujuan sink. Untuk mengetahui informasi selengkapnya, lihat Menetapkan izin tujuan.Anda tidak perlu menetapkan izin tujuan jika respons API tidak berisi kunci JSON berlabel
"writerIdentity".
Untuk mengetahui informasi selengkapnya tentang cara membuat sink menggunakan Logging API, lihat referensi LogSink.
Jika Anda menerima notifikasi error, lihat Memecahkan masalah pemilihan rute dan sink.
Format jalur tujuan
Saat Anda mengonfigurasi tujuan sink, berikan jalur yang sepenuhnya memenuhi syarat dan gunakan endpoint global layanan.
Endpoint layanan regional (REP), seperti pubsub.LOCATION.rep.googleapis.com, tidak didukung.
Dalam format jalur berikut, DESTINATION_PROJECT_ID mengacu pada ID atau nomor project tujuan:
Bucket log Cloud Logging:
logging.googleapis.com/projects/DESTINATION_PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
Project Google Cloud lainnya:
logging.googleapis.com/projects/DESTINATION_PROJECT_ID
Topik Pub/Sub:
pubsub.googleapis.com/projects/DESTINATION_PROJECT_ID/topics/TOPIC_ID
Menetapkan izin tujuan
Bagian ini menjelaskan cara memberi Logging izin Identity and Access Management untuk menulis entri log ke tujuan sink Anda. Untuk mengetahui daftar lengkap peran dan izin Logging, lihat Kontrol akses.
Cloud Logging membuat akun layanan bersama untuk resource saat sink dibuat, kecuali jika akun layanan yang diperlukan sudah ada. Akun layanan mungkin ada karena akun layanan yang sama digunakan untuk semua sink di resource yang mendasarinya. Resource dapat berupa Google Cloud project, organisasi, folder, atau akun penagihan.
Identitas penulis sink adalah ID akun layanan yang terkait dengan sink tersebut. Semua sink memiliki identitas penulis, kecuali untuk sink yang menulis ke bucket log di project Google Cloud yang sama dengan tempat asal entri log. Untuk konfigurasi yang terakhir, akun layanan tidak diperlukan, sehingga kolom writer identity sink tercantum sebagai None di konsol. Perintah API dan Google Cloud CLI tidak melaporkan identitas penulis.
Petunjuk berikut berlaku untuk project, folder, organisasi, dan akun penagihan:
Konsol
Pastikan Anda memiliki akses Owner ke projectGoogle Cloud yang berisi tujuan. Jika Anda tidak memiliki akses Owner ke tujuan sink, minta pemilik project untuk menambahkan identitas penulis sebagai akun utama.
Untuk mendapatkan identitas penulis sink—alamat email—dari sink baru, lakukan hal berikut:
-
Di konsol Google Cloud , buka halaman Log Router:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.
- Di toolbar, pilih project yang berisi sink.
- Pilih more_vert Menu, lalu pilih View sink details. Identitas penulis muncul di panel Sink details.
-
Jika nilai kolom
writerIdentityberisi alamat email, lanjutkan ke langkah berikutnya. Jika nilainya adalahNone, Anda tidak perlu mengonfigurasi izin tujuan untuk sink.Salin identitas penulis sink ke papan klip Anda.
Alamat email mengidentifikasi akun utama. Awalan,
serviceAccount:, menentukan jenis akun.Berikan izin kepada akun utama yang ditentukan dalam identitas penulis sink untuk menulis data log ke tujuan:
-
Di konsol Google Cloud , buka halaman IAM:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah IAM & Admin.
Di toolbar, pastikan project yang dipilih adalah project yang menyimpan tujuan atau merupakan tujuan sink. Misalnya, jika tujuannya adalah bucket log, pastikan toolbar menampilkan project yang menyimpan bucket log.
Pilih Berikan akses.
Berikan peran IAM kepada akun utama yang ditentukan dalam identitas penulis sink berdasarkan tujuan sink log:
- Untuk semua tujuan, berikan
peran Logs Writer
(
roles/logging.logWriter). Secara khusus, akun utama memerlukan izinlogging.logEntries.route. - Berikan salah satu peran berikut berdasarkan tujuan:
- Bucket log: Berikan
peran Logs Bucket Writer
(
roles/logging.bucketWriter). - Topik Pub/Sub: Berikan
peran Pub/Sub Publisher
(
roles/pubsub.publisher).
- Bucket log: Berikan
peran Logs Bucket Writer
(
- Untuk semua tujuan, berikan
peran Logs Writer
(
-
gcloud
Pastikan Anda memiliki akses Owner ke projectGoogle Cloud yang berisi tujuan. Jika Anda tidak memiliki akses Owner ke tujuan sink, minta pemilik project untuk menambahkan identitas penulis sebagai akun utama.
Dapatkan akun layanan dari kolom
writerIdentitydi sink Anda:gcloud logging sinks describe SINK_NAME
Temukan sink yang izinnya ingin Anda ubah, dan jika detail sink berisi baris dengan
writerIdentity, lanjutkan ke langkah berikutnya. Jika detailnya tidak menyertakan kolomwriterIdentity, Anda tidak perlu mengonfigurasi izin tujuan untuk sink.Identitas penulis untuk akun layanan terlihat mirip dengan berikut ini:
serviceAccount:service-123456789012@gcp-sa-logging.
Beri izin identitas penulis sink untuk menulis data log ke tujuan dengan memanggil perintah
gcloud projects add-iam-policy-binding.Sebelum menggunakan perintah berikut, lakukan penggantian berikut:
- PROJECT_ID: ID project. Tentukan project yang menyimpan tujuan sink log. Jika tujuannya adalah project, tentukan project tersebut.
- PRINCIPAL: ID untuk akun utama yang ingin Anda
beri peran. ID utama biasanya memiliki bentuk berikut:
PRINCIPAL-TYPE:ID. Misalnya,. Untuk mengetahui daftar lengkap format yang dapat dimilikiPRINCIPAL, lihat ID principal. ROLE: Peran IAM. Beri identitas penulis sink peran IAM berdasarkan tujuan sink log:
- Untuk semua tujuan, berikan
peran Logs Writer
(
roles/logging.logWriter). Secara khusus, akun utama memerlukan izinlogging.logEntries.route. - Berikan salah satu peran berikut berdasarkan tujuan:
- Bucket log: Berikan
peran Logs Bucket Writer
(
roles/logging.bucketWriter). - Topik Pub/Sub: Berikan
peran Pub/Sub Publisher
(
roles/pubsub.publisher).
- Bucket log: Berikan
peran Logs Bucket Writer
(
- Untuk semua tujuan, berikan
peran Logs Writer
(
Jalankan perintah
gcloud projects add-iam-policy-binding:gcloud projects add-iam-policy-binding PROJECT_ID --member=PRINCIPAL --role=ROLE
REST
Sebaiknya gunakan konsol Google Cloud atau Google Cloud CLI untuk memberikan peran ke akun layanan.
Contoh filter
Berikut adalah beberapa contoh filter yang sangat berguna saat membuat sink. Untuk contoh tambahan yang mungkin berguna saat Anda membuat filter penyertaan dan filter pengecualian, lihat Contoh kueri.
Memulihkan filter sink _Default
Jika Anda mengedit filter untuk sink _Default, Anda mungkin ingin memulihkan sink ini ke konfigurasi aslinya. Saat dibuat, sink _Default dikonfigurasi dengan filter penyertaan berikut dan filter pengecualian kosong:
NOT log_id("cloudaudit.googleapis.com/activity") AND NOT \
log_id("externalaudit.googleapis.com/activity") AND NOT \
log_id("cloudaudit.googleapis.com/system_event") AND NOT \
log_id("externalaudit.googleapis.com/system_event") AND NOT \
log_id("cloudaudit.googleapis.com/access_transparency") AND NOT \
log_id("externalaudit.googleapis.com/access_transparency")
Mengecualikan log pod dan container Google Kubernetes Engine
Untuk mengecualikan entri log pod dan container Google Kubernetes Engine untuk
namespaces sistem GKE, gunakan filter berikut:
resource.type = ("k8s_container" OR "k8s_pod")
resource.labels.namespace_name = (
"cnrm-system" OR
"config-management-system" OR
"gatekeeper-system" OR
"gke-connect" OR
"gke-system" OR
"istio-system" OR
"knative-serving" OR
"monitoring-system" OR
"kube-system")
Untuk mengecualikan entri log node Google Kubernetes Engine untuk nilai log_id sistem GKE, gunakan filter berikut:
resource.type = "k8s_node"
(log_id("container-runtime") OR
log_id("docker") OR
log_id("kube-container-runtime-monitor") OR
log_id("kube-logrotate") OR
log_id("kube-node-configuration") OR
log_id("kube-node-installation") OR
log_id("kubelet") OR
log_id("kubelet-monitor") OR
log_id("node-journal") OR
log_id("node-problem-detector"))
Dukungan
Meskipun Cloud Logging memungkinkan Anda mengecualikan entri log dan mencegahnya disimpan di bucket log, Anda dapat mempertimbangkan untuk menyimpan entri log yang membantu mendukung sistem. Menggunakan entri log ini dapat membantu Anda memecahkan masalah dan mengidentifikasi masalah pada aplikasi Anda.
Misalnya, entri log sistem GKE berguna untuk memecahkan masalah aplikasi dan cluster GKE Anda karena entri tersebut dibuat untuk peristiwa yang terjadi di cluster Anda. Entri log ini dapat membantu Anda menentukan apakah kode aplikasi atau cluster GKE yang mendasarinya menyebabkan error aplikasi. Log sistem GKE juga mencakup Logging Audit Kubernetes yang dihasilkan oleh komponen Server Kubernetes API, yang mencakup perubahan yang dibuat menggunakan perintah kubectl dan peristiwa Kubernetes.