Menjalankan tugas Cloud Run yang memproses data peristiwa yang disimpan di Cloud Storage


Anda dapat menggunakan Alur Kerja untuk menjalankan tugas Cloud Run sebagai bagian dari alur kerja yang melakukan pemrosesan data yang lebih kompleks atau yang mengatur sistem tugas yang ada.

Tutorial ini menunjukkan cara menggunakan Alur Kerja untuk menjalankan tugas Cloud Run yang memproses data peristiwa yang disimpan di bucket Cloud Storage. Dengan menyimpan payload peristiwa di bucket Cloud Storage, Anda dapat mengenkripsi data menggunakan kunci enkripsi yang dikelola pelanggan, yang tidak dapat dilakukan jika Anda meneruskan data peristiwa sebagai variabel lingkungan ke tugas Cloud Run.

Diagram berikut memberikan ringkasan umum:

Peristiwa Pub/Sub dirutekan oleh pemicu Eventarc ke Workflow dan disimpan di bucket Cloud Storage. Tugas Cloud Run memproses data peristiwa yang disimpan di bucket.

Tujuan

Dalam tutorial ini, Anda akan:

  1. Buat tugas Cloud Run yang memproses data peristiwa yang disimpan di bucket Cloud Storage.
  2. Deploy alur kerja yang melakukan hal berikut:
    1. Menerima peristiwa sebagai argumen.
    2. Menulis data payload peristiwa ke bucket Cloud Storage.
    3. Menggunakan konektor Cloud Run Admin API untuk mengeksekusi tugas Cloud Run.
  3. Buat topik Pub/Sub agar Anda dapat memublikasikan pesan ke topik tersebut. Tutorial ini menggunakan peristiwa Pub/Sub sebagai contoh cara merutekan peristiwa menggunakan Alur Kerja, menyimpan peristiwa ke Cloud Storage sehingga tugas Cloud Run dapat memproses data peristiwa.
  4. Buat pemicu Eventarc yang menjalankan alur kerja saat pesan ditulis ke topik Pub/Sub.
  5. Picu alur kerja dengan menulis pesan ke topik Pub/Sub.

Biaya

Dalam dokumen ini, Anda akan menggunakan komponen Google Cloud yang dapat ditagih berikut:

Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga. Pengguna baru Google Cloud mungkin memenuhi syarat untuk mendapatkan uji coba gratis.

Sebelum memulai

Batasan keamanan yang ditentukan oleh organisasi mungkin mencegah Anda menyelesaikan langkah-langkah berikut. Untuk mengetahui informasi pemecahan masalah, lihat Mengembangkan aplikasi di lingkungan Google Cloud yang terbatas.

Sebelum memulai tutorial ini, Anda harus mengaktifkan API tertentu dan membuat akun layanan yang dikelola pengguna. Anda harus memberikan peran dan izin yang diperlukan kepada akun layanan agar dapat merutekan peristiwa menggunakan pemicu Eventarc dan menjalankan alur kerja.

Perhatikan bahwa jika menggunakan Cloud Shell untuk mencoba tutorial ini, Anda mungkin perlu memberikan peran tambahan ke akun layanan default Compute Engine. Untuk mengetahui detailnya, dalam dokumen ini, lihat bagian Membuat tugas Cloud Run.

Konsol

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Artifact Registry, Cloud Build, Cloud Run, Cloud Storage, Compute Engine, Eventarc, and Workflows APIs.

    Enable the APIs

  5. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Cloud Run Admin, Eventarc Event Receiver, Logs Writer, Storage Object Creator, Workflows Invoker.

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Enable the Artifact Registry, Cloud Build, Cloud Run, Cloud Storage, Compute Engine, Eventarc, and Workflows APIs.

    Enable the APIs

  9. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Cloud Run Admin, Eventarc Event Receiver, Logs Writer, Storage Object Creator, Workflows Invoker.

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

  10. Jika Anda mengaktifkan agen layanan Cloud Pub/Sub pada atau sebelum 8 April 2021, untuk mendukung permintaan push Pub/Sub yang diautentikasi, berikan peran Service Account Token Creator (roles/iam.serviceAccountTokenCreator) ke agen layanan. Jika tidak, peran ini akan diberikan secara default:
    1. Di konsol Google Cloud, buka halaman IAM.

      Buka IAM

    2. Pilih kotak centang Sertakan pemberian peran yang disediakan Google.
    3. Di kolom Name, temukan Cloud Pub/Sub Service Account, lalu klik Edit principal di baris yang sesuai.
    4. Klik Tambahkan peran atau Tambahkan peran lain.
    5. Di daftar Select a role, filter untuk Service Account Token Creator, lalu pilih peran tersebut.
    6. Klik Simpan.
  11. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  12. Cloud Shell mendukung langkah-langkah command line dalam tutorial ini.

gcloud

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.
  3. To initialize the gcloud CLI, run the following command:

    gcloud init
  4. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Enable the Artifact Registry, Cloud Build, Cloud Run, Cloud Storage, Compute Engine, Eventarc, and Workflows APIs:

    gcloud services enable artifactregistry.googleapis.com cloudbuild.googleapis.com compute.googleapis.com run.googleapis.com storage.googleapis.com eventarc.googleapis.com workflows.googleapis.com
  7. Set up authentication:

    1. Create the service account:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Replace SERVICE_ACCOUNT_NAME with a name for the service account.

    2. Grant roles to the service account. Run the following command once for each of the following IAM roles: roles/eventarc.eventReceiver, roles/logging.logWriter, roles/run.admin, roles/storage.objectCreator, roles/workflows.invoker :

      gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID." --role=ROLE

      Replace the following:

      • SERVICE_ACCOUNT_NAME: the name of the service account
      • PROJECT_ID: the project ID where you created the service account
      • ROLE: the role to grant
  8. Install the Google Cloud CLI.
  9. To initialize the gcloud CLI, run the following command:

    gcloud init
  10. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  11. Make sure that billing is enabled for your Google Cloud project.

  12. Enable the Artifact Registry, Cloud Build, Cloud Run, Cloud Storage, Compute Engine, Eventarc, and Workflows APIs:

    gcloud services enable artifactregistry.googleapis.com cloudbuild.googleapis.com compute.googleapis.com run.googleapis.com storage.googleapis.com eventarc.googleapis.com workflows.googleapis.com
  13. Set up authentication:

    1. Create the service account:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Replace SERVICE_ACCOUNT_NAME with a name for the service account.

    2. Grant roles to the service account. Run the following command once for each of the following IAM roles: roles/eventarc.eventReceiver, roles/logging.logWriter, roles/run.admin, roles/storage.objectCreator, roles/workflows.invoker :

      gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID." --role=ROLE

      Replace the following:

      • SERVICE_ACCOUNT_NAME: the name of the service account
      • PROJECT_ID: the project ID where you created the service account
      • ROLE: the role to grant
  14. Jika Anda mengaktifkan agen layanan Cloud Pub/Sub pada atau sebelum 8 April 2021, untuk mendukung permintaan push Pub/Sub yang diautentikasi, berikan peran Service Account Token Creator (roles/iam.serviceAccountTokenCreator) ke agen layanan. Jika tidak, peran ini akan diberikan secara default:
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-pubsub. \
        --role=roles/iam.serviceAccountTokenCreator
  15. Ganti PROJECT_NUMBER dengan nomor project Google Cloud Anda. Anda dapat menemukan nomor project di halaman Selamat Datang pada Konsol Google Cloud atau dengan menjalankan perintah berikut:

    gcloud projects describe PROJECT_ID --format='value(projectNumber)'

Membuat tugas Cloud Run

Tutorial ini menggunakan kode contoh yang dapat Anda temukan di GitHub. Skrip deployment membangun image container untuk membuat tugas Cloud Run. Skrip ini juga membuat bucket Cloud Storage. Tugas Cloud Run membaca data peristiwa yang disimpan di bucket Cloud Storage, lalu mencetak data peristiwa.

  1. Jika Anda menjalankan skrip deployment di Cloud Shell, dan jika akun layanan default Compute Engine tidak memiliki peran Editor, berikan peran berikut pada project ke akun layanan default Compute Engine. (Jika tidak, Anda dapat melewati langkah ini dan melanjutkan dengan meng-clone repositori aplikasi contoh di langkah berikutnya.)

    1. Berikan peran Penulis Artifact Registry (roles/artifactregistry.writer):

      gcloud projects add-iam-policy-binding PROJECT_ID \
          --member=serviceAccount:PROJECT_NUMBER-compute@ \
          --role=roles/artifactregistry.writer

      Ganti PROJECT_NUMBER dengan nomor project Google Cloud Anda. Anda dapat menemukan nomor project di halaman Selamat Datang pada Konsol Google Cloud atau dengan menjalankan perintah berikut:

      gcloud projects describe PROJECT_ID --format='value(projectNumber)'

    2. Berikan peran Storage Object User (roles/storage.objectUser):

      gcloud projects add-iam-policy-binding PROJECT_ID \
          --member=serviceAccount:PROJECT_NUMBER-compute@ \
          --role=roles/storage.objectUser
    3. Berikan peran Logging Logs Writer (roles/logging.logWriter):

      gcloud projects add-iam-policy-binding PROJECT_ID \
          --member=serviceAccount:PROJECT_NUMBER-compute@ \
          --role=roles/logging.logWriter
  2. Dapatkan kode contoh dengan meng-clone repositori aplikasi contoh ke komputer lokal Anda:

    git clone https://github.com/GoogleCloudPlatform/workflows-demos.git

    Atau, Anda dapat mendownload contoh sebagai file ZIP

  3. Ubah ke direktori yang berisi kode contoh:

    cd workflows-demos/cloud-run-jobs-payload-gcs/message-payload-job
  4. Buat tugas Cloud Run dengan menjalankan skrip deployment:

    ./deploy-job.sh

Skrip ini membuat bucket Cloud Storage dengan nama message-payload-PROJECT_ID, dengan PROJECT_ID adalah ID project Google Cloud Anda. Tugas Cloud Run bernama message-payload-job juga dibuat.

Men-deploy alur kerja yang menjalankan tugas Cloud Run

Tentukan dan deploy alur kerja yang menjalankan tugas Cloud Run yang baru saja Anda buat. Definisi alur kerja terdiri dari serangkaian langkah yang dijelaskan menggunakan sintaksis Alur Kerja.

Alur kerja menerima peristiwa, menyimpan data peristiwa ke bucket Cloud Storage, lalu menjalankan tugas Cloud Run untuk memproses data peristiwa.

Konsol

  1. Di konsol Google Cloud, buka halaman Workflows:

    Buka Workflows

  2. Klik Buat.

  3. Masukkan nama untuk alur kerja baru, seperti message-payload-workflow.

  4. Pilih region yang sesuai; misalnya, us-central1.

  5. Di kolom Service account, pilih akun layanan yang Anda buat sebelumnya.

    Akun layanan berfungsi sebagai identitas alur kerja. Anda seharusnya sudah memberikan peran berikut ke akun layanan:

    • Cloud Run Admin: untuk menjalankan tugas Cloud Run
    • Logs Writer: untuk menulis entri log
    • Storage Object Creator: untuk membuat objek di Cloud Storage
  6. Klik Berikutnya.

  7. Di editor alur kerja, masukkan definisi berikut untuk alur kerja Anda:

    main:
        params: [event]
        steps:
            - init:
                assign:
                    - project_id: ${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")}
                    - event_bucket: ${"message-payload-" + project_id}
                    - event_file: ${event.id + ".data.json"}
                    - job_name: message-payload-job
                    - job_location: us-central1
            - log_event:
                call: sys.log
                args:
                    data: ${event}
            - write_payload_to_gcs:
                call: http.post
                args:
                    url: ${"https://storage.googleapis.com/upload/storage/v1/b/" + event_bucket + "/o"}
                    auth:
                        type: OAuth2
                    query:
                        name: ${event_file}
                    body:
                        ${event.data}
            - run_job_to_process_payload:
                call: googleapis.run.v1.namespaces.jobs.run
                args:
                    name: ${"namespaces/" + project_id + "/jobs/" + job_name}
                    location: ${job_location}
                    body:
                        overrides:
                            containerOverrides:
                                env:
                                    - name: INPUT_BUCKET
                                      value: ${event_bucket}
                                    - name: INPUT_FILE
                                      value: ${event_file}
                result: job_execution
            - finish:
                return: ${job_execution}
  8. Klik Deploy.

gcloud

  1. Buat file kode sumber untuk alur kerja Anda:

    touch message-payload-workflow.yaml
  2. Salin definisi alur kerja berikut ke message-payload-workflow.yaml:

    main:
        params: [event]
        steps:
            - init:
                assign:
                    - project_id: ${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")}
                    - event_bucket: ${"message-payload-" + project_id}
                    - event_file: ${event.id + ".data.json"}
                    - job_name: message-payload-job
                    - job_location: us-central1
            - log_event:
                call: sys.log
                args:
                    data: ${event}
            - write_payload_to_gcs:
                call: http.post
                args:
                    url: ${"https://storage.googleapis.com/upload/storage/v1/b/" + event_bucket + "/o"}
                    auth:
                        type: OAuth2
                    query:
                        name: ${event_file}
                    body:
                        ${event.data}
            - run_job_to_process_payload:
                call: googleapis.run.v1.namespaces.jobs.run
                args:
                    name: ${"namespaces/" + project_id + "/jobs/" + job_name}
                    location: ${job_location}
                    body:
                        overrides:
                            containerOverrides:
                                env:
                                    - name: INPUT_BUCKET
                                      value: ${event_bucket}
                                    - name: INPUT_FILE
                                      value: ${event_file}
                result: job_execution
            - finish:
                return: ${job_execution}
  3. Deploy alur kerja dengan memasukkan perintah berikut:

    gcloud workflows deploy message-payload-workflow \
        --location=us-central1 \
        --source=message-payload-workflow.yaml \
        --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.

    Ganti kode berikut:

    • SERVICE_ACCOUNT_NAME: nama akun layanan yang Anda buat sebelumnya
    • PROJECT_ID: ID project Google Cloud Anda

    Akun layanan berfungsi sebagai identitas alur kerja. Anda seharusnya sudah memberikan peran berikut ke akun layanan:

    • roles/logging.logWriter: untuk menulis entri log
    • roles/run.admin: untuk menjalankan tugas Cloud Run
    • roles/storage.objectCreator: untuk membuat objek di Cloud Storage

Alur kerja ini melakukan hal berikut:

  1. Langkah init—Menerima peristiwa sebagai argumen dan menetapkan variabel yang diperlukan.

  2. Langkah log_event—Membuat entri log di Cloud Logging menggunakan fungsi, sys.log.

  3. Langkah write_payload_to_gcs—Membuat permintaan POST HTTP dan menulis data payload peristiwa ke file bucket Cloud Storage.

  4. Langkah run_job_to_process_payload—Menggunakan metode konektor Cloud Run Admin API, googleapis.run.v1.namespaces.jobs.run, untuk menjalankan tugas. Bucket Cloud Storage dan nama file data diteruskan sebagai variabel penggantian dari alur kerja ke tugas.

  5. Langkah finish—Menampilkan informasi tentang eksekusi tugas sebagai hasil dari alur kerja.

Membuat topik Pub/Sub

Buat topik Pub/Sub agar Anda dapat memublikasikan pesan ke topik tersebut. Peristiwa Pub/Sub digunakan untuk menunjukkan cara merutekan peristiwa menggunakan Alur Kerja dan menyimpan peristiwa ke Cloud Storage sehingga tugas Cloud Run dapat memproses data peristiwa.

Konsol

  1. Di konsol Google Cloud, buka halaman Topics.

    Buka Topik

  2. Klik CREATE TOPIC.

  3. Di kolom Topic ID, masukkan ID untuk topik, seperti message-payload-topic.

  4. Pertahankan opsi Tambahkan langganan default.

  5. Jangan pilih opsi lainnya.

  6. Klik Create.

gcloud

Untuk membuat topik dengan ID message-payload-topic, jalankan perintah gcloud pubsub topics create:

gcloud pubsub topics create message-payload-topic

Membuat pemicu Eventarc untuk merutekan peristiwa ke alur kerja

Untuk menjalankan alur kerja secara otomatis dan pada akhirnya tugas Cloud Run, buat pemicu Eventarc yang merespons peristiwa Pub/Sub, dan merutekan peristiwa ke alur kerja. Setiap kali pesan ditulis ke topik Pub/Sub, peristiwa tersebut akan memicu eksekusi alur kerja.

Konsol

  1. Di konsol Google Cloud, buka halaman Workflows:

    Buka Workflows

  2. Klik nama alur kerja Anda, seperti message-payload-workflow.

  3. Di halaman Detail alur kerja, klik Edit.

  4. Di halaman Edit alur kerja, di bagian Pemicu, klik Tambahkan pemicu baru > Eventarc.

    Panel Pemicu Eventarc akan terbuka.

  5. Di kolom Nama pemicu, masukkan nama untuk pemicu, seperti message-payload-trigger.

  6. Dari daftar Penyedia peristiwa, pilih Cloud Pub/Sub.

  7. Dari daftar Peristiwa, pilih google.cloud.pubsub.topic.v1.messagePublished.

  8. Dari daftar Select a Cloud Pub/Sub topic, pilih topik Pub/Sub yang sebelumnya Anda buat.

  9. Di kolom Service account, pilih akun layanan yang Anda buat sebelumnya.

    Akun layanan berfungsi sebagai identitas pemicu. Anda seharusnya sudah memberikan peran berikut ke akun layanan:

    • Eventarc Event Receiver: untuk menerima peristiwa
    • Workflows Invoker: untuk menjalankan alur kerja
  10. Klik Save trigger.

    Pemicu Eventarc kini muncul di bagian Pemicu di halaman Edit alur kerja.

  11. Klik Berikutnya.

  12. Klik Deploy.

gcloud

Buat pemicu Eventarc dengan menjalankan perintah berikut:

gcloud eventarc triggers create message-payload-trigger \
    --location=us-central1 \
    --destination-workflow=message-payload-workflow \
    --destination-workflow-location=us-central1 \
    --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished" \
    --transport-topic=projects/PROJECT_ID/topics/message-payload-topic \
    --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.

Ganti kode berikut:

  • PROJECT_ID: ID project Google Cloud Anda
  • SERVICE_ACCOUNT_NAME: nama akun layanan yang Anda buat sebelumnya.

Akun layanan berfungsi sebagai identitas pemicu. Anda seharusnya sudah memberikan peran berikut ke akun layanan:

  • roles/eventarc.eventReceiver: untuk menerima peristiwa
  • roles/workflows.invoker: untuk menjalankan alur kerja

Memicu alur kerja

Uji sistem menyeluruh dengan memublikasikan pesan ke topik Pub/Sub dan membuat peristiwa. Untuk mengetahui informasi selengkapnya, lihat memicu alur kerja dengan peristiwa atau pesan Pub/Sub.

  1. Publikasikan pesan ke topik Pub/Sub untuk membuat peristiwa:

    gcloud pubsub topics publish message-payload-topic --message="Hello World"
    

    Peristiwa dirutekan ke alur kerja yang mencatat pesan peristiwa, menyimpan data peristiwa ke bucket Cloud Storage, dan menjalankan tugas Cloud Run untuk memproses data yang disimpan di Cloud Storage. Proses ini mungkin memerlukan waktu beberapa saat.

  2. Pastikan tugas Cloud Run berjalan seperti yang diharapkan dengan melihat eksekusi tugas:

    gcloud run jobs executions list --job=message-payload-job

    Anda akan melihat eksekusi tugas baru di output.

  3. Untuk melihat entri log terkait peristiwa yang dibuat dengan memicu alur kerja, jalankan perintah berikut:

    gcloud logging read "resource.type=cloud_run_job AND textPayload:Payload"
    
  4. Cari entri log yang mirip dengan:

    textPayload: "Payload: {'message': {'data': 'SGVsbG8gV29ybGQ=', 'messageId': '8834108235224238',\
    \ 'publishTime': '2023-09-20T17:07:52.921Z'}, 'subscription': 'projects/MY_PROJECT/subscriptions/eventarc-us-central1-message-payload-trigger-sub-741'}"
    ...
    resource:
    labels:
      job_name: message-payload-job
      location: us-central1
      project_id: MY_PROJECT
    type: cloud_run_job
    textPayload: Processing message payload gs://message-payload-MY_PROJECT/8254002311197919.data.json
    
  5. Anda dapat mengonfirmasi bahwa hasilnya sesuai dengan yang diharapkan dengan melihat data peristiwa di objek bucket Cloud Storage.

    1. Ambil nama bucket Anda:

      gcloud storage ls

      Outputnya mirip dengan hal berikut ini:

      gs://message-payload-PROJECT_ID/

    2. Buat daftar objek di bucket Anda:

      gcloud storage ls gs://message-payload-PROJECT_ID/** --recursive

      Outputnya akan mirip dengan berikut ini:

      gs://message-payload-PROJECT_ID/OBJECT_ID.data.json

      Catat OBJECT_ID yang akan digunakan di langkah berikutnya.

    3. Download objek di bucket Anda sebagai file:

      gcloud storage cp gs://message-payload-PROJECT_ID/OBJECT_ID.data.json message-event.txt

      Ganti OBJECT_ID dengan ID yang ditampilkan di langkah sebelumnya.

    4. Di editor teks, buka file message-event.txt. Isi peristiwa yang ditulis ke file harus mirip dengan berikut ini:

      {
        "message": {
          "data": "SGVsbG8gV29ybGQ=",
          "messageId": "8254002311197919",
          "publishTime": "2023-09-20T16:54:29.312Z"
        },
        "subscription": "projects/MY_PROJECT/subscriptions/eventarc-us-central1-message-payload-trigger-sub-741"
      }
      

      Perhatikan bahwa jika Anda mendekode nilai data SGVsbG8gV29ybGQ= dari format Base64-nya, "Hello World" akan ditampilkan.

Pembersihan

Jika Anda membuat project baru untuk tutorial ini, hapus project tersebut. Jika Anda menggunakan project yang ada dan ingin mempertahankannya tanpa perubahan yang ditambahkan dalam tutorial ini, hapus resource yang dibuat untuk tutorial.

Menghapus project

Cara termudah untuk menghilangkan penagihan adalah dengan menghapus project yang Anda buat untuk tutorial.

Untuk menghapus project:

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Menghapus resource tutorial

Hapus resource yang Anda buat dalam tutorial ini:

  1. Hapus topik Pub/Sub.

  2. Hapus pemicu Eventarc.

  3. Hapus alur kerja Alur Kerja.

  4. Hapus tugas Cloud Run.

  5. Hapus bucket Cloud Storage.

Langkah selanjutnya