設定API閘道RESTAPI中的階段 - Amazon API 网关

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定API閘道RESTAPI中的階段

階段是部署的具名參考,也就是API. 您使用階段來管理和最佳化特定部署。例如,您可以設定階段設定來啟用快取、自訂請求調節、設定記錄、定義階段變數,或連線 Canary 版本以進行測試。以下部分說明如何建立和設定您的階段。

建立新的階段

初次部署之後,您可以新增更多階段並與現有的部署相關聯。您可以使用API閘道主控台來建立新階段,也可以在部署API. 一般而言,您可以在重新API部署之前將新階段新增至部署。API若要使用API閘道主控台建立新階段,請依照下列步驟執行:

  1. 請在 https://console.aws.amazon.com/apigateway 登入API閘道主控台。

  2. 選擇一個RESTAPI。

  3. 在主導覽窗格中,選擇「階段」下的API。

  4. 階段導覽窗格選擇建立

  5. 階段名稱中輸入名稱,例如 prod

    注意

    階段名稱僅可含有英數字元、連字號與底線。長度上限為 128 字元。

  6. (選用)。在描述中,輸入階段描述。

  7. 對於「部署」,請選取您要與此階段產生關聯的現有API部署日期和時間。

  8. 其他設定下,您可以指定階段的其他設定。

  9. 選擇建立階段

修改階段設定

成功部署之後API,階段會填入預設設定。您可以使用主控台或API閘道RESTAPI來變更階段設定,包括API快取和記錄。下列步驟說明如何使用API閘道主控台的 Stage 編輯器來執行此作業。

  1. 請在 https://console.aws.amazon.com/apigateway 登入API閘道主控台。

  2. 選擇一個RESTAPI。

  3. 在主導覽窗格中,選擇「階段」下的API。

  4. Stages (階段) 窗格中,選擇階段的名稱。

  5. 階段詳細資訊區段中,選擇編輯

  6. (選用) 針對階段描述,編輯描述。

  7. 針對其他設定,請修改下列設定:

    快取設定

    若要啟用階段的API快取,請開啟佈建API快取。然後配置默認方法級緩存,緩存容量加密緩存數據緩存 time-to-live (TTL),以及每個密鑰緩存失效的任何要求。

    除非您開啟預設的方法層級快取或針對特定方法開啟方法層級快取,快取才會處於作用中狀態。

    如需快取設定的詳細資訊,請參閱 API閘道RESTAPIs中的快取設定

    注意

    如果您為某個API階段啟用API快取,您的 AWS 帳戶可能需要支付API快取費用。快取不符合 AWS 免費方案的資格。

    限流設定

    若要為與此相關聯的所有方法設定階段層級節流目標API,請開啟節流。

    Rate (速率) 欄位,輸入目標速率。這是會將字符新增到字符儲存貯體的速率 (以每秒請求數計)。階段層級速率不得超過 API設定和執行的閘道配額 REST API 所指定的帳戶層級速率。

    Burst (爆量) 欄位,輸入目標爆量率。暴量率是字符儲存貯體的容量。這可允許請求量在一段期間內超過目標速率。此階段層級爆量率不得超過 API設定和執行的閘道配額 REST API 所指定的帳戶層級爆量率。

    注意

    調節率並非硬性限制,會依最佳作法來套用。在某些情況下,用戶端可能超出設定的目標。請勿依賴節流來控制成本或封鎖. API 考慮使用AWS Budgets來監控成本和AWS WAF管理API請求。

    防火牆和憑證設定

    若要建立 AWS WAF 網頁ACL與舞台的關聯,請ACL從「Web」ACL 下拉式清單中選取頁。如果需要,API請選擇「如果ACL無法評估 Web」(失敗-關閉),請選擇「封鎖要求」。

    若要為您的階段選取用戶端憑證,請從用戶端憑證下拉式選單中選取憑證。

  8. 選擇儲存

  9. 若要為與此API閘道此階段相關聯的所有方法啟用 Amazon Lo CloudWatch gsAPI,請在「記錄和追蹤」區段中選擇編輯

    注意

    若要啟用 CloudWatch 記錄檔,您還必須指定讓 API Gateway 代表您ARN的使用者將資訊寫入 CloudWatch 記錄檔的IAM角色。為此,請從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 檔] 下拉式功能表中選取記錄層級。記錄層級如下:

    • 關閉 — 此階段未開啟記錄功能。

    • 僅限錯誤 — 僅針對錯誤啟用記錄功能。

    • 錯誤和資訊記錄 — 已啟用所有事件的記錄功能。

    • 完整的請求和回應記錄 — 已啟用所有事件的詳細記錄。這對於疑難排解很有用APIs,但可能會導致記錄敏感資料。

      注意

      我們建議您不要在生產環境中使用完整要求和回應記錄APIs。

  11. 選取詳細量度,讓API閘道報告 CloudWatch 顯示API calls、、LatencyIntegration latency400 errors、和的API度量500 errors。如需詳細資訊 CloudWatch,請參閱 Amazon CloudWatch 使用者指南中的基本監控和詳細監控

    重要

    您的帳戶需支付存取方法層級 CloudWatch 指標的費用,但API層級或階段層級指標則不會收取費用。

  12. 若要啟用目的地的存取記錄,請開啟自訂存取記錄

  13. 對於存取記錄目ARN的地 ARN,請輸入記錄群組或 Firehose 串流的。

    「Firehose」的ARN格式為。arn:aws:firehose:{region}:{account-id}:deliverystream/amazon-apigateway-{your-stream-name}您的「Firehose」串流的名稱必須是amazon-apigateway-{your-stream-name}

  14. 日誌格式中,輸入日誌格式。若要進一步了解範例日誌格式,請參閱 CloudWatch API Gateway 的記錄檔格式

  15. 若要啟用API舞台的AWS X-Ray追蹤,請選取「X-Ray 追蹤」。如需詳細資訊,請參閱 使用 API Gateway 中的 X-Ray 追蹤使用者對 REST API 的要求

  16. 選擇 Save changes (儲存變更)。重新部署您API的新設置以使其生效。

覆寫階段層級設定

自訂階段層級設定後,您可以覆寫每個API方法的設定。其中一些選項可能會向您收取額外費用 AWS 帳戶。

  1. 若要設定方法覆寫,請展開次要導覽窗格下的階段,然後選擇方法。

    展開次要導覽窗格下的階段,然後選擇方法。
  2. 針對方法覆寫,選擇編輯

  3. 若要開啟方法層級 CloudWatch 設定,請針對記CloudWatch 錄選取記錄層級。

  4. 若要開啟方法層級詳細指標,請選取詳細指標。您的帳戶需支付存取方法層級 CloudWatch 指標的費用,但API層級或階段層級指標則不會收取費用。

  5. 若要開啟方法層級限流,請選取限流。輸入適當的方法層級選項。若要進一步了解調節,請參閱 將請求限制到您的 REST API,以便在 API Gateway 中獲得更好的輸送量

  6. 若要設定方法層級快取,請選取啟用方法快取。如果您變更「階段」詳細資料中的預設方法層級快取設定,則不會影響此設定。

  7. 選擇 Save (儲存)。