选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

步骤 4:模拟问题并重播事件以进行恢复

聚焦模式
步骤 4:模拟问题并重播事件以进行恢复 - Amazon Simple Notification Service

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

步骤 1:启用模拟的问题并发送第二个 API 请求

  1. 登录 AWS Lambda 控制台

  2. 在导航面板上,选择 Functions (函数)

  3. 搜索 serverlessrepo-fork-example 并选择 CheckoutFunction

  4. fork-example-ecommerce-my-app-CheckoutFunction-ABCDEF... 页面的环境变量部分中,将 BUG_ ENABLED 变量设置为 true,然后选择保存。

  5. 将以下 JSON 复制到名为 test_event_2.json 的文件中。

    { "id": 9917, "date": "2019-03-26T21:11:10-08:00", "status": "confirmed", "customer": { "id": 56999, "quantity": 1, "price": 75.00, "subtotal": 75.00 }] }
  6. 要将 HTTPS 请求发送到您的 API 端点,请通过执行 curl 命令来将示例事件负载作为输入传递,例如:

    curl -d "$(cat test_event_2.json)" https://abcdefghij.execute-api.us-east-2.amazonaws.com/Prod/checkout

    API 将返回以下空响应,并指示已成功执行:

    { }

步骤 2:验证模拟数据损坏

  1. 登录 Amazon DynamoDB 控制台

  2. 在导航面板上,选择

  3. 搜索 serverlessrepo-fork-example 并选择 CheckoutTable

  4. 在表详细信息页面上,选择项目,然后选择已创建的项目。

    将显示存储的属性,其中一些标记为 CORRUPTED! (已损坏!)

步骤 3:禁用模拟的问题

  1. 登录 AWS Lambda 控制台

  2. 在导航面板上,选择 Functions (函数)

  3. 搜索 serverlessrepo-fork-example 并选择 CheckoutFunction

  4. fork-example-ecommerce-my-app-CheckoutFunction-ABCDEF... 页面的环境变量部分中,将 BUG_ ENABLED 变量设置为 false,然后选择保存。

步骤 4:启用重播以从问题中恢复

  1. 在 AWS Lambda 控制台的导航面板上,选择功能

  2. 搜索 serverlessrepo-fork-example 并选择 ReplayFunction

  3. 展开 Designer 部分,选择 SQS 磁贴,然后在 SQS 部分中,选择 Enabled (启用)

    注意

    启用 Amazon SQS 事件源触发器大约需要 1 分钟。

  4. 选择保存

  5. 要查看已恢复的属性,请返回到 Amazon DynamoDB 控制台。

  6. 要禁用重播,请返回 AWS Lambda 控制台并禁用 Amazon SQS 事件源触发器。ReplayFunction

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。