Anda dapat mengaktifkan atau menonaktifkan pengumpulan dan publikasi peristiwa dari sumber Google untuk bus Eventarc Advanced tertentu.
Peristiwa dari sumber Google dipicu langsung oleh peristiwa yang tidak dimediasi seperti pembuatan fungsi Cloud Run atau perubahan status pada tugas Dataflow. Untuk mengetahui informasi selengkapnya, lihat Jenis peristiwa Google yang didukung oleh Eventarc.
Perhatikan hal berikut:
- Ada batas satu resource
GoogleApiSource
per project Google Cloud. - Anda hanya dapat memublikasikan peristiwa dari sumber Google dalam project Google Cloud yang sama dengan resource
GoogleApiSource
. - Anda dapat memublikasikan peristiwa ke bus yang berada di project Google Cloud yang berbeda
dari project tempat resource
GoogleApiSource
berada. Anda dapat mengonfigurasinya menggunakan gcloud CLI atau dengan mengirim permintaan ke Eventarc API.
Mengaktifkan peristiwa dari sumber Google
Untuk memublikasikan peristiwa dari sumber Google, Anda harus membuat resource GoogleApiSource
. Resource ini mewakili langganan ke peristiwa Google API di
project Google Cloud tertentu untuk bus Eventarc Advanced tertentu.
Anda dapat mengaktifkan publikasi peristiwa dari sumber Google dengan cara berikut:
- Di konsol Google Cloud
- Dengan menggunakan Google Cloud CLI di terminal atau Cloud Shell
Dengan mengirim permintaan ke Eventarc API
Konsol
Di konsol Google Cloud, buka halaman Eventarc > Bus.
Anda dapat membuat bus atau, jika memperbarui bus, klik Edit.
Di halaman Edit bus, untuk menambahkan sumber pesan, klik
Tambahkan sumber.- Di panel Tambahkan sumber pesan, untuk penyedia pesan Google API, terima
google-api-source
default atau masukkan nama sumber pesan yang berbeda. - Klik Buat.
- Di panel Tambahkan sumber pesan, untuk penyedia pesan Google API, terima
Klik Simpan.
gcloud
Buka terminal.
Anda dapat mengaktifkan peristiwa dari sumber Google menggunakan perintah
gcloud beta eventarc google-api-sources create
:gcloud beta eventarc google-api-source create GOOGLE_API_SOURCE_NAME \ --destination-message-bus=BUS_NAME \ --destination-message-bus-project=BUS_PROJECT_ID
Ganti kode berikut:
GOOGLE_API_SOURCE_NAME
: ID atau ID yang sepenuhnya memenuhi syarat dari resourceGoogleApiSource
Anda yang mewakili langganan ke peristiwa Google API untuk bus tertentuBUS_NAME
: ID atau ID yang sepenuhnya memenuhi syarat dari bus yang ingin Anda jadikan langganan untuk peristiwa Google APIBUS_PROJECT_ID
: Google Cloud project ID untuk bus
Opsional: Anda juga dapat menggunakan flag berikut:
--async
untuk segera kembali dari perintah, tanpa menunggu operasi yang sedang berlangsung selesai.--crypto-key
untuk menentukan nama yang sepenuhnya memenuhi syarat dari kunci enkripsi yang dikelola pelanggan; jika tidak ditentukan, Google-owned and managed keys akan digunakan.--logging-config
untuk mengonfigurasi level logging yang harus berupa salah satu dari hal berikut:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Untuk informasi selengkapnya, lihatLogSeverity
.
REST API
Untuk mengaktifkan peristiwa dari sumber Google, gunakan metode
projects.locations.googleApiSources.create
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
GOOGLE_API_SOURCE_NAME
: nama tampilan resourceGoogleApiSource
yang mewakili langganan ke peristiwa Google API untuk bus tertentu—misalnya,my_google_source
.LABEL_KEY
danLABEL_VALUE
: opsional. Peta pasangan nilai dan kunci label yang membantu Anda mengatur resource Google Cloud . Untuk informasi selengkapnya, lihat Apa yang dimaksud dengan label?ANNOTATION_KEY
danANNOTATION_VALUE
: opsional. Peta pasangan nilai dan kunci anotasi dari teks bentuk bebas. Anda dapat menggunakannya untuk melampirkan informasi arbitrer yang terkait dengan resource. Untuk informasi selengkapnya, lihat Anotasi.DESTINATION
: ID bus Eventarc Advanced yang sepenuhnya memenuhi syarat tempat peristiwa sumber Google harus dipublikasikan dalam formatprojects/PROJECT_NAME/locations/LOCATION/messageBuses/BUS_NAME
. Untuk mengetahui informasi selengkapnya, lihat Membuat bus untuk merutekan pesan.ENCRYPT_KEY
: optional. Kunci Cloud KMS yang harus digunakan resourceGoogleApiSource
untuk enkripsi data dalam formatprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
. Untuk informasi selengkapnya, lihat Menggunakan kunci enkripsi yang dikelola pelanggan.PROJECT_ID
: project ID Google Cloud tempat membuat resourceGoogleApiSource
.LOCATION
: Region yang didukung untuk membuat resourceGoogleApiSource
—misalnya,us-central1
.LOG_SEVERITY
: optional. Tingkat keparahan minimum peristiwa yang dijelaskan dalam entri log. Salah satu dari:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Defaultnya adalahNONE
. Untuk informasi selengkapnya, lihatLogSeverity
.
Meminta isi JSON:
{ "displayName": "GOOGLE_API_SOURCE_NAME", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"}, "destination": "DESTINATION", "cryptoKeyName": "ENCRYPT_KEY", "loggingConfig": {"logSeverity":"LOG_SEVERITY"} }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika berhasil, isi respons akan 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/googleApiSources/GOOGLE_API_SOURCE_NAME", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Peristiwa dari sumber Google dalam project Google Cloud yang sama dengan resource GoogleApiSource
kini dikumpulkan dan dipublikasikan ke bus.
Menonaktifkan peristiwa dari sumber Google
Untuk menonaktifkan publikasi peristiwa dari sumber Google di project Google Cloud tertentu ke bus Eventarc Advanced, Anda harus menghapus resource GoogleApiSource
.
Anda dapat menonaktifkan publikasi peristiwa dari sumber Google dengan cara berikut:
- Di konsol Google Cloud
- Dengan menggunakan gcloud CLI di terminal atau Cloud Shell
Dengan mengirim permintaan ke Eventarc API
Konsol
Di konsol Google Cloud, buka halaman Eventarc > Detail bus.
Klik
Edit.Di halaman Edit bus, untuk menghapus penyedia pesan Google API, klik
Hapus resource untuk sumber pesan google-api-source (atau nama yang telah Anda berikan).Pada perintah Delete resource, klik Confirm.
Klik Simpan.
gcloud
Buka terminal.
Anda dapat menonaktifkan peristiwa dari sumber Google menggunakan perintah
gcloud beta eventarc google-api-sources delete
:gcloud beta eventarc google-api-source delete GOOGLE_API_SOURCE_NAME \ --location=REGION
Ganti kode berikut:
GOOGLE_API_SOURCE_NAME
: ID atau ID yang memenuhi syarat sepenuhnya dari resourceGoogleApiSource
REGION
: lokasi resourceGoogleApiSource
REST API
Untuk menonaktifkan peristiwa dari sumber Google, gunakan metode
projects.locations.googleApiSources.delete
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Google Cloud project ID tempat resourceGoogleApiSource
dibuat.LOCATION
: region tempat resourceGoogleApiSource
dibuat—misalnya,us-central1
.GOOGLE_API_SOURCE_NAME
: nama resourceGoogleApiSource
yang ingin Anda hapus.
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika berhasil, isi respons akan 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/googleApiSources/GOOGLE_API_SOURCE_NAME", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Peristiwa dari sumber Google di project Google Cloud yang sama dengan resource GoogleApiSource
yang dihapus tidak lagi dikumpulkan dan dipublikasikan.
Langkah berikutnya
- Memublikasikan peristiwa secara langsung
- Memformat peristiwa yang diterima
- Mentransformasi peristiwa yang diterima