本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
服务客户端指标
借助 Amazon SDK for Java 2.x,您可以从应用程序中的服务客户端收集指标,然后将这些指标发布(输出)到 Amazon CloudWatch。
这些表列出了您可以收集的指标以及任何 HTTP 客户端使用要求。
有关为 SDK 启用和配置指标的更多信息,请参阅启用 SDK 指标。
表格中所用术语解释:
-
Apache:基于 Apache 的 HTTP 客户端 (
ApacheHttpClient
) -
Netty:基于 Netty 的 HTTP 客户端 (
NettyNioAsyncHttpClient
) -
CRT: Amazon 基于 CRT 的 HTTP 客户端 ()
AwsCrtAsyncHttpClient
-
任意:指标数据的收集不依赖于 HTTP 客户端;这包括使用基于 URLConnection 的 HTTP 客户端 (
UrlConnectionHttpClient
)
每次请求收集的指标
指标名称 | 描述 | 类型 | 需要 HTTP 客户端 |
---|---|---|---|
ApiCallDuration |
完成请求所花费的总时间(包括所有重试) |
持续时间 |
任何 |
ApiCallSuccessful |
如果 API 调用成功则为 true;如果不成功则为 false |
布尔值 |
任何 |
CredentialsFetchDuration |
获取请求的 Amazon 签名凭证所花费的时间 |
持续时间 |
任何 |
MarshallingDuration |
封送请求所用时间 |
持续时间 |
任何 |
OperationName |
向其发出请求的 Amazon API 的名称 |
字符串 |
任何 |
RetryCount |
SDK 重试 API 调用的次数 |
整数 |
任何 |
ServiceId |
API 请求 Amazon Web Service 所针对的服务 ID |
字符串 |
任何 |
TokenFetchDuration |
为请求获取令牌签名凭证所用时间 | 持续时间 | 任何 |
为每次请求尝试收集的指标
每个 API 调用可能需要多次尝试才能收到响应。每次尝试都会收集这些指标。
指标名称 | 描述 | 类型 | 需要 HTTP 客户端 |
---|---|---|---|
AvailableConcurrency |
HTTP 客户端无需建立其他连接即可支持的剩余并发请求数 |
整数 |
Apache、Netty、CRT |
AwsExtendedRequestId |
服务请求的扩展请求 ID |
字符串 |
任何 |
AwsRequestId |
服务请求的请求 ID |
字符串 |
任何 |
BackoffDelayDuration |
在这次 API 调用尝试之前 SDK 等待的持续时间 |
持续时间 |
任何 |
ConcurrencyAcquireDuration |
从连接池中获取通道所用时间 |
持续时间 |
Apache、Netty、CRT |
HttpClientName |
用于请求的 HTTP 的名称 |
字符串 |
Apache、Netty、CRT |
HttpStatusCode |
HTTP 响应中返回的状态码 |
整数 |
任何 |
LeasedConcurrency |
HTTP 客户端当前正在执行的请求数 |
整数 |
Apache、Netty、CRT |
LocalStreamWindowSize |
执行此请求的流的本地 HTTP/2 窗口大小(以字节为单位) |
整数 |
Netty |
MarshallingDuration |
将 SDK 请求封送到 HTTP 请求所用时间 |
持续时间 |
任何 |
MaxConcurrency |
HTTP 客户端支持的最大并发请求数 |
整数 |
Apache、Netty、CRT |
PendingConcurrencyAcquires |
等待连接池中另一个 TCP 连接或新数据流可用而被组织的请求数 |
整数 |
Apache、Netty、CRT |
RemoteStreamWindowSize |
执行此请求的流的远程 HTTP/2 窗口大小(以字节为单位) |
整数 |
Netty |
ServiceCallDuration |
连接到服务、发送请求以及从响应中接收 HTTP 状态代码和标头所用时间 |
持续时间 |
任何 |
SigningDuration |
签署 HTTP 请求所用时间 |
持续时间 |
任何 |
UnmarshallingDuration |
将 SDK 响应解组到 HTTP 响应所用时间 |
持续时间 |
任何 |