Pemicu Pub/Sub

Di Cloud Functions, pemicu Pub/Sub memungkinkan suatu fungsi dipanggil sebagai respons terhadap pesan Pub/Sub. Saat menentukan pemicu Pub/Sub untuk suatu fungsi, Anda juga menentukan topik Pub/Sub. Fungsi Anda akan dipanggil setiap kali pesan dipublikasikan ke topik yang ditentukan.

Agar fungsi dapat menggunakan pemicu Pub/Sub, pemicu harus diimplementasikan sebagai fungsi berbasis peristiwa:

Repositori Google Events berisi resource tambahan untuk menangani data peristiwa.

Deployment

Anda dapat menentukan pemicu Pub/Sub saat men-deploy fungsi. Lihat Men-deploy Cloud Function untuk mengetahui petunjuk umum tentang cara men-deploy fungsi, dan lihat bagian ini untuk mengetahui informasi tambahan khusus terkait cara mengonfigurasi pemicu Pub/Sub selama deployment.

gcloud

Jika Anda men-deploy menggunakan gcloud CLI, flag yang ditampilkan di sini digunakan untuk mengonfigurasi pemicu Pub/Sub:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-topic=YOUR_PUBSUB_TOPIC \
[--retry] \
...
  • Flag --trigger-topic menentukan topik Pub/Sub yang akan dipantau oleh pemicu. Pesan yang dipublikasikan ke topik ini akan memicu panggilan ke fungsi Anda.
  • Flag --retry mengontrol apakah panggilan fungsi yang gagal akan dicoba ulang secara otomatis. Lihat Mencoba kembali fungsi berbasis peristiwa untuk mengetahui informasi selengkapnya.

Peristiwa Pub/Sub lama

Fungsi lama di Cloud Functions (generasi ke-1) menggunakan jenis peristiwa yang berbeda untuk pemicu Pub/Sub:

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-event=providers/cloud.pubsub/eventTypes/topic.publish \
--trigger-resource=YOUR_PUBSUB_TOPIC \
...

Jenis peristiwa ini didukung untuk fungsi lama yang telah menggunakan peristiwa ini. Namun, sebaiknya gunakan flag --trigger-topic, karena jenis peristiwa yang lama mungkin dihapus pada tanggal yang akan datang.

Konsol

Jika men-deploy menggunakan Konsol Google Cloud, Anda dapat mengonfigurasi pemicu Pub/Sub di bagian Trigger.

  • Untuk Cloud Functions (generasi ke-2):

    1. Di kolom Jenis pemicu, pilih Cloud Pub/Sub.
    2. Di kolom Cloud Pub/Sub topic, pilih topik untuk dipantau pemicunya. Pesan yang dipublikasikan ke topik ini akan memicu panggilan ke fungsi Anda.
    3. Pilih atau hapus centang pada kotak Coba lagi jika gagal untuk mengontrol apakah Cloud Functions secara otomatis mencoba ulang pemanggilan fungsi yang gagal. Lihat Mencoba kembali fungsi berbasis peristiwa untuk mengetahui informasi selengkapnya.
    4. Klik More options untuk melakukan konfigurasi tambahan pada pemicu Anda:

      • Di kolom Jenis pemicu, tentukan salah satu Sumber Google, Kustom, atau Pihak ketiga:

        • Dengan Sumber Google, Anda dapat menentukan pemicu untuk Pub/Sub, Cloud Storage,Firestore, dan penyedia peristiwa Google lainnya.Di panel pemicu Eventarc, gunakan kolom Event provider untuk memilih produk yang menyediakan jenis peristiwa yang Anda inginkan untuk memicu fungsi Anda. Selanjutnya, di kolom Peristiwa, pilih peristiwa yang ingin Anda gunakan sebagai pemicu.

        • Opsi Kustom memungkinkan Anda membuat dan menggunakan peristiwa dari kode aplikasi. Ikuti petunjuk di panel Eventarc trigger untuk membuat saluran. Saluran adalah resource yang digunakan sebagai pipeline untuk mengirimkan peristiwa kustom dari produser ke konsumen. Peristiwa kustom dipublikasikan ke saluran dan pemicu Eventarc akan berlangganan peristiwa tersebut.

        • Opsi Pihak ketiga memungkinkan Anda berintegrasi dengan penyedia non-Google yang menawarkan sumber Eventarc. Lihat peristiwa pihak ketiga di Eventarc untuk mengetahui detailnya.

      • Di kolom Peristiwa, pilih peristiwa pemicu. Default-nya adalah google.cloud.pubsub.topic.v1.messagePublished.

      • Secara opsional, di kolom Service account, pilih akun layanan yang akan digunakan sebagai identitas pemicu Eventarc. Lihat Identitas pemicu untuk mengetahui informasi selengkapnya.

    5. Klik Save trigger.

  • Untuk Cloud Functions (generasi ke-1):

    1. Di kolom Trigger type, pilih Cloud Pub/Sub.
    2. Di kolom Select a Cloud Pub/Sub topic, pilih topik untuk pemicu yang akan dipantau, atau pilih Create a topic guna membuka jendela untuk membuat topik baru. Saat pesan dipublikasikan ke topik fungsi Anda, hal tersebut akan memicu panggilan ke fungsi Anda.
    3. Centang atau hapus centang pada kotak Retry on failure untuk mengontrol apakah panggilan fungsi yang gagal akan dicoba ulang secara otomatis. Lihat Mencoba kembali fungsi berbasis peristiwa untuk mengetahui informasi selengkapnya.

Langkah berikutnya