IBM Cloud Docs
收集失败事件

收集失败事件

作为 Event Notifications中的集成的一部分,您可以启用收集失败事件并执行相应的操作。

收集失败事件可帮助您确定哪些消息已失败,并可执行补救操作。

当消息未能传递设定次数时,失败的消息将在 IBM Cloud Object Storage 存储区中结束。 您可以标识该失败消息所属的预订或主题,并在需要时采取进一步的操作。

目标中启用收集失败事件之前,请确保在与 Event Notifications 实例相同的帐户中创建并配置了 IBM Cloud Object Storage 实例

如果要使用 Event Notifications CLI 或 API 来配置 IBM Cloud Object Storage 服务实例,请确保在与 IBM Cloud Object Storage集成之前已启用授权以授予服务之间的访问权。 有关更多信息,请参阅使用授权来授予服务之间的访问权

如果要根据 IP 地址执行访问限制,建议使用基于上下文的限制,而不是传统的桶式防火墙。 有关详细信息,请参阅Object Storage文档中的 通过网络上下文限制访问。 如果您的设置必须继续使用传统防火墙,请使用 支持中心创建一个支持案例,以获得有关 IP 范围信息的帮助。

要配置和收集失败事件,请执行以下步骤:

  1. 在 Event Notifications 实例仪表板中,单击 集成。 缺省情况下,将显示“密钥管理”和“收集失败事件”磁贴。

  2. 单击 收集失败事件 磁贴中的 连接。 将显示 收集失败事件 侧面板。

  3. 实例名称-如果已有 IBM Cloud Object Storage 实例,请从列表中选择 IBM Cloud Object Storage 实例名称。 否则,单击 创建新实例 链接以创建 IBM Cloud Object Storage 实例。

    选择 IBM Cloud Object Storage 实例时,如果服务之间的授权不存在,那么将在两个服务实例之间内部创建服务之间的授权。

  4. 存储区名称-输入要用于存储失败事件的存储区名称。

    您可以从 IBM Cloud Object Storage 实例获取存储区名称。 有关更多信息,请参阅 存储区名称

    Event Notifications 用于在 IBM Cloud Object Storage 存储区中存储对象的模式 (是目标名称和通知标识的组合) 类似于以下示例:

    Rhonda Macejkovic/013f87bc-0537-4dad-8511-8cb054890ffc.json,

    其中 Rhonda Macejkovic 是目标名称,013f87bc-0537-4dad-8511-8cb054890ffc 是通知标识。.json 是有效内容格式。

  5. 端点- 输入 IBM Cloud Object Storage 端点 URL。 有关更多信息,请参阅 端点 URL

  6. 单击保存

  7. 在 Event Notifications 实例仪表板中,单击 目标

  8. 单击要为其收集失败事件的目标的 收集失败事件 列下的切换开关以切换到 ON 状态。 将显示一条成功消息,用于打开以收集所选目标的失败事件。

收集失败事件的可用目的地列表

以下目的地可以收集失败事件:

配置并启用目标的失败事件收集后,会将失败事件添加到 IBM Cloud Object Storage 存储区。 您可以根据需求对失败事件执行进一步操作。

如果从 集成 > 收集失败事件 溢出菜单选项断开 收集失败事件 的连接,那么所有启用了收集失败事件的目标都将切换为 OFF 状态。

使用授权来授予服务之间的访问权

使用 IBM Cloud® Identity and Access Management (IAM) 可创建或除去授权,授权用于授予一个服务对另一个服务的访问权。

在控制台中创建授权

  1. 在 IBM Cloud 控制台中,单击 管理 > 访问权 (IAM),然后选择 授权

  2. 单击创建

  3. 选择源帐户。

    • 如果需要访问目标服务的源服务位于此帐户中,请选择 此帐户
  4. 选择 源服务 作为 Event Notifications

  5. 指定是希望根据所选属性对所有资源或资源进行授权。 如果根据所选属性选择了资源,请指定 添加属性: 仅源资源组或仅源服务实例。

  6. 选择 目标服务 作为 IBM Cloud Object Storage

  7. 对于目标服务,指定是希望授权所有实例,仅授权帐户中的特定实例,还是仅授权特定资源组中的实例。

  8. 选择两个角色 ("读者" 和 "对象写程序") 以分配对访问目标服务的源服务的访问权。

    如果在服务对服务授权期间只选择了这两种角色之一(读取器或对象写入器),则无法从 IBM Cloud Object Storage 存储桶中写入或读取。 在这些情况下,您将收到服务到服务授权失败的错误。 确保在具有两个所选角色的服务之间重新创建授权。

  9. 单击授权

使用 CLI 创建授权

要授权源服务访问目标服务,请运行 ibmcloud iam authorization-policy-create 命令。

有关可用于此命令的所有参数的更多信息,请参阅 ibmcloud iam authorization-policy-create

如何在 IBM Cloud Object Storage 服务实例中查找存储区名称?

  1. 登录 IBM Cloud 账户。

  2. 浏览至菜单中的 资源列表

  3. 浏览至“资源”列表中的 存储器

  4. 单击将显示 IBM Cloud Object Storage 控制台的 IBM Cloud Object Storage 名称。

  5. 在 IBM Cloud Object Storage 控制台中,浏览到 存储区

  6. 选择并复制所需的存储区名称。 在“收集失败事件”屏幕中使用此复制的存储区名称。

如何查找 IBM Cloud Object Storage 服务实例的端点 URL?

端点与凭证(存储区名称、API 密钥、SDK)配合使用,告知服务在何处可找到存储区。

private IBM Cloud Object Storage 端点将不支持新的集成,因为 Event Notifications 现在使用 VPC 网络。 建议在创建新集成时使用 direct IBM Cloud Object Storage 端点。 通过 private 端点进行的现有集成将继续运行。

  1. 登录 IBM Cloud 账户。

  2. 浏览至菜单中的 资源列表

  3. 浏览至“资源”列表中的 存储器

  4. 单击将显示 IBM Cloud Object Storage 控制台的 IBM Cloud Object Storage 名称。

  5. 在 IBM Cloud Object Storage 控制台中,浏览到菜单中的 存储区

  6. 单击所需的 存储区名称 以查看 存储区配置 详细信息。

  7. 浏览至 端点 部分,并根据需要复制公共或专用端点。