本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定API閘道RESTAPI中的階段
階段是部署的具名參考,也就是API. 您使用階段來管理和最佳化特定部署。例如,您可以設定階段設定來啟用快取、自訂請求調節、設定記錄、定義階段變數,或連線 Canary 版本以進行測試。以下部分說明如何建立和設定您的階段。
建立新的階段
初次部署之後,您可以新增更多階段並與現有的部署相關聯。您可以使用API閘道主控台來建立新階段,也可以在部署API. 一般而言,您可以在重新API部署之前將新階段新增至部署。API若要使用API閘道主控台建立新階段,請依照下列步驟執行:
請在 https://console.aws.amazon.com/apigateway
登入API閘道主控台。 選擇一個RESTAPI。
-
在主導覽窗格中,選擇「階段」下的API。
-
從階段導覽窗格選擇建立。
-
在階段名稱中輸入名稱,例如
prod
。注意
階段名稱僅可含有英數字元、連字號與底線。長度上限為 128 字元。
-
(選用)。在描述中,輸入階段描述。
-
對於「部署」,請選取您要與此階段產生關聯的現有API部署日期和時間。
-
在其他設定下,您可以指定階段的其他設定。
-
選擇建立階段。
修改階段設定
成功部署之後API,階段會填入預設設定。您可以使用主控台或API閘道RESTAPI來變更階段設定,包括API快取和記錄。下列步驟說明如何使用API閘道主控台的 Stage 編輯器來執行此作業。
請在 https://console.aws.amazon.com/apigateway
登入API閘道主控台。 選擇一個RESTAPI。
-
在主導覽窗格中,選擇「階段」下的API。
-
在 Stages (階段) 窗格中,選擇階段的名稱。
-
在階段詳細資訊區段中,選擇編輯。
(選用) 針對階段描述,編輯描述。
針對其他設定,請修改下列設定:
- 快取設定
-
若要啟用階段的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」(失敗-關閉),請選擇「封鎖要求」。
若要為您的階段選取用戶端憑證,請從用戶端憑證下拉式選單中選取憑證。
選擇儲存。
-
若要為與此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 使用者指南。
-
從 [記錄CloudWatch 檔] 下拉式功能表中選取記錄層級。記錄層級如下:
-
關閉 — 此階段未開啟記錄功能。
-
僅限錯誤 — 僅針對錯誤啟用記錄功能。
-
錯誤和資訊記錄 — 已啟用所有事件的記錄功能。
完整的請求和回應記錄 — 已啟用所有事件的詳細記錄。這對於疑難排解很有用APIs,但可能會導致記錄敏感資料。
注意
我們建議您不要在生產環境中使用完整要求和回應記錄APIs。
-
-
選取詳細量度,讓API閘道報告 CloudWatch 顯示
API calls
、、Latency
Integration latency
400 errors
、和的API度量500 errors
。如需詳細資訊 CloudWatch,請參閱 Amazon CloudWatch 使用者指南中的基本監控和詳細監控。重要
您的帳戶需支付存取方法層級 CloudWatch 指標的費用,但API層級或階段層級指標則不會收取費用。
若要啟用目的地的存取記錄,請開啟自訂存取記錄。
-
對於存取記錄目ARN的地 ARN,請輸入記錄群組或 Firehose 串流的。
「Firehose」的ARN格式為。
arn:aws:firehose:
您的「Firehose」串流的名稱必須是{region}
:{account-id}
:deliverystream/amazon-apigateway-{your-stream-name}
amazon-apigateway-
。{your-stream-name}
-
在日誌格式中,輸入日誌格式。若要進一步了解範例日誌格式,請參閱 CloudWatch API Gateway 的記錄檔格式。
-
若要啟用API舞台的AWS X-Ray追蹤,請選取「X-Ray 追蹤」。如需詳細資訊,請參閱 使用 API Gateway 中的 X-Ray 追蹤使用者對 REST API 的要求。
-
選擇 Save changes (儲存變更)。重新部署您API的新設置以使其生效。
覆寫階段層級設定
自訂階段層級設定後,您可以覆寫每個API方法的設定。其中一些選項可能會向您收取額外費用 AWS 帳戶。
若要設定方法覆寫,請展開次要導覽窗格下的階段,然後選擇方法。
針對方法覆寫,選擇編輯。
若要開啟方法層級 CloudWatch 設定,請針對記CloudWatch 錄選取記錄層級。
若要開啟方法層級詳細指標,請選取詳細指標。您的帳戶需支付存取方法層級 CloudWatch 指標的費用,但API層級或階段層級指標則不會收取費用。
若要開啟方法層級限流,請選取限流。輸入適當的方法層級選項。若要進一步了解調節,請參閱 將請求限制到您的 REST API,以便在 API Gateway 中獲得更好的輸送量。
若要設定方法層級快取,請選取啟用方法快取。如果您變更「階段」詳細資料中的預設方法層級快取設定,則不會影響此設定。
選擇 Save (儲存)。