事件路由

您可以通过为 Eventarc 触发器配置过滤条件来将事件路由到目标位置。触发器配置因事件类型而异。您选择的事件路由还取决于事件类型。

事件类型

  • 来自集成的 Google 提供方的直接事件 - Eventarc 可以路由直接事件,例如 Cloud Storage 存储桶中的对象更新或 Firebase Remote Config 模板更新。请参阅支持的直接事件列表。

  • Cloud Audit Logs 和 Eventarc - 当与 Eventarc 触发器的过滤条件匹配的审核日志生成时,事件会被路由,以便您捕获特定事件并作出反应。请参阅支持的审核日志事件列表。

  • Pub/Sub 和 Eventarc - 消息被发布到由 Eventarc 触发器的过滤条件 ("type=google.cloud.pubsub.topic.v1.messagePublished") 指定的 Pub/Sub 主题时,事件会被路由。您可以将 Eventarc 与任何可以使用 Pub/Sub 发布消息的服务集成。

  • 直接 Pub/Sub 推送 - 您可以使用 Pub/Sub(而不是 Eventarc)将消息直接推送到您的服务。这适用于具有直接 Pub/Sub 集成的应用或服务。如需了解详情,请参阅通过 Pub/Sub 推送触发

选择事件路由

如需确定将事件路由到目的地的最佳方式,请先思考以下问题:

  1. Eventarc 是否支持您要路由的事件的直接事件?如果支持,请创建一个 Eventarc 触发器来路由该直接事件。如果不支持,请考虑下一个问题 (#2)。

    对于要路由的事件,如果同时支持直接日志和审核日志选项,我们建议您创建触发器来路由直接事件。与审核日志事件相比,直接事件具有以下优势:

    • 提高了触发器响应速度,缩短了事件传送延迟时间
    • 强类型事件格式,更易于预测和检测
    • 支持对集合 ID(资源名称组件)进行过滤
    • 启用 Cloud Audit Logs 不会产生额外费用
  2. 您的 Google 服务或应用是否支持 Cloud Audit Logs 和/或 Pub/Sub?

  3. 如果 Cloud Audit Logs 和 Pub/Sub 均受支持,哪个能够提供所需的信息?例如,Cloud Build 可以生成审核日志和 Pub/Sub 消息;但是,Pub/Sub 可以提供构建状态通知(成功或失败),而 Cloud Build 审核日志可以提供有关构建创建和删除操作的信息。在某些情况下,审核日志和 Pub/Sub 消息的内容和延迟时间影响是类似的,您可以任选其一。然后,您应考虑下一个问题 (#4)。

  4. 如果使用 Pub/Sub,通过 Eventarc 和通用 CloudEvents 格式接收事件有什么优势?例如,是否有多个事件来源?虽然您可能更熟悉直接推送 Pub/Sub 消息,但您可能需要标准传送机制和格式的效率和便利性。

后续步骤