管理触发器

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

Eventarc 提供了各种使用 Google Cloud Console 或 Google Cloud CLI 来管理触发器的方法。

删除触发器

您可以删除触发器。

控制台

  1. 在控制台中,转到 Eventarc 触发器页面。

    转到 Eventarc
  2. 选择触发器,然后点击 删除

gcloud

gcloud eventarc triggers delete TRIGGER

TRIGGER 替换为触发器的 ID 或完全限定的标识符。

列出触发器

您可以列出所有位置的触发器,并进行过滤和排序。

控制台

  • 要列出所有触发器,请在控制台中转到 Eventarc 触发器页面。

    转到 Eventarc

    此命令会列出所有位置的触发器名称、区域、事件提供程序、目标信息和类型。

  • 要按名称、区域或创建日期过滤触发器,请执行以下操作:
    1. 点击 过滤条件文本框。
    2. 属性列表中,选择一个选项以过滤触发器。

    您可以选择单个属性,或使用逻辑运算符 OR 添加更多属性和过滤条件。

  • 要按名称、区域或创建日期对触发器进行排序,请点击 NameRegionCreated 旁边的 排序

gcloud

gcloud eventarc triggers list --location=-

此命令列出所有位置的触发器名称、类型、目标位置和状态。

描述触发器

您可以描述特定位置中的触发器。

控制台

  1. 在控制台中,转到 Eventarc 触发器页面。

    转到 Eventarc
  2. 在触发器列表中,点击要详细了解的触发器。

触发器详情页面会显示触发器的详细信息,例如名称、事件提供程序、条件和触发器目标位置。

gcloud

gcloud eventarc triggers describe TRIGGER \
--location=LOCATION

替换以下内容:

  • TRIGGER:触发器的 ID 或完全限定标识符。
  • LOCATION:Eventarc 触发器的位置。

此命令将返回有关触发器的以下信息:

  • 触发器的创建时间
  • 触发器目标的详细信息
  • 匹配条件,例如事件过滤条件
  • 触发器名称
  • 触发器的条件
  • 与触发器关联的服务帐号电子邮件
  • 传输层的详细信息,例如 Pub/Sub 订阅和主题名称。
如果触发器的条件指示 Pub/Sub 主题存在问题,请参阅触发器未传送事件

更新触发器

您可以更新 Cloud Run、Google Kubernetes Engine (GKE) 和 Workflows 目标的触发器。

控制台

  1. 在控制台中,转到 Eventarc 触发器页面。

    转到 Eventarc
  2. 在触发器列表中,点击要详细了解的触发器。
  3. 触发器详情页面上,点击 修改
  4. 根据需要修改字段,然后点击保存

    请注意,您无法更新事件提供程序事件Cloud Pub/Sub 主题存储桶区域事件目的地字段。如需详细了解这些字段,请参阅使用 Google Cloud 控制台创建触发器

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

替换以下内容:

  • TRIGGER:触发器的 ID 或完全限定标识符。
  • LOCATION:Eventarc 触发器的位置。

您可以更新以下任意一项:

  • NEW_EVENT_FILTERS:用于配置触发器的事件路由的过滤条件;例如 type=google.cloud.pubsub.topic.v1.messagePublished
  • NEW_SERVICE_ACCOUNT:与触发器关联的 Identity and Access Management (IAM) 服务帐号电子邮件地址。
  • NEW_REGION:目标 Cloud Run 服务所在的区域。
  • NEW_SERVICE:为触发器接收事件的 Cloud Run 服务的名称。
  • NEW_PATH:应向其发送触发器事件的目标 Cloud Run 服务的相对路径。

例如,如需使用新服务帐号更新触发器,请运行以下命令:

gcloud eventarc triggers update cal-events-trigger \
  --service-account=new-serviceaccount@${PROJECT_ID}.iam.gserviceaccount.com

此命令使用服务帐号 new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com 更新名为 cal-events-trigger 的触发器。

Kubernetes Engine

请注意,本部分也适用于 Cloud Run for Anthos 目标。

gcloud eventarc triggers update TRIGGER \
  --location=LOCATION \
  --destination-gke-namespace=NEW_NAMESPACE \
  --destination-gke-service=NEW_SERVICE \
  --destination-gke-path=NEW_PATH

替换以下内容:

  • TRIGGER:触发器的 ID 或完全限定标识符。
  • LOCATION:Eventarc 触发器的位置。

您可以更新以下任意一项:

  • NEW_NAMESPACE:目标 GKE 服务在其中运行的命名空间。
  • NEW_SERVICE:接收触发器的事件的 GKE 服务名称。
  • NEW_PATH:触发器的事件应该发送到的目标 GKE 服务的相对路径。

例如,如需使用新服务更新触发器,请运行以下命令:

gcloud eventarc triggers update cal-events-trigger \
  --destination-gke-service=helloworld-events

此命令会使用名为 helloworld-events 的新 GKE 服务更新名为 cal-events-trigger 的触发器,该服务接收该触发器的事件。

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

替换以下内容:

  • TRIGGER:触发器的 ID 或完全限定标识符。
  • LOCATION:Eventarc 触发器的位置。

您可以更新以下任意一项:

  • NEW_EVENT_FILTERS:用于配置触发器的事件路由的过滤条件;例如 type=google.cloud.pubsub.topic.v1.messagePublished
  • NEW_SERVICE_ACCOUNT:与触发器关联的 Identity and Access Management (IAM) 服务帐号电子邮件地址。
  • NEW_DESTINATION_WORKFLOW:从触发器接收事件的已部署工作流的 ID。
  • NEW_DESTINATION_WORKFLOW_LOCATION:目标工作流的部署位置。

例如,如需使用新服务帐号更新触发器,请运行以下命令:

gcloud eventarc triggers update cal-workflows-trigger \
  --service-account="${TRIGGER_SA}@${PROJECT_ID}.iam.gserviceaccount.com"

此命令使用服务帐号 new-serviceaccount@PROJECT_ID.iam.gserviceaccount.com 更新名为 cal-workflows-trigger 的触发器。