將 REST API 呼叫記錄到 API Gateway 中的 Amazon 資料 Firehose - Amazon API 网关

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

將 REST API 呼叫記錄到 API Gateway 中的 Amazon 資料 Firehose

若要協助偵錯與用戶端存取 API 相關的問題,您可以將 API 呼叫記錄到 Amazon 資料 Firehose。如需有關 Firehose 的詳細資訊,請參閱什麼是 Amazon 資料 Fire hose? 。

對於存取記錄,您只能啟用 CloudWatch 或 Firehose st — 您無法同時啟用兩者。但是,您可以啟用 CloudWatch 執行日誌記錄,並啟用 Firehose 進行訪問日誌記錄。

API Gateway 的 Firehose 記錄格式

Firehose 記錄使用與記CloudWatch 錄相同的格式。

Firehose 記錄的權限

在階段啟用 Firehose 存取記錄時,如果角色尚未存在,API Gateway 會在您的帳戶中建立服務連結角色。角色名為 AWSServiceRoleForAPIGateway 並會將 APIGatewayServiceRolePolicy 受管政策附加到該角色。如需服務連結角色的詳細資訊,請參閱使用服務連結角色

注意

您的「Firehose」串流的名稱必須是amazon-apigateway-{your-stream-name}

使用 API Gateway 主控台設定 Firehose 存取記錄

若要設定 API 記錄,您必須已將 API 部署至階段。您也必須已建立「Firehose」串流。

  1. 在以下網址登入 API Gateway 主控台:https://console.aws.amazon.com/apigateway

  2. 執行以下任意一項:

    1. 選擇現有 API,然後選擇階段。

    2. 建立 API,並將它部署至階段。

  3. 在主導覽窗格中,選擇階段

  4. 日誌和追蹤區段中,選擇編輯

  5. 若要啟用 Firehose 串流的存取記錄功能:

    1. 開啟自訂存取記錄

    2. 對於存取記錄目的地 ARN,請輸入 Firehose 串流的 ARN。ARN 的格式為 arn:aws:firehose:{region}:{account-id}:deliverystream/amazon-apigateway-{your-stream-name}

      注意

      您的「Firehose」串流的名稱必須是amazon-apigateway-{your-stream-name}

    3. 針對日誌格式,輸入日誌格式。您可以選擇 CLFJSONXMLCSV。若要進一步了解範例日誌格式,請參閱 CloudWatch API Gateway 的記錄檔格式

  6. 選擇儲存變更

API Gateway 現在已準備就緒,可將要求記錄到您的 API 至 Firehose。當您更新階段設定、日誌或階段變數時,不需要重新部署 API。