如何使用 SAW 运行手册解决 API Gateway HTTP 调用错误?

1 分钟阅读
0

我想使用 AWSSupport-TroubleshootAPIGatewayHttpErrors AWS Support 自动化工作流程 (SAW) 运行手册来解决 Amazon API Gateway 错误。

简短描述

AWSSupport-TroubleshootAPIGatewayHttpErrors 运行手册提供了一种自动化解决方案来查找和解决 API Gateway HTTP 请求引起的错误。如果您的 API 配置为记录所有资源和方法请求,您可以使用此运行手册来解决 4xx 和 5xx 错误。

有关如何设置日志记录的更多信息,请参阅在 API Gateway 中为 REST API 设置 CloudWatch 日志记录

有关 SAW 的详细信息,请参阅 AWS Support 自动化工作流程 (SAW)

解决方法

AWSSupport-TroubleshootAPIGatewayHttpErrors 运行手册会在尝试检索和分析 Amazon CloudWatch Logs 之前验证 API、资源、方法和阶段。

运行该自动化任务的当前用户或代入的 AWS Identity and Access Management (IAM) 服务角色必须具有以下权限:

  • apigateway:GET
  • logs:GetQueryResults
  • logs:StartQuery
  • ssm:DescribeAutomationExecutions
  • ssm:GetAutomationExecution
  • ssm:DescribeAutomationStepExecutions
  • ssm:StartAutomationExecution
  • ssm:DescribeDocument
  • ssm:GetDocument
  • ssm:ListDocuments

先决条件

在运行运行手册之前,请确保您的 IAM 用户或角色具有相应权限。这些权限包括特定的 AWS Systems Manager 权限以及上文中介绍的其他特定于服务的权限。

运行 AWSSupport-TroubleshootAPIGatewayHttpErrors 自动化

  1. 打开 AWSSupport-TroubleshootAPIGatewayHttpErrors 运行手册。
    **注意:**该运行手册位于 us-east-1 AWS 区域。

  2. 选择执行自动化

    对于输入参数,请输入以下内容:

    • **RestApiId(必填):**需要排查问题的 API 的 API ID。
    • **StageName(必填):**已部署阶段的名称。
    • **ResourcePath(必填):**该方法的资源路径。
    • **HttpMethod(必填):**已配置的资源路径的方法。
    • **StartTime(必填):**查询 CloudWatch Logs 的开始日期和时间。格式必须是 yyyy-MM-ddTHH:mm:ss,时区必须为 UTC。
    • **EndTime(必填):**查询 CloudWatch Logs 的结束日期和时间。格式必须是 yyyy-MM-ddTHH:mm:ss,时区必须为 UTC。
    • **AccessLogs(必填):**提供有关是否已分析访问日志的信息。
    • **ExecutionId(选填):**请求出错时对应的执行 ID。
    • **AutomationAssumeRole(选填):**IAM 角色的 Amazon 资源名称(ARN),允许 Automation(Systems Manager 的一项功能)代表您执行操作。如果未指定角色,则 Automation 将使用启动运行手册的用户的权限。
  3. 选择执行。自动化启动。

  4. 自动化完成后,请查看输出部分以获取详细结果。

**注意:**即使未找到任何日志,运行手册也能成功完成。