Halaman ini menunjukkan cara menyelesaikan masalah yang mungkin Anda alami saat menggunakan Eventarc.
Untuk masalah khusus tujuan yang mungkin juga Anda alami, lihat pemecahan masalah untuk:
Penyedia Eventarc
Bagian ini memberikan tips pemecahan masalah untuk masalah di sumber peristiwa (penyedia).
Penyedia tidak ada
Pastikan penyedia ada dan Anda telah menentukan filter pemicu dengan benar.
Peristiwa dihasilkan dari penyedia, tetapi tidak diterima di target
Pastikan Anda memfilter peristiwa dari penyedia yang berada di wilayah yang didukung untuk tujuan target. Untuk mengetahui informasi selengkapnya, lihat lokasi yang didukung oleh Eventarc dan Memahami lokasi Eventarc.
Pemicu tidak mengirimkan peristiwa
Pastikan penyedia menghasilkan peristiwa. Periksa Cloud Audit Logs dan pastikan layanan yang dipantau menulis log. Jika log dicatat, tetapi peristiwa tidak dikirim, hubungi dukungan.
Pastikan topik Pub/Sub dengan nama pemicu yang sama ada.
Untuk mencantumkan pemicu di semua lokasi, jalankan:
gcloud eventarc triggers list --location=-
Untuk mencantumkan topik Pub/Sub, jalankan:
gcloud pubsub topics list
Pastikan nama topik Pub/Sub menyertakan nama pemicu yang dibuat. Jika topik Pub/Sub tidak ada, buat topik saat Anda membuat pemicu.
Untuk menjelaskan pemicu dan mendeteksi masalah apa pun pada kondisi pemicu, jalankan:
gcloud eventarc triggers describe TRIGGER_ID \ --location=LOCATION
Ganti kode berikut:
TRIGGER_ID
: ID pemicu atau ID yang memenuhi syarat sepenuhnya.LOCATION
: lokasi pemicu Eventarc.
Perintah sebelumnya menampilkan kondisi pemicu. Jika ada masalah dengan topik Pub/Sub, salah satu kondisi berikut akan ditampilkan:
conditions: transport.pubsub.topic: code: NOT_FOUND message: Pub/Sub topic not found. Try recreating the trigger.
atau
conditions: transport.pubsub.topic: code: UNKNOWN message: Pub/Sub topic status is unknown. Try requesting the trigger description again.
Jika berlaku, lakukan hal berikut:
Jika
Pub/Sub topic not found
ditampilkan, buat ulang pemicu untuk penyedia, jenis peristiwa, dan tujuan tertentu](/eventarc/standard/docs/event-providers-targets#triggers) lalu buat topik.Jika
Pub/Sub topic status is unknown
ditampilkan, jalankan kembali perintah untuk mendeskripsikan pemicu.Jika masalah berlanjut, hubungi dukungan. Untuk mengetahui informasi selengkapnya, lihat Mengelola pemicu.
Verifikasi kondisi topik Pub/Sub:
Verifikasi konfigurasi topik Pub/Sub. Buka halaman Topik.
Pantau jika pesan dipublikasikan ke topik dengan metrik:
topic/send_message_operation_count
. Jika pesan tidak dipublikasikan ke topik, periksa Cloud Audit Logs dan pastikan layanan yang dipantau memancarkan log. Jika log dicatat, tetapi peristiwa tidak dikirim, hubungi dukungan.Pantau apakah pesan berhasil dikirim dengan metrik:
subscription/push_request_count
menurutresponse_code
. Jika error push dilaporkan, periksa log layanan. Jika endpoint penerima menampilkan kode status non-OK, hal ini menunjukkan bahwa kode Cloud Run tidak berfungsi seperti yang diharapkan dan Anda harus menghubungi dukungan.
Pemicu Eventarc
Bagian ini memberikan tips pemecahan masalah untuk masalah pada pemicu.
Error izin ditolak
Jika Anda mengalami error
Failed to load service details: permission denied
, pastikan izin pemicu dikonfigurasi dengan benar, dan akun layanan Pub/Sub diberi peraniam.serviceAccountTokenCreator
. Untuk mengetahui informasi selengkapnya, lihat Kontrol akses.Jika Anda mengalami error berikut saat mencoba membuat pemicu, tunggu beberapa menit (hingga tujuh), lalu coba buat pemicu lagi:
Permission denied while using the Eventarc Service Agent. If you recently started to use Eventarc, it may take a few minutes before all necessary permissions are propagated to the Service Agent. Otherwise, verify that it has Eventarc Service Agent role.
Agen layanan bertindak sebagai identitas layanan Google Cloud tertentu untuk project tertentu. Untuk mengetahui informasi selengkapnya, lihat Agen layanan dan lihat izin untuk peran agen layanan Eventarc (
roles/eventarc.serviceAgent
).Untuk memverifikasi bahwa agen layanan Eventarc ada di projectGoogle Cloud Anda dan memiliki peran yang diperlukan, selesaikan langkah-langkah berikut:
Di konsol Google Cloud , buka halaman IAM.
Di tab Permissions, centang kotak Include Google-provided role grants.
Dalam daftar akun utama, cari agen layanan Eventarc, yang menggunakan format ini:
service-PROJECT_NUMBER@gcp-sa-eventarc.iam.gserviceaccount.com
Pastikan agen layanan memiliki peran Agen Layanan Eventarc. Jika agen layanan tidak memiliki peran tersebut, berikan peran tersebut.
Jika Anda mencoba menggunakan akun layanan lintas project dan mengalami error izin ditolak untuk
iam.serviceAccounts.getAccessToken
atauiam.serviceAccounts.actAs
, atau jika Anda menerima pesan error yang mirip dengan...cross-project service accounts are disabled
atauFailed to impersonate...
, pastikan izin dikonfigurasi dengan benar. Untuk mengetahui informasi selengkapnya, lihat Menggunakan akun layanan lintas project.
Topik Pub/Sub tidak menampilkan kunci CMEK
Mengaktifkan saluran Eventarc dengan kunci enkripsi yang dikelola pelanggan (CMEK) melindungi topik Pub/Sub yang digunakan sebagai lapisan transport oleh Eventarc Standar. Namun, kunci CMEK tidak ditampilkan melalui konsolGoogle Cloud . Anda dapat memverifikasi bahwa kunci CMEK diaktifkan untuk topik Pub/Sub menggunakan Google Cloud CLI:
Deskripsikan pemicu Eventarc:
gcloud eventarc triggers describe TRIGGER_ID \ --location=LOCATION
Ganti kode berikut:
TRIGGER_ID
: ID pemicu EventarcLOCATION
: lokasi pemicuID topik Pub/Sub ditampilkan. Contoh:
topic: projects/PROJECT_ID/topics/TOPIC_ID
Jelaskan topik Pub/Sub:
gcloud pubsub topics describe TOPIC_ID
Ganti
TOPIC_ID
dengan ID topik Pub/Sub yang diambil pada langkah sebelumnya.Nama kunci CMEK ditampilkan. Contoh:
kmsKeyName: projects/PROJECT_ID/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME/grants/GRANT_ID
Biaya tak terduga saat menggunakan Eventarc
Saat membuat pemicu, periksa apakah filter yang dikonfigurasi dapat menyebabkan pemicu diaktifkan tanpa batas waktu. Untuk membantu menghindari tagihan yang tidak terduga pada tagihan Anda, tetapkan anggaran dan pemberitahuan menggunakan konsol penagihan Google Cloud. Untuk mengetahui informasi selengkapnya, lihat Membuat anggaran.
Informasi terkait
- Untuk mempelajari Eventarc lebih lanjut, lihat ringkasan.
- Untuk melihat tutorial tentang pemecahan masalah Eventarc, lihat Men-debug layanan Cloud Run menggunakan Eventarc.
- Untuk masalah publikasi acara, lihat Memecahkan masalah publikasi acara.
- Untuk mendapatkan bantuan tambahan, lihat Mendapatkan dukungan.