使用 API Gateway 控制台设置阶段 - Amazon API Gateway
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 API Gateway 控制台设置阶段

创建新阶段

初始部署后,您可以添加更多阶段,并将它们与现有部署进行关联。在部署 API 时,您可以使用 API Gateway 控制台来创建新阶段或选择现有阶段。一般来说,重新部署 API 之前,您可以向 API 部署中添加新阶段。要使用 API Gateway 控制台创建新阶段,请按照下列步骤操作:

  1. 通过以下网址登录到 Amazon API Gateway 控制台:https://console.aws.amazon.com/apigateway

  2. 选择一个 REST API。

  3. 在主导航窗格中,选择某个 API 下的阶段

  4. 阶段导航窗格中,选择创建阶段

  5. 对于阶段名称,请输入名称,例如 prod

    注意

    阶段名称只能包含字母数字字符、连字符和下划线。最大长度为 128 个字符。

  6. (可选)。对于描述,请输入阶段描述。

  7. 部署中,选择要与此阶段关联的现有 API 部署的日期和时间。

  8. 其它设置下,您可以为阶段指定其它设置。

  9. 选择创建阶段

更新阶段设置

成功部署 API 后,系统将使用默认设置填充阶段。您可以使用控制台或 API Gateway REST API 更改阶段设置,包括 API 缓存和日志记录。以下步骤说明如何使用 API Gateway 控制台的阶段编辑器来执行这一操作。

使用 API Gateway 控制台更新阶段设置

这些步骤假设您已将 API 部署到阶段。

  1. 通过以下网址登录到 Amazon API Gateway 控制台:https://console.aws.amazon.com/apigateway

  2. 选择一个 REST API。

  3. 在主导航窗格中,选择某个 API 下的阶段

  4. Stages (阶段) 窗格中,选择该阶段的名称。

  5. 阶段详细信息部分中,选择编辑

  6. (可选)对于阶段描述,输入描述。

  7. 对于其他设置,修改以下设置:

    缓存设置

    要为舞台启用 API 缓存,请打开 Provision API 缓存。然后配置默认方法级缓存、缓存容量、加密缓存数据、缓存 time-to-live (TTL) 以及每密钥缓存失效的任何要求。

    在为特定方法开启默认方法级缓存或打开方法级缓存之前,缓存才会处于活动状态。

    有关缓存设置的更多信息,请参阅 启用 API 缓存以增强响应能力

    注意

    如果您为 API 阶段启用 API 缓存,则可能会向您的 Amazon 账户收取 API 缓存费用。缓存不符合 Amazon 免费套餐的资格。

    节流设置

    要为与该 API 相关联的所有方法设置阶段级别节流目标,请开启节流

    针对 Rate(比率)部分,请输入目标率。这是将令牌添加到令牌桶的频率,以每秒请求数计。阶段级别频率不得超过用于配置和运行 REST API 的 API Gateway 配额中规定的账户级别频率。

    针对 Burst(突增)部分,请输入目标突增率。突增频率是令牌桶的容量。这允许在一段时间内通过比目标速率更多的请求。该阶段级别突增率不得超过在 用于配置和运行 REST API 的 API Gateway 配额 中指定的账户级别突增比率。

    注意

    节流费率不是硬限制,应基于最佳效果来应用。在某些情况下,客户端可能会超过您设置的目标。不要依靠使用节流来控制成本或阻止对 API 的访问。考虑使用 Amazon Budgets 监控成本和 Amazon WAF 来管理 API 请求。

    防火墙和证书设置

    要将 Amazon WAF Web ACL 与舞台关联,请从 Web ACL 下拉列表中选择一个 Web ACL。如果需要,请选择 Block API Request if WebACL cannot be evaluated (Fail- Close) (如果无法评估 WebACL,则阻止 API 请求 (失败 - 关闭))

    要为您的阶段选择客户端证书,请从客户端证书下拉菜单中选择证书。

  8. 选择保存

  9. 要为与此 API Gateway API 的此阶段关联的所有方法启用 Amazon 日 CloudWatch 志,请在日志和跟踪部分中,选择编辑

    注意

    要启用 CloudWatch 日志,您还必须指定 IAM 角色的 ARN,该角色允许 API Gateway 代表您的用户将信息写入 CloudWatch 日志。为此,请从 APIs 主导航窗格中选择设置。然后,对于CloudWatch 日志角色,输入 IAM 角色的 ARN。

    对于常见的应用程序场景,IAM 角色可以附加 AmazonAPIGatewayPushToCloudWatchLogs 的托管策略,其中包括以下访问策略语句:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:PutLogEvents", "logs:GetLogEvents", "logs:FilterLogEvents" ], "Resource": "*" } ] }

    IAM 角色还必须包含以下信任关系语句:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "apigateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    有关的更多信息 CloudWatch,请参阅 Amazon CloudWatch 用户指南

  10. 对于日志级别,从以下选项中进行选择:

    • 要仅将错误级别的条目写入 CloudWatch 日志,请选择仅限错误

    • 要仅将错误级别的条目写入 CloudWatch 日志,或者选择错误和信息日志以包含所有错误事件以及其他信息事件。

    • 要记录完整的 API 调用请求和响应信息,请选择完整的请求和响应日志。除非已选择完整的请求和响应日志选项,否则系统不会记录任何敏感数据。

  11. 要让 API Gateway 向API calls、、LatencyIntegration latency400 errors、和 API 指标报告500 errors,请选择详细指标。 CloudWatch 有关的更多信息 CloudWatch,请参阅 Amazon CloudWatch 用户指南

    重要

    您的账户需要为访问方法级指标付费,但不收取 API 级别或阶段级 CloudWatch 指标的费用。

  12. 要启用对目标的访问日志记录,请打开自定义访问日志记录

  13. 访问日志目标 ARN 中,输入日志组或 Firehose 流的 ARN。

    Firehose 的 ARN 格式是。arn:aws:firehose:{region}:{account-id}:deliverystream/amazon-apigateway-{your-stream-name}你的 Firehose 直播的名称必须是。amazon-apigateway-{your-stream-name}

  14. 日志格式中,输入日志格式。要了解有关示例日志格式的更多信息,请参阅用于 API Gateway 的 CloudWatch 日志格式

  15. 要为 API 阶段启用 Amazon X-Ray 跟踪,请选择 X-Ray 跟踪。有关更多信息,请参阅使用 X-Ray 跟踪用户对 REST API 的请求

  16. 选择保存更改。重新部署 API 以使新设置生效。

覆盖阶段级别的设置

您可以覆盖以下已启用的阶段级别设置。其中一些选项可能会给您带来额外费用 Amazon Web Services 账户。

使用 API Gateway 控制台覆盖阶段级别设置

使用 API Gateway 控制台覆盖阶段级别设置
  1. 要配置方法覆盖,请在二级导航窗格下展开阶段,然后选择一种方法。

  2. 对于方法覆盖,选择编辑

  3. 要开启方法级别的 CloudWatch 设置,请为CloudWatch 日志选择一个日志级别。

  4. 要开启方法级别详细指标,请选择详细指标。您的账户需要为访问方法级指标付费,但不收取 API 级别或阶段级 CloudWatch 指标的费用。

  5. 要开启方法级别的节流,请选择节流。输入适合的方法级别选项。要了解有关节流的更多信息,请参阅 限制 API 请求以获得更高的吞吐量

  6. 要配置方法级缓存,请选择启用方法缓存。如果您在舞台详细信息中更改默认的方法级缓存设置,则不会影响此设置。

  7. 选择保存

删除阶段

当您不再需要某个阶段时,可以将其删除,以免为未使用的资源付费。以下步骤介绍如何使用 API Gateway 控制台删除阶段。

警告

删除阶段可能会导致 API 调用方无法使用部分或全部相应的 API。删除阶段无法撤销,但您可以重新创建阶段并将其与相同的部署相关联。

使用 API Gateway 控制台删除阶段

  1. 通过以下网址登录到 Amazon API Gateway 控制台:https://console.aws.amazon.com/apigateway

  2. 选择一个 REST API。

  3. 在主导航窗格中,选择阶段

  4. 阶段窗格中,选择您要删除的阶段,然后依次选择阶段操作删除阶段

  5. 当系统提示您时,输入 confirm,然后选择删除