HTTP API アクセスログをカスタマイズする
次の変数を使用して、HTTP API のアクセスログをカスタマイズできます。HTTP API のアクセスログの詳細については、「API Gateway で HTTP API のログ記録を設定する」を参照してください。
パラメータ | 説明 |
---|---|
$context.accountId |
API 所有者の AWS アカウント ID。 |
$context.apiId |
API Gateway が API に割り当てる識別子。 |
$context.authorizer.claims. |
メソッドの呼び出し元が正常に認証された後で JSON ウェブトークン (JWT) から返されるクレームのプロパティ ( 注記
|
$context.authorizer.error |
オーソライザーから返されたエラーメッセージ。 |
$context.authorizer.principalId |
Lambda オーソライザーから返されたプリンシパルユーザー ID。 |
$context.authorizer. |
API Gateway Lambda オーソライザー関数から返された
|
$context.awsEndpointRequestId |
|
$context.awsEndpointRequestId2 |
|
$context.customDomain.basePathMatched |
受信リクエストが一致した API マッピングのパス。クライアントがカスタムドメイン名を使用して API にアクセスする場合に適用されます。たとえば、クライアントがリクエストを |
$context.dataProcessed |
処理されたデータの量 (バイト単位)。 |
$context.domainName |
API の呼び出しに使用された完全ドメイン名。これは、受信 |
$context.domainPrefix |
|
$context.error.message |
API Gateway エラーメッセージを含む文字列。 |
$context.error.messageString |
$context.error.message を引用符で囲んだ値、つまり "$context.error.message" 。 |
$context.error.responseType |
|
$context.extendedRequestId |
$context.requestId と同等です。 |
$context.httpMethod |
使用される HTTP メソッドです。有効な値には、 |
$context.identity.accountId |
リクエストに関連付けられた AWS アカウント ID です。IAM 認証を使用するルートでサポートされています。 |
$context.identity.caller |
リクエストに署名した発信者のプリンシパル ID。IAM 認証を使用するルートでサポートされています。 |
$context.identity.cognitoAuthenticationProvider |
リクエスト元の発信者が使用するすべての Amazon Cognito 認証プロバイダーのカンマ区切りのリスト。リクエストが Amazon Cognito 認証情報で署名されている場合にのみ使用できます。 たとえば、Amazon Cognito ユーザープールのアイデンティティの場合、 利用可能な Amazon Cognito 認証プロバイダーについては、「Amazon Cognito 開発者ガイド」の「フェデレーティッド ID の使用」を参照してください。 |
$context.identity.cognitoAuthenticationType |
リクエストを行う発信者の Amazon Cognito 認証タイプ。リクエストが Amazon Cognito 認証情報で署名されている場合にのみ使用できます。有効な値は、認証されたアイデンティティ |
$context.identity.cognitoIdentityId |
リクエストを行う発信者の Amazon Cognito ID。リクエストが Amazon Cognito 認証情報で署名されている場合にのみ使用できます。 |
$context.identity.cognitoIdentityPoolId |
リクエストを行う発信者の Amazon Cognito ID プール ID。リクエストが Amazon Cognito 認証情報で署名されている場合にのみ使用できます。 |
$context.identity.principalOrgId |
AWS 組織 ID。IAM 認証を使用するルートでサポートされています。 |
$context.identity.clientCert.clientCertPem |
クライアントが相互 TLS 認証中に提示した PEM エンコードされたクライアント証明書。相互 TLS が有効なカスタムドメイン名を使用してクライアントが API にアクセスすると、アクセスログに存在します。 |
$context.identity.clientCert.subjectDN |
クライアントが提示する証明書のサブジェクトの識別名。相互 TLS が有効なカスタムドメイン名を使用してクライアントが API にアクセスすると、アクセスログに存在します。 |
$context.identity.clientCert.issuerDN |
クライアントが提示する証明書の発行者の識別名。相互 TLS が有効なカスタムドメイン名を使用してクライアントが API にアクセスすると、アクセスログに存在します。 |
$context.identity.clientCert.serialNumber |
証明書のシリアル番号。相互 TLS が有効なカスタムドメイン名を使用してクライアントが API にアクセスすると、アクセスログに存在します。 |
$context.identity.clientCert.validity.notBefore |
証明書が無効になる前の日付。相互 TLS が有効なカスタムドメイン名を使用してクライアントが API にアクセスすると、アクセスログに存在します。 |
$context.identity.clientCert.validity.notAfter |
証明書が無効になった日付。相互 TLS が有効なカスタムドメイン名を使用してクライアントが API にアクセスすると、アクセスログに存在します。 |
$context.identity.sourceIp |
API Gateway エンドポイントへのリクエストを実行する即時 TCP 接続のソース IP アドレス。 |
$context.identity.user |
リソースアクセスに対して許可されるユーザーのプリンシパル識別子。IAM 認証を使用するルートでサポートされています。 |
$context.identity.userAgent |
API 発信者の |
$context.identity.userArn |
認証後に識別された有効ユーザーの Amazon リソースネーム (ARN) です。IAM 認証を使用するルートでサポートされています。詳細については、「https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html」を参照してください。 |
$context.integration.error |
統合から返されたエラーメッセージ。$context.integrationErrorMessage と同等です。 |
$context.integration.integrationStatus |
Lambda プロキシ統合の場合、バックエンドの Lambda 関数コードからではなく、AWS Lambda から返されるステータスコード。 |
$context.integration.latency |
統合レイテンシー (ミリ秒)。$context.integrationLatency と同等です。 |
$context.integration.requestId |
AWS エンドポイントのリクエスト ID。$context.awsEndpointRequestId と同等です。 |
$context.integration.status |
統合から返されたステータスコード。Lambda プロキシ統合では、これは Lambda 関数コードから返されたステータスコードです。 |
$context.integrationErrorMessage |
統合エラーメッセージを含む文字列。 |
$context.integrationLatency |
統合レイテンシー (ミリ秒)。 |
$context.integrationStatus |
Lambda プロキシ統合の場合、このパラメータはバックエンド Lambda 関数からではなく、AWS Lambda から返されたステータスコードを表します。 |
$context.path |
リクエストパス。たとえば、/{stage}/root/child と指定します。 |
$context.protocol |
HTTP/1.1 などのリクエストプロトコル。注記API Gateway API は HTTP/2 リクエストを受け入れることができますが、API Gateway は HTTP/1.1 を使用してバックエンド統合にリクエストを送信します。その結果、クライアントが HTTP/2 を使用するリクエストを送信した場合でも、リクエストプロトコルは HTTP/1.1 として記録されます。 |
$context.requestId |
API Gateway が API リクエストに割り当てる ID。 |
$context.requestTime |
CLFdd/MMM/yyyy:HH:mm:ss
+-hhmm )。 |
$context.requestTimeEpoch |
エポック |
$context.responseLatency |
レスポンスレイテンシー (ミリ秒)。 |
$context.responseLength |
レスポンスペイロードの長さ (バイト単位)。 |
$context.routeKey |
API リクエストのルートキー (例: |
$context.stage |
API リクエストのデプロイステージ ( |
$context.status |
メソッドレスポンスのステータス。 |