了解连接器

工作流发布连接器,以更轻松地访问工作流中的其他 Google Cloud 产品。有关可用连接器的详细参考,请参阅连接器参考

连接器可用于连接到工作流内的其他 Google Cloud API,以及将工作流与这些 Google Cloud 产品集成。例如,您可以使用连接器发布 Pub/Sub 消息、在 Firestore 数据库中读取或写入数据,或从 Secret Manager 检索身份验证密钥。了解如何使用连接器

连接器会为您处理请求的格式,从而为您处理请求的格式设置并提供方法和参数,这样您就无需了解 Google Cloud API 的详细信息。

连接器的内置行为用于处理重试长时间运行的操作

身份验证

连接器使用内置的身份和访问权限管理身份验证与其他 Google Cloud 产品进行交互。请注意,使用连接器的工作流仍需要为其服务账号分配适当的权限,以便向给定 API 正确进行身份验证。例如,如需向 Pub/Sub 发布消息,您需要授予与工作流关联的服务账号 roles/pubsub.publisher 角色。如需详细了解如何向其他 Google Cloud 产品进行身份验证,请参阅向工作流授予访问 Google Cloud 资源的权限

重试

所有连接器都会应用以下重试政策和错误处理配置:

  • Workflows 为 GET 请求使用幂等重试政策

  • 对于所有其他 HTTP 方法,Workflows 使用非幂等重试政策

  • 默认情况下,请求会在 30 分钟后超时。请注意,如果是长时间运行的操作,则适用于长时间运行的操作中的单个请求(例如,启动操作或检查其状态)。您可以使用 connector_params 字段配置整个操作的超时。请参阅连接器参考文档

长时间运行的操作

对于执行长时间运行的操作的调用,适用以下行为:

  • 工作流将阻止工作流执行,直到操作成功完成或失败为止。

  • 默认情况下,调用会在 30 分钟后超时。您可以使用 connector_params 字段更改调用的超时(最长为 1 年)。请参阅连接器参考文档

  • 连接器会定期轮询长时间运行的操作。默认情况下,在轮询时,Workflows 使用 1.25 的指数退避算法,从 1 秒开始,并在轮询之间减慢到 60 秒。每次轮询尝试均算作一个收费步骤。您可以使用 connector_params 字段更改轮询参数。请参阅连接器参考文档

  • 上述重试机制适用于失败的轮询尝试。

  • 系统会检查轮询响应,如果响应载荷无效,则会返回 ResponseTypeError 错误。

  • 长时间运行的操作发生错误时,Workflows 会引发 OperationError 错误。此错误包含一个额外属性 error,该属性包含操作特定的详细信息。

如果长时间运行的操作失败,则连接器调用会抛出具有以下特性的异常:

  • message:人类可读的错误消息
  • tags:标记列表。对于长时间运行的操作连接器调用,该列表会包含 OperationError
  • operation:失败的长时间运行的操作对象。

如需查看受支持的长时间运行的操作类型的详细列表,请参阅连接器参考文档

后续步骤