Halaman ini menjelaskan cara mengonfigurasi bucket Anda untuk mengirim notifikasi tentang perubahan objek pada topik Pub/Sub. Untuk informasi tentang berlangganan topik Pub/Sub yang menerima notifikasi, lihat Memilih jenis langganan.
Sebelum memulai
Sebelum menggunakan fitur ini, Anda harus:
Mengaktifkan Pub/Sub API untuk project yang akan menerima notifikasi.
Memiliki izin
storage.buckets.update
danstorage.buckets.get
di bucket yang ingin Anda pantau. Lihat Menggunakan Izin IAM untuk mengetahui petunjuk cara melakukannya. Jika Anda memiliki project yang berisi bucket, kemungkinan besar Anda sudah memiliki izin yang diperlukan.Memiliki izin yang memadai pada project yang akan menerima notifikasi:
Jika Anda memiliki project yang akan menerima notifikasi, kemungkinan besar Anda memiliki izin yang diperlukan.
Jika berencana membuat topik untuk menerima notifikasi, Anda harus memiliki izin
pubsub.topics.create
.Baik menggunakan topik baru maupun yang sudah ada, Anda harus memiliki izin
pubsub.topics.setIamPolicy
. Jika membuat topik, biasanya Anda memilikipubsub.topics.setIamPolicy
untuk topik tersebut.Lihat Kontrol Akses Pub/Sub untuk mengetahui petunjuk cara mendapatkan izin Pub/Sub ini.
-
Memiliki topik Pub/Sub yang sudah ada yang ingin Anda kirimi notifikasi.
Dapatkan alamat email agen layanan yang terkait dengan project yang berisi bucket Cloud Storage Anda.
Gunakan alamat email yang Anda dapatkan di langkah sebelumnya untuk memberikan peran IAM
pubsub.publisher
kepada agen layanan untuk topik Pub/Sub yang relevan.
Menerapkan konfigurasi notifikasi
Langkah-langkah berikut akan menambahkan konfigurasi notifikasi ke bucket Anda yang mengirim notifikasi untuk semua peristiwa yang didukung.
Konsol
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan Konsol Google Cloud. Gunakan gcloud CLI atau salah satu library klien yang tersedia.
Command line
Gunakan perintah gcloud storage buckets notifications create
:
gcloud storage buckets notifications create gs://BUCKET_NAME --topic=TOPIC_NAME
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.TOPIC_NAME
adalah topik Pub/Sub yang menjadi tujuan pengiriman notifikasi. Jika Anda menentukan topik yang tidak ada dalam project, perintah akan membuatkan topik untuk Anda.
Guna mengirim notifikasi untuk subset peristiwa, sertakan flag --event-types
.
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Go API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Guna membuat konfigurasi notifikasi untuk bucket menggunakan PHP, lihat dokumentasi referensi Library Klien Google Cloud.Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Ruby API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Terraform
Anda dapat menggunakan resource Terraform untuk menambahkan konfigurasi notifikasi ke bucket.
REST API
JSON API
Telah menginstal dan melakukan inisialisasigcloud CLI, agar dapat membuat token akses untuk header
Authorization
.Atau, Anda dapat membuat token akses menggunakan OAuth 2.0 Playground dan menyertakannya di header
Authorization
.Buat file JSON yang berisi informasi berikut:
{ "topic": "projects/PROJECT_ID/topics/TOPIC_NAME", "payload_format": "JSON_API_V1" }
Dengan keterangan:
PROJECT_ID
adalah ID untuk project yang terkait dengan topik Pub/Sub yang ingin Anda kirimi notifikasi. Contoh,my-pet-project
.TOPIC_NAME
adalah topik Pub/Sub yang akan dikirimi notifikasi. Contoh,my-topic
.
Guna mengirim notifikasi untuk subset peristiwa, sertakan kolom
event_types
dalam isi permintaan JSON Anda.Gunakan
cURL
untuk memanggil JSON API dengan permintaanPOST notificationConfigs
:curl -X POST --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/notificationConfigs"
Dengan keterangan:
JSON_FILE_NAME
adalah jalur untuk file yang Anda buat di Langkah 2.BUCKET_NAME
adalah nama bucket yang notifikasinya ingin Anda buat. Contoh,my-bucket
.
XML API
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan XML API.
Mendapatkan konfigurasi notifikasi
Untuk mendapatkan konfigurasi notifikasi tertentu yang terkait dengan bucket Anda:
Konsol
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan Konsol Google Cloud. Gunakan gcloud CLI atau salah satu library klien yang tersedia.
Command line
Gunakan perintah gcloud storage buckets notifications describe
:
gcloud storage buckets notifications describe projects/_/buckets/BUCKET_NAME/notificationConfigs/NOTIFICATION_ID
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang konfigurasi notifikasinya ingin Anda ambil. Misalnya,my-bucket
.NOTIFICATION_ID
adalah nomor ID konfigurasi yang relevan. Contoh,5
.
Jika berhasil, responsnya akan terlihat mirip dengan contoh berikut ini:
etag: '132' id: '132' kind: storage#notification payload_format: JSON_API_V1 selfLink: https://www.googleapis.com/storage/v1/b/my-bucket/notificationConfigs/132 topic: //pubsub.googleapis.com/projects/my-project/topics/my-bucket
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Go API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Guna mendapatkan konfigurasi notifikasi untuk bucket menggunakan PHP, lihat dokumentasi referensi Library Klien Google Cloud.Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Ruby API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST API
JSON API
Telah menginstal dan melakukan inisialisasigcloud CLI, agar dapat membuat token akses untuk header
Authorization
.Atau, Anda dapat membuat token akses menggunakan OAuth 2.0 Playground dan menyertakannya di header
Authorization
.Gunakan
cURL
untuk memanggil JSON API dengan permintaanGET notificationConfigs
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/notificationConfigs/NOTIFICATION_ID"
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang konfigurasi notifikasinya ingin Anda ambil. Contoh,my-bucket
.NOTIFICATION_ID
adalah nomor ID konfigurasi notifikasi yang ingin Anda ambil. Contoh,5
.
XML API
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan XML API.
Mencantumkan konfigurasi notifikasi untuk bucket
Untuk mencantumkan semua konfigurasi notifikasi yang terkait dengan bucket tertentu:
Konsol
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan Konsol Google Cloud. Gunakan gcloud CLI atau salah satu library klien yang tersedia.
Command line
Gunakan perintah gcloud storage buckets notifications list
:
gcloud storage buckets notifications list gs://BUCKET_NAME
Dengan BUCKET_NAME
adalah nama bucket
yang konfigurasi notifikasinya ingin Anda cantumkan. Misalnya,
my-bucket
.
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Go API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Untuk menampilkan daftar konfigurasi notifikasi yang terkait dengan bucket menggunakan PHP, lihat dokumentasi referensi Library Klien Google Cloud.Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Ruby API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST API
JSON API
Telah menginstal dan melakukan inisialisasigcloud CLI, agar dapat membuat token akses untuk header
Authorization
.Atau, Anda dapat membuat token akses menggunakan OAuth 2.0 Playground dan menyertakannya di header
Authorization
.Gunakan
cURL
untuk memanggil JSON API dengan permintaanGET notificationConfigs
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/notificationConfigs"
Dengan
BUCKET_NAME
adalah nama bucket yang konfigurasi notifikasinya ingin Anda cantumkan. Misalnya,my-bucket
.
XML API
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan XML API.
Menghapus konfigurasi notifikasi
Untuk menghapus konfigurasi notifikasi yang ada dari bucket Anda:
Konsol
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan Konsol Google Cloud. Gunakan gcloud CLI atau salah satu library klien yang tersedia.
Command line
Gunakan perintah gcloud storage buckets notifications delete
:
gcloud storage buckets notifications delete projects/_/buckets/BUCKET_NAME/notificationConfigs/NOTIFICATION_ID
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang konfigurasi notifikasinya ingin Anda hapus. Contoh,my-bucket
.NOTIFICATION_ID
adalah nomor ID konfigurasi yang ingin Anda hapus. Contoh,5
.
Jika berhasil, responsnya akan terlihat mirip dengan contoh berikut:
Completed 1
Setelah dikirim, mungkin perlu waktu hingga 30 detik agar semua notifikasi yang dipicu oleh konfigurasi notifikasi berhenti.
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Go API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Guna menghapus konfigurasi notifikasi untuk bucket menggunakan PHP, lihat dokumentasi referensi Library Klien Google Cloud.Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Ruby API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Terraform
Untuk menghapus konfigurasi notifikasi yang Anda buat, jalankan terraform destroy
dari folder yang berisi file Terraform Anda.
REST API
JSON API
Telah menginstal dan melakukan inisialisasigcloud CLI, agar dapat membuat token akses untuk header
Authorization
.Atau, Anda dapat membuat token akses menggunakan OAuth 2.0 Playground dan menyertakannya di header
Authorization
.Gunakan
cURL
untuk memanggil JSON API dengan permintaanDELETE notificationConfigs
:curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/notificationConfigs/NOTIFICATION_ID"
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang konfigurasi notifikasinya ingin Anda hapus. Contoh,my-bucket
.NOTIFICATION_ID
adalah nomor ID konfigurasi notifikasi yang ingin Anda hapus. Contoh,5
.
Setelah dikirim, mungkin perlu waktu hingga 30 detik agar semua notifikasi yang dipicu oleh konfigurasi notifikasi berhenti.
XML API
Anda tidak dapat mengelola Notifikasi Pub/Sub dengan XML API.
Langkah selanjutnya
- Mempelajari lebih lanjut notifikasi Pub/Sub untuk Cloud Storage.
- Membuat langganan di Pub/Sub untuk melihat notifikasi yang dikirim oleh Cloud Storage.
- Melihat aplikasi contoh polling Python untuk notifikasi di GitHub.
- Menggunakan Cloud Functions untuk mengirimkan peristiwa dengan pemicu Cloud Storage.