Mengelola bucket log menggunakan Tag

Dokumen ini menjelaskan cara menggunakan Tag untuk mengelola bucket log Cloud Logging Anda. Tag, yang dibuat di level organisasi atau project, memungkinkan Anda menganotasi resource. Anda juga dapat memberikan peran Identity and Access Management (IAM) secara bersyarat atau menolak izin IAM secara bersyarat berdasarkan apakah resource memiliki tag tertentu atau tidak. Untuk informasi tentang tag, lihat Ringkasan tag.

Misalnya, jika menggunakan BigQuery untuk menganalisis data Cloud Billing, Anda dapat melampirkan tag project:production ke bucket log yang menyimpan data log dari resource produksi, dan Anda dapat melampirkan tag project:development ke bucket log yang menyimpan data log dari resource pengembangan. Kemudian, Anda dapat mengkueri data Penagihan Cloud dengan tag dan melihat perincian biaya antara pengembangan dan produksi.

Tag dapat dilampirkan secara eksplisit ke bucket log, atau diwarisi dari organisasi, folder, dan project induknya.

Sebelum memulai

Untuk mulai mengelola bucket log menggunakan tag, lakukan hal berikut:

  1. Pastikan Anda telah membuat tag dan mengonfigurasi nilainya. Anda menggunakan Resource Manager untuk mengelola definisi tag. Untuk informasi tentang cara membuat dan mengelola tag, lihat Membuat dan mengelola tag.
  2. Untuk mendapatkan izin yang diperlukan guna mengelola bucket log menggunakan tag, minta administrator untuk memberi Anda peran IAM berikut di project atau organisasi:

    Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

    Peran bawaan ini berisi izin yang diperlukan untuk mengelola bucket log menggunakan tag. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

    Izin yang diperlukan

    Izin berikut diperlukan untuk mengelola bucket log menggunakan tag:

    • Menambahkan atau menghapus tag ke bucket log:
      • resourcemanager.tagValues.{get,list}
      • resourcemanager.tagKeys.{get,list}
      • resourcemanager.projects.get
      • logging.buckets.createTagbinding
      • logging.buckets.deleteTagBinding
    • Lihat tag yang dilampirkan ke bucket log:
      • resourcemanager.tagValues.{get,list}
      • resourcemanager.tagKeys.{get,list}
      • logging.buckets.listTagBindings
      • logging.buckets.listEffectiveTags

    Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

  3. Untuk mendapatkan izin yang diperlukan guna mengelola bucket log, 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.

    Peran bawaan ini berisi izin logging.buckets.list, yang diperlukan untuk mengelola bucket log.

    Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Melampirkan tag ke bucket log

Untuk melampirkan tag ke bucket log, lakukan hal berikut:

Konsol Google Cloud

  1. Di konsol Google Cloud, buka halaman Logs Storage:

    Buka Penyimpanan Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Cari bucket log yang akan diberi tag.

  3. Di bucket log, klik Lainnya, lalu klik Edit tag.

  4. Dalam dialog, di bagian Tag langsung, temukan tag dengan memilih resource tempat tag dibuat. Misalnya, untuk menggunakan tag yang dibuat di tingkat project, pilih Select current project sebagai cakupan.

    Anda juga dapat menelusuri project, organisasi, atau ID tag secara manual dengan memilih opsi Entri Manual.

  5. Pilih pasangan nilai kunci yang sesuai, lalu klik Simpan.

  6. Dialog yang mengonfirmasi perubahan Anda akan muncul. Klik Konfirmasi untuk menyelesaikan perubahan Anda.

gcloud

Untuk melampirkan tag ke bucket log, buat binding tag dengan menjalankan perintah gcloud resource-manager tags bindings create:

gcloud resource-manager tags bindings create \
--tag-value=TAG_VALUE_ID \
--parent=BUCKET_NAME \
--location=LOCATION

Pada perintah sebelumnya, buat penggantian berikut:

  • TAG_VALUE_ID: ID permanen atau nama dengan namespace dari nilai tag. Contoh, tagValues/4567890123. Untuk informasi selengkapnya tentang ID tag, lihat Definisi dan ID tag.

  • BUCKET_NAME: Nama bucket log. Contoh, logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID.

  • LOCATION: Lokasi bucket log.

API

Untuk melampirkan tag ke bucket log, gunakan metode tagBindings.create.

Melihat tag yang dilampirkan ke bucket log

Untuk melihat tag yang terlampir ke bucket log, lakukan langkah berikut:

Konsol Google Cloud

  1. Di konsol Google Cloud, buka halaman Logs Storage:

    Buka Penyimpanan Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Cari bucket log yang tagnya ingin Anda lihat.

    Di kolom Tag, tag yang terkait dengan bucket log akan dicantumkan. Untuk melihat semua tag yang terkait dengan bucket log, klik tombol Lainnya untuk meluaskan daftar tag.

gcloud

Jalankan perintah gcloud resource-manager tags bindings list:

gcloud resource-manager tags bindings list \
--parent=BUCKET_NAME \
--location=LOCATION

Pada perintah sebelumnya, buat penggantian berikut:

  • TAG_VALUE_ID: ID permanen atau nama dengan namespace dari nilai tag. Contoh, tagValues/4567890123. Untuk informasi selengkapnya tentang ID tag, lihat Definisi dan ID tag.

  • BUCKET_NAME: Nama bucket log. Contoh, logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID.

  • LOCATION: Lokasi bucket log.

Opsional: Untuk melihat tag yang diwarisi oleh bucket log, tambahkan flag --effective. Menambahkan flag ini akan menampilkan respons yang mirip dengan berikut:

namespacedTagKey: 961309089256/environment
namespacedTagValue: 961309089256/environment/production
tagKey: tagKeys/417628178507
tagValue: tagValues/247197504380
inherited: true

Jika semua tag secara eksplisit dilampirkan ke bucket log dan tidak ada tag yang diwarisi, kolom inherited akan bernilai salah dan akan dihilangkan.

API

Untuk mendapatkan daftar binding tag untuk bucket, gunakan metode tagBindings.list.

Menghapus tag di bucket log

Untuk menghapus tag yang dilampirkan ke bucket log, Anda harus menghapus binding tag yang dilampirkan ke bucket log. Untuk menghapus tag, Anda harus menghapus tag dari semua resource yang terlampir.

Konsol Google Cloud

  1. Di konsol Google Cloud, buka halaman Logs Storage:

    Buka Penyimpanan Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Cari bucket log yang tag-nya ingin Anda hapus.

  3. Di bucket log, klik Lainnya, lalu klik Edit tag.

  4. Dalam dialog, arahkan kursor ke tag yang akan dihapus, lalu klik Hapus item. Klik Simpan untuk menyimpan perubahan.

  5. Dialog yang mengonfirmasi perubahan Anda akan muncul. Klik Konfirmasi untuk menyelesaikan perubahan Anda.

gcloud

Jalankan perintah gcloud resource-manager tags bindings delete:

gcloud resource-manager tags bindings delete \
--tag-value=TAG_VALUE_ID \
--parent=BUCKET_NAME \
--location=LOCATION

Pada perintah sebelumnya, buat penggantian berikut:

  • TAG_VALUE_ID: ID permanen atau nama dengan namespace dari nilai tag. Contoh, tagValues/4567890123. Untuk informasi selengkapnya tentang ID tag, lihat Definisi dan ID tag.

  • BUCKET_NAME: Nama bucket log. Contoh, logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID.

  • LOCATION: Lokasi bucket log.

API

Untuk menghapus tag di bucket log, gunakan metode tagBindings.delete.

Batasan

  • Anda tidak dapat menggunakan pemberian peran IAM untuk mengontrol bucket log yang dilihat akun utama saat mereka mencantumkan bucket log di project Google Cloud. Prinsipal akan melihat daftar lengkap atau daftar kosong. Namun, Anda dapat menggunakan pemberian peran IAM dengan kondisi IAM untuk membatasi tindakan yang dapat dilakukan akun utama pada bucket log. Misalnya, Anda dapat membatasi apakah akun utama dapat menghapus bucket log tertentu.

  • Jika Anda menggunakan ekspor data Penagihan Cloud dengan BigQuery, tag mungkin memerlukan waktu hingga satu jam untuk digunakan dalam ekspor. Jika tag telah ditambahkan atau dihapus dalam waktu satu jam, atau jika bucket log telah ada selama kurang dari satu jam, tag tersebut mungkin tidak muncul di ekspor.

Peran kustom dan pemberian peran dengan kondisi IAM

Jika Anda berencana menggunakan peran IAM kustom dan jika Anda berencana melampirkan kondisi IAM ke pemberian peran, Anda mungkin perlu membuat beberapa peran kustom. Beberapa izin IAM akan dibatalkan saat kondisi IAM dilampirkan ke pemberian peran.

Untuk Cloud Logging, izin IAM berikut akan dibatalkan saat pemberian peran berisi kondisi IAM:

  • logging.buckets.list
  • logging.buckets.create

Oleh karena itu, Anda mungkin perlu membuat satu peran dengan izin list dan create serta peran lain yang berisi izin khusus bucket lainnya. Misalnya, Anda dapat membuat peran yang berisi izin logging.buckets.delete dan logging.buckets.update.

Saat Anda memberikan peran yang berisi izin list dan create, jangan lampirkan kondisi IAM ke pemberian peran. Saat memberikan peran yang berisi izin delete dan update, Anda dapat menambahkan kondisi IAM yang membatasi pemberian izin ke resource dengan tag tertentu.

Langkah selanjutnya