Menjadwalkan fungsi HTTP Cloud Run

Tutorial ini menunjukkan cara menjadwalkan fungsi HTTP Cloud Run dengan menargetkan endpoint HTTP di Cloud Scheduler. Gunakan fungsi HTTP jika Anda ingin fungsi memiliki endpoint URL dan merespons permintaan HTTP, seperti untuk webhook.

Atau, jika Anda membuat fungsi CloudEvents, gunakan pemicu peristiwa Eventarc untuk menjadwalkan fungsi Anda agar merespons peristiwa dalam project Anda. Eventarc dapat memicu pesan di topik Pub/Sub, perubahan dalam bucket Cloud Storage, dan lainnya. Untuk mengetahui informasi selengkapnya, lihat Jenis fungsi Cloud Run.

Menjadwalkan eksekusi fungsi Cloud Run adalah kasus penggunaan umum untuk Cloud Scheduler. Dalam tutorial ini, Anda akan:

  1. Buat fungsi Cloud Run HTTP sederhana.
  2. Buat tugas Cloud Scheduler.
  3. Jalankan tugas Cloud Scheduler.
  4. Verifikasi bahwa tugas Cloud Scheduler memicu fungsi Cloud Run Anda.

Membuat fungsi HTTP Cloud Run

Buat fungsi HTTP yang dipicu oleh Cloud Scheduler.

  1. Di konsol Google Cloud , buka halaman Cloud Run.

    Buka Cloud Run

  2. Klik Write a function.

  3. Di bagian Konfigurasi, lakukan hal berikut:

    1. Di kolom Nama layanan, masukkan nama untuk fungsi Anda.
    2. Di daftar Region, pilih region.
    3. Jangan ubah bahasa runtime default.
    4. Untuk autentikasi, pilih Wajibkan autentikasi.

      Jika Anda dikenai kebijakan organisasi pembatasan domain yang membatasi pemanggilan yang tidak terautentikasi untuk project, Anda perlu mengakses layanan yang di-deploy seperti yang dijelaskan di bagian Menguji layanan pribadi.

      Untuk mengetahui informasi selengkapnya, lihat Mengautentikasi untuk pemanggilan.

  4. Setujui setelan default lainnya, lalu klik Create.

  5. Salin URL HTTP untuk fungsi tersebut.

Untuk mengetahui informasi selengkapnya, termasuk cara men-deploy fungsi Cloud Run menggunakan Terraform, lihat Men-deploy fungsi Cloud Run.

Buat tugas Cloud Scheduler

Buat tugas Cloud Scheduler yang memicu tindakan menggunakan HTTP.

  1. Di konsol Google Cloud , buka halaman Cloud Scheduler.

    Buka Cloud Scheduler

  2. Klik Buat tugas.

  3. Masukkan nama untuk tugas Anda.

  4. Di daftar Region, pilih region.

  5. Tentukan frekuensi untuk tugas Anda, menggunakan format unix-cron:

    30 16 * * 7
    

    Untuk mengetahui informasi selengkapnya, lihat Format cron job dan zona waktu.

  6. Di daftar Zona waktu, pilih zona waktu.

  7. Klik Lanjutkan.

  8. Dalam daftar Jenis target, pilih HTTP.

  9. Di kolom URL, masukkan URL HTTP fungsi yang sebelumnya Anda salin.

  10. Dalam daftar Header auth, pilih Tambahkan token OIDC.

  11. Dalam daftar Service account, pilih akun layanan yang Anda buat sebelumnya.

  12. Di kolom Audiens, masukkan URL HTTP fungsi yang sebelumnya Anda salin.

  13. Klik Buat.

Anda telah membuat tugas cron yang menjalankan fungsi Cloud Run pada pukul 16.30 setiap hari Minggu.

Jalankan tugas Cloud Scheduler

Sekarang Anda dapat menjalankan tugas yang Anda buat.

  1. Di konsol Google Cloud , buka halaman Cloud Scheduler.

    Buka Cloud Scheduler

  2. Centang kotak untuk tugas yang Anda buat, lalu klik Jalankan paksa.

    Saat pertama kali dipanggil, tugas pertama yang dibuat dalam project dapat memerlukan waktu beberapa menit untuk dikonfigurasi dan dijalankan.

  3. Setelah tugas berjalan, Status of last execution akan menunjukkan Success.

Memverifikasi hasil di fungsi Cloud Run

Anda dapat memverifikasi bahwa fungsi Cloud Run Anda berhasil dipicu dan dieksekusi oleh tugas cron Anda.

  1. Di konsol Google Cloud , buka halaman Cloud Run.

    Buka Cloud Run

  2. Pilih Filter layanan > Jenis deployment > Function. Tindakan ini memfilter daftar layanan untuk hanya menampilkan fungsi.

  3. Klik nama fungsi.

    Halaman Service details akan terbuka dan menampilkan metrik layanan.

  4. Klik tab Logs.

    Anda akan melihat entri log yang mirip dengan POST 200 146 B 5 ms Google-Cloud-Scheduler https://FUNCTION_NAME