自定义 HTTP API 访问日志
您可以使用以下变量自定义 HTTP API 访问日志。要了解有关 HTTP API 的访问日志的更多信息,请参阅 为 API Gateway 中的 HTTP API 配置日志记录。
参数 | 说明 |
---|---|
$context.accountId |
API 拥有者的 AWS 账户 ID。 |
$context.apiId |
API Gateway 分配给您的 API 的标识符。 |
$context.authorizer.claims. |
成功对方法调用方进行身份验证后从 JSON Web 令牌(JWT)返回的声明的属性,如 注意调用 |
$context.authorizer.error |
从授权方返回的错误消息。 |
$context.authorizer.principalId |
Lambda 授权方返回的委托人用户标识。 |
$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 |
签发请求的调用方的委托人标识符。对于使用 IAM 授权的路由支持此项。 |
$context.identity.cognitoAuthenticationProvider |
发出请求的调用方使用的所有 Amazon Cognito 身份验证提供商的逗号分隔列表。仅当使用 Amazon Cognito 凭证对请求签名时才可用。 例如,对于 Amazon Cognito 身份池中的身份, 有关更多信息,请参阅 Amazon Cognito 开发人员指南 中的使用联合身份。 |
$context.identity.cognitoAuthenticationType |
发出请求的调用方的 Amazon Cognito 身份验证类型。仅当使用 Amazon Cognito 凭证对请求签名时才可用。可能的值包括经过身份验证的身份的 |
$context.identity.cognitoIdentityId |
发出请求的调用方的 Amazon Cognito 身份 ID。仅当使用 Amazon Cognito 凭证对请求签名时才可用。 |
$context.identity.cognitoIdentityPoolId |
发出请求的调用方的 Amazon Cognito 身份池 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 Resource Name (ARN)。对于使用 IAM 授权的路由支持此项。有关更多信息,请参阅 https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html。 |
$context.integration.error |
从集成返回的错误消息。等效于 $context.integrationErrorMessage 。 |
$context.integration.integrationStatus |
对于 Lambda 代理集成,从 AWS Lambda(而不是从后端 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 代理集成,此参数表示从 AWS Lambda(而不是从后端 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 |
Epoch |
$context.responseLatency |
响应延迟(毫秒)。 |
$context.responseLength |
响应负载长度(以字节为单位)。 |
$context.routeKey |
API 请求的路由密钥,例如 |
$context.stage |
API 请求的部署阶段(例如, |
$context.status |
方法响应状态。 |