Anda dapat mengelola pemicu menggunakan konsol Google Cloud atau Google Cloud CLI di terminal atau Cloud Shell. Anda juga dapat mengelola pemicu melalui Eventarc API.
Mencantumkan pemicu
Anda dapat mencantumkan, memfilter, dan mengurutkan pemicu di semua lokasi.
Konsol
Di konsol Google Cloud , buka halaman Pemicu Eventarc.
Daftar ini mencantumkan semua pemicu dalam project Anda untuk semua lokasi, dan mencakup detail seperti nama pemicu, region, penyedia peristiwa, tujuan, dan jenis peristiwa.
Untuk memfilter pemicu menurut properti tertentu:
- Klik kotak Filter .
- Dari daftar Properti, pilih opsi untuk memfilter pemicu menurut—misalnya, Nama atau Saluran peristiwa.
Anda dapat memilih satu properti atau menggunakan operator logika
OR
untuk menambahkan lebih banyak properti yang akan digunakan sebagai filter.Untuk mengurutkan pemicu, klik
Urutkan di samping judul kolom yang sesuai.Hanya beberapa kolom yang dapat diurutkan—misalnya, Nama, Wilayah, atau Saluran acara.
gcloud
gcloud eventarc triggers list --location=-
Perintah ini mencantumkan nama, jenis, tujuan, dan status pemicu Anda di semua lokasi.
REST
Untuk mencantumkan pemicu dalam project dan lokasi tertentu, gunakan metode
projects.locations.triggers.list
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: project ID Google Cloud Anda.LOCATION
: region tempat pemicu dibuat—misalnya,us-central1
.
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika berhasil, isi respons berisi instance
Trigger
dan responsnya akan terlihat mirip dengan berikut:
{ "triggers": [ { "name": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME", "uid": "d700773a-698b-47b2-a712-2ee10b690062", "createTime": "2022-12-06T22:44:04.744001514Z", "updateTime": "2022-12-06T22:44:09.116459550Z", "eventFilters": [ { "attribute": "type", "value": "google.cloud.pubsub.topic.v1.messagePublished" } ], "serviceAccount": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com", "destination": { "workflow": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME" }, "transport": { "pubsub": { "topic": "projects/PROJECT_ID/topics/TOPIC_ID", "subscription": "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID" } } }, { object (Trigger) } ], "nextPageToken": string, "unreachable": [ string ] }
Menjelaskan pemicu
Anda dapat menjelaskan pemicu di lokasi tertentu.
Konsol
Di konsol Google Cloud , buka halaman Pemicu Eventarc.
Dari daftar pemicu, klik pemicu yang detailnya ingin Anda ketahui.
Halaman Detail pemicu menampilkan detail pemicu seperti nama, wilayah, penyedia peristiwa, jenis peristiwa, jenis konten data peristiwa, dan tujuan.
gcloud
gcloud eventarc triggers describe TRIGGER \ --location=LOCATION
Ganti kode berikut:
TRIGGER
: ID pemicu atau ID yang memenuhi syarat sepenuhnya.LOCATION
: lokasi pemicu Eventarc.
Perintah ini menampilkan informasi tentang pemicu yang mirip dengan berikut ini:
createTime: '2023-03-16T13:40:44.889670204Z'
destination:
cloudRun:
path: /
region: us-central1
service: hello
eventDataContentType: application/protobuf
eventFilters:
- attribute: serviceName
value: cloudscheduler.googleapis.com
- attribute: methodName
value: google.cloud.scheduler.v1.CloudScheduler.DeleteJob
- attribute: type
value: google.cloud.audit.log.v1.written
name: projects/project-name/locations/us-central1/triggers/name-of-trigger
serviceAccount: project-number-compute@developer.gserviceaccount.com
transport:
pubsub:
subscription: projects/project-name/subscriptions/eventarc-us-central1-name-of-trigger-sub-034
topic: projects/project-name/topics/eventarc-us-central1-name-of-trigger-931
REST
Untuk mendeskripsikan pemicu dalam project dan lokasi tertentu, gunakan
metode
projects.locations.triggers.get
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
TRIGGER_NAME
: nama pemicu yang ingin Anda deskripsikan.PROJECT_ID
: project ID Google Cloud Anda.LOCATION
: region tempat pemicu dibuat—misalnya,us-central1
.
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika berhasil, isi respons berisi instance
Trigger
yang mirip dengan berikut ini:
{ "name": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME", "uid": "d700773a-698b-47b2-a712-2ee10b690062", "createTime": "2022-12-06T22:44:04.744001514Z", "updateTime": "2022-12-06T22:44:09.116459550Z", "eventFilters": [ { "attribute": "type", "value": "google.cloud.pubsub.topic.v1.messagePublished" } ], "serviceAccount": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com", "destination": { "workflow": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME" }, "transport": { "pubsub": { "topic": "projects/PROJECT_ID/topics/TOPIC_ID", "subscription": "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID" } } }
Jika kondisi pemicu menunjukkan masalah pada topik Pub/Sub, lihat Pemicu tidak menayangkan peristiwa.
Memperbarui pemicu
Anda dapat memperbarui pemicu untuk tujuan Cloud Run, Google Kubernetes Engine (GKE), dan Workflows. Bergantung pada tujuan, kolom tertentu dapat diperbarui.
Konsol
Di konsol Google Cloud , buka halaman Pemicu Eventarc.
Dari daftar pemicu, klik pemicu yang detailnya ingin Anda ketahui.
Di halaman Detail pemicu, klik
Edit.Edit kolom sesuai kebutuhan, lalu klik Simpan.
Perhatikan bahwa Anda tidak dapat memperbarui kolom yang tidak tersedia seperti Penyedia acara dan Tujuan acara. Untuk mengetahui informasi selengkapnya tentang kolom, lihat petunjuk Konsol untuk penyedia, jenis peristiwa, dan tujuan tertentu.
gcloud
Cloud Run
gcloud eventarc triggers update TRIGGER \ --location=LOCATION \ --event-filters=NEW_EVENT_FILTERS \ --service-account=NEW_SERVICE_ACCOUNT \ --destination-run-region=NEW_REGION \ --destination-run-service=NEW_SERVICE \ --destination-run-path=NEW_PATH \ --event-data-content-type="NEW_EVENT_DATA_TYPE"
Ganti kode berikut:
TRIGGER
: ID pemicu atau ID yang memenuhi syarat sepenuhnya.LOCATION
: lokasi pemicu Eventarc.
Anda dapat memperbarui salah satu hal berikut:
NEW_EVENT_FILTERS
: filter yang digunakan untuk mengonfigurasi perutean peristiwa pemicu; misalnya,methodName=storage.objects.create
dapat diperbarui menjadimethodName=storage.objects.delete
. Perhatikan bahwa setelah pemicu dibuat, filter peristiwatype
tidak dapat diubah. Untuk jenis peristiwa lain, Anda harus membuat pemicu baru.NEW_SERVICE_ACCOUNT
: email akun layanan Identity and Access Management (IAM) yang terkait dengan pemicu.NEW_REGION
: region tempat layanan Cloud Run tujuan dapat ditemukan.NEW_SERVICE
: nama layanan Cloud Run yang menerima peristiwa untuk pemicu.NEW_PATH
: jalur relatif pada layanan Cloud Run tujuan tempat peristiwa untuk pemicu harus dikirim.NEW_EVENT_DATA_TYPE
: encoding payload peristiwa; bergantung pada penyedia peristiwa, ini dapat berupaapplication/json
atauapplication/protobuf
.
Misalnya, untuk memperbarui akun layanan untuk pemicu:
gcloud eventarc triggers update my-cloud-run-trigger \
--service-account=new-serviceaccount@${PROJECT_ID}.iam.gserviceaccount.com
Perintah ini memperbarui akun layanan pemicu bernama
my-cloud-run-trigger
menjadi
new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com
.
GKE
Perhatikan bahwa bagian ini juga berlaku untuk endpoint publik layanan pribadi dan publik yang berjalan di cluster GKE.
gcloud eventarc triggers update TRIGGER \ --location=LOCATION \ --destination-gke-namespace=NEW_NAMESPACE \ --destination-gke-service=NEW_SERVICE \ --destination-gke-path=NEW_PATH \ --event-data-content-type="NEW_EVENT_DATA_TYPE"
Ganti kode berikut:
TRIGGER
: ID pemicu atau ID yang memenuhi syarat sepenuhnya.LOCATION
: lokasi pemicu Eventarc.
Anda dapat memperbarui salah satu hal berikut:
NEW_NAMESPACE
: namespace tempat layanan GKE tujuan berjalan.NEW_SERVICE
: nama layanan GKE yang menerima peristiwa untuk pemicu.NEW_PATH
: jalur relatif pada layanan GKE tujuan tempat peristiwa untuk pemicu harus dikirim.NEW_EVENT_DATA_TYPE
: encoding payload peristiwa; bergantung pada penyedia peristiwa, ini dapat berupaapplication/json
atauapplication/protobuf
.
Misalnya, untuk memperbarui layanan penerima peristiwa untuk pemicu:
gcloud eventarc triggers update my-gke-trigger \
--destination-gke-service=helloworld-events
Perintah ini memperbarui layanan penerima peristiwa untuk pemicu bernama
my-gke-trigger
ke layanan GKE bernama
helloworld-events
.
Workflows
gcloud eventarc triggers update TRIGGER \ --location=LOCATION \ --event-filters=NEW_EVENT_FILTERS \ --service-account=NEW_SERVICE_ACCOUNT \ --destination-workflow=NEW_DESTINATION_WORKFLOW \ --destination-workflow-location=NEW_DESTINATION_WORKFLOW_LOCATION \ --event-data-content-type="NEW_EVENT_DATA_TYPE"
Ganti kode berikut:
TRIGGER
: ID pemicu atau ID yang memenuhi syarat sepenuhnya.LOCATION
: lokasi pemicu Eventarc.
Anda dapat memperbarui salah satu hal berikut:
NEW_EVENT_FILTERS
: filter yang digunakan untuk mengonfigurasi perutean peristiwa pemicu; misalnya,methodName=storage.objects.create
dapat diperbarui menjadimethodName=storage.objects.delete
. Perhatikan bahwa setelah pemicu dibuat, filter peristiwatype
tidak dapat diubah. Untuk jenis peristiwa yang berbeda, Anda harus membuat pemicu baru.NEW_SERVICE_ACCOUNT
: email akun layanan Identity and Access Management (IAM) yang terkait dengan pemicu.NEW_DESTINATION_WORKFLOW
: ID alur kerja yang di-deploy yang menerima peristiwa dari pemicu.NEW_DESTINATION_WORKFLOW_LOCATION
: lokasi tempat alur kerja tujuan di-deploy.NEW_EVENT_DATA_TYPE
: encoding payload peristiwa; bergantung pada penyedia peristiwa, ini dapat berupaapplication/json
atauapplication/protobuf
.
Misalnya, untuk memperbarui akun layanan untuk pemicu:
gcloud eventarc triggers update my-workflows-trigger \
--service-account=new-serviceaccount@${PROJECT_ID}.iam.gserviceaccount.com
Perintah ini memperbarui akun layanan pemicu bernama
my-workflows-trigger
menjadi
new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com
.
REST
Untuk memperbarui pemicu yang ada, gunakan metode
projects.locations.triggers.patch
dan secara opsional gunakan parameter kueri updateMask
untuk menentukan daftar
kolom yang akan diperbarui.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
TRIGGER_NAME
: nama pemicu yang ingin Anda perbarui.PROJECT_ID
: project ID Google Cloud Anda.LOCATION
: region tempat pemicu dibuat—misalnya,us-central1
.SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
: optional. Email akun layanan Identity and Access Management (IAM) yang terkait dengan pemicu.DESTINATION
: optional. Menentukan target tempat peristiwa harus dikirim dan berisi instanceDestination
. Contoh:{"destination": {"workflow": "projects/my-project/locations/us-central1/workflows/my-first-workflow"}}
atau
{"destination": {"cloudRun": {"service": "hello-world", "region": "us-central1"}}}
EVENT_FILTER
: optional. Atribut peristiwa yang akan difilter. Hanya pembaruan jenis metode untuk pemicu Cloud Audit Logs yang didukung. Contoh:{"eventFilters": [{"attribute": "methodName", "value": "storage.buckets.create"}, {"attribute": "type", "value": "google.cloud.audit.log.v1.written"}, {"attribute": "serviceName", "value": "storage.googleapis.com"}]}
Perhatikan bahwa Anda tidak dapat memperbarui jenis metode untuk tujuan GKE.
CONTENT_TYPE
: optional. Encoding payload peristiwa; bergantung pada penyedia peristiwa, ini bisa berupaapplication/json
atauapplication/protobuf
.UPDATE_FIELDS
: optional. Daftar kolom yang akan diperbarui, yang dipisahkan koma. Jika tidak diberikan, semua kolom yang diberikan dalam permintaan akan diperbarui. Contoh:serviceAccount,destination
Meminta isi JSON:
{ "serviceAccount": "SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com", "destination": DESTINATION, "eventFilters" EVENT_FILTER, "eventDataContentType": "CONTENT_TYPE" }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika berhasil, isi respons berisi instance Operation
yang baru dibuat:
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata", "createTime": "2024-01-25T17:17:45.782370139Z", "target": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME", "verb": "update", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Jika nilai "done"
adalah false
, operasi
masih berlangsung.
Menghapus pemicu
Anda dapat menghapus pemicu.
Konsol
Di konsol Google Cloud , buka halaman Pemicu Eventarc.
Pilih pemicu, lalu klik
Hapus.
gcloud
gcloud eventarc triggers delete TRIGGER
Ganti TRIGGER
dengan ID pemicu atau ID yang
sepenuhnya memenuhi syarat.
REST
Untuk menghapus pemicu dengan nama tertentu, gunakan metode
projects.locations.triggers.delete
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: project ID Google Cloud Anda.LOCATION
: region tempat pemicu dibuat—misalnya,us-central1
.TRIGGER_NAME
: nama pemicu yang ingin Anda hapus.
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika berhasil, isi respons berisi instance
Operation
:
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata", "createTime": "2024-01-24T17:53:52.834876290Z", "target": "projects/PROJECT_ID/locations/LOCATION/triggers/TRIGGER_NAME", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Jika nilai "done"
adalah false
, operasi
masih berlangsung.