【发布时间】:2021-02-17 04:04:27
【问题描述】:
Google 最近发布了新的 Eventarc API 触发器,例如 Cloud run。 我的想法是为我的云存储构建一个触发器,例如: 桶中的新文件→触发云运行(带有审计日志触发器)
cloud_run_path: ...run.app/api/v1/data-fetcher bucket_id: 测试桶
我刚刚使用以下命令创建了触发器,并且成功了:
gcloud beta eventarc triggers create test-event-trigger \
--location=europe-west1 \
--destination-run-service=test-event-data-fetcher \
--destination-run-path=/api/v1/data-fetcher \
--destination-run-region=europe-west1 \
--matching-criteria="type=google.cloud.audit.log.v1.written" \
--matching-criteria="serviceName=storage.googleapis.com" \
--matching-criteria="methodName=storage.objects.create" \
--matching-criteria="resourceName=projects/_/buckets/test-bucket" \
--service-account=$PROJECT_NR-compute@developer.gserviceaccount.com
问题是,我不希望触发器在项目的所有存储桶中查找新文件,而只是针对一个特定的存储桶(例如测试存储桶)。我现在用不同的文字测试了几个选项(使用 :, =~, ...),但触发器不接受这些。 也许您可以帮助我解决语法或向我展示如何为我的项目中的一个特定存储桶创建触发器?像这样它不起作用...
【问题讨论】:
-
你能检查一下你是否没有配置其他触发器吗?
-
你的意思是,他们可能会以某种方式相互阻止?我只是在这个项目中运行了一个 cloudbuild 触发器
-
没有 Cloud Build 触发器,一个事件触发器。这个命令
gcloud beta eventarc triggers list --location=europe-west1的响应是什么? -
它只是我在上面创建的一个,状态处于活动状态。
-
你的配置收到了什么?
标签: google-cloud-platform sdk google-cloud-storage google-cloud-run event-arc