全部产品
Search
文档中心

Function Compute:Apa yang harus saya lakukan jika trigger tidak dapat memicu eksekusi fungsi?

更新时间:Jul 02, 2025

Deskripsi masalah

Trigger gagal memicu eksekusi fungsi.

Penyebab yang mungkin

Berikut adalah kemungkinan penyebabnya:

  • Aturan pemicuan yang dikonfigurasikan tidak terpenuhi.

  • Peran yang dikonfigurasikan untuk trigger salah.

Solusi

Solusi 1: Periksa apakah aturan pemicuan terpenuhi

Berikut adalah aturan pemicuan dari trigger umum:

  • Trigger OSS

    • Bucket Object Storage Service (OSS) dan fungsi Anda harus berada di wilayah yang sama.

    • Prefiks atau sufiks objek yang diunggah harus sesuai dengan prefiks atau sufiks objek yang ditentukan untuk trigger.

      Sebagai contoh, jika Anda mengatur prefiks objek menjadi ab, dan mengunggah objek a/b.zip, ab.zip, dan abc.zip ke OSS, hanya ab.zip dan abc.zip yang dapat memicu eksekusi fungsi.

    • Event OSS harus sesuai dengan event trigger. Jika tidak, eksekusi fungsi tidak akan dipicu. Berikut adalah kasus-kasus di mana event OSS tidak sesuai dengan event trigger:

      • Anda menggunakan ossbrowser untuk mengunggah objek menggunakan multipart upload. Setelah pengunggahan, nama event adalah oss:ObjectCreated:CompleteMultipartUpload. Jika nama event trigger yang dikonfigurasikan adalah oss:ObjectCreated:PutObject atau oss:ObjectCreated:PostObject, eksekusi fungsi tidak akan dipicu.

      • Anda mengunggah objek di konsol Function Compute, dan nama event adalah oss:ObjectCreated:PostObject. Namun, nama event trigger yang dikonfigurasikan adalah oss:ObjectCreated:PutObject. Anda mengunggah objek dengan memanggil operasi oss:ObjectCreated:PutObject, dan nama event adalah oss:ObjectCreated:PutObject. Namun, nama event trigger yang dikonfigurasikan adalah oss:ObjectCreated:PostObject.

    • Ketika Anda menghapus objek dari bucket OSS yang memiliki versioning diaktifkan, Anda harus menentukan ID versi.

      Jika Anda tidak menentukan ID versi ketika menggunakan ossbrowser untuk menghapus objek, event oss:ObjectRemoved:DeleteObject atau oss:ObjectRemoved:DeleteObjects tidak akan dipicu. Versi saat ini dari objek menjadi versi historis, dan penanda hapus ditambahkan. Untuk informasi lebih lanjut, lihat bagian "FAQ" dari topik Ikhtisar.

  • Trigger Tablestore

    Anda harus mengatur parameter Informasi Stream ke Aktif untuk tabel data instance Tablestore. Untuk informasi lebih lanjut, lihat bagian "Langkah 1: Mengaktifkan fitur Stream untuk tabel data" dari topik Gunakan Function Compute.

Solusi 2: Periksa apakah peran trigger benar

Anda harus memeriksa apakah peran yang dikonfigurasikan untuk trigger telah dihapus, atau apakah peran tersebut memiliki izin yang diperlukan. Kami merekomendasikan agar Anda mengonfigurasi peran standar untuk trigger. Sebagai contoh, Anda dapat mengonfigurasi peran AliyunOSSEventNotificationRole untuk trigger OSS. Untuk informasi lebih lanjut, lihat Konfigurasikan trigger OSS asli.

Dukungan teknis

Jika masalah tetap ada setelah mencoba solusi di atas, bergabunglah dengan grup pengguna DingTalk (ID: 11721331) untuk dukungan teknis. Anda harus menyediakan informasi berikut untuk dukungan teknis: akun Alibaba Cloud Anda, bucket OSS, nama layanan, nama fungsi, dan sumber event.