AWS SDK for Java 2.x: 包括的なメトリクスのリファレンス
AWS SDK for Java 2.x では、アプリケーションのサービスクライアントからメトリクスを収集し、それらのメトリクスを Amazon CloudWatch に発行 (出力) できます。
これらのテーブルは、収集できるメトリクスと HTTP クライアントの使用要件を示しています。
SDK のメトリクスの有効化と設定の詳細については、SDK メトリクスの有効化を参照してください。
各リクエストで収集されたメトリクス
| メトリクス名 | 説明 | タイプ |
|---|---|---|
|
ApiCallDuration |
API コールが行われた時間。これには、試行されたすべての呼び出しが含まれます。 |
時間* |
|
ApiCallSuccessful |
API コールが成功した場合は true、それ以外の場合は false。 |
ブール値 |
|
CredentialsFetchDuration |
API コールの署名認証情報を取得するまでの時間。 |
時間* |
| EndpointResolveDuration | API コールに使用されるエンドポイントを解決するまでの時間。 | 時間* |
|
MarshallingDuration |
SDK リクエストを HTTP リクエストにマーシャリングするまでの時間。 |
時間* |
|
OperationName |
呼び出されるサービスオペレーションの名前。 |
文字列 |
|
RetryCount |
SDK がリクエストの実行中に再試行した回数。0 は、リクエストが最初に成功し、再試行されなかったことを意味します。 再試行動作の設定については、「再試行戦略」を参照してください。 |
整数 |
|
ServiceId |
サービスの一意の ID。 |
文字列 |
|
ServiceEndpoint |
サービスのエンドポイント。 |
[URI] |
|
TokenFetchDuration |
API コールの署名認証情報を取得するまでの時間。 | 時間* |
リクエストの各試行について収集されたメトリクス
各 API コールでは、レスポンスが受信されるまでに複数回試行する必要がある場合があります。これらのメトリクスは、各試行について収集されます。
コアメトリクス
| メトリクス名 | 説明 | タイプ |
|---|---|---|
|
AwsExtendedRequestId |
サービスリクエストの拡張リクエスト ID。 |
文字列 |
|
AwsRequestId |
サービスリクエストのリクエスト ID。 |
文字列 |
|
BackoffDelayDuration |
この API コールが試行される前に SDK が待機した時間。値は、クライアントで設定された |
時間* |
| ErrorType |
呼び出しの試行で発生したエラーのタイプ。 以下の値を指定できます。
|
文字列 |
| ReadThroughput |
このメトリクスは、 |
ダブル |
|
ServiceCallDuration |
サービスへの接続 (または接続プールからの接続の取得)、シリアル化されたリクエストの送信、最初のレスポンス (HTTP ステータスコードやヘッダーなど) の受信にかかる時間。これには、サービスからレスポンス全体を読み取る時間は含まれません。 |
時間* |
|
SigningDuration |
HTTP リクエストに署名するまでの時間。 |
時間* |
| TimeToFirstByte | サービスへの HTTP リクエストの送信 (接続の取得を含む) から、レスポンス内のヘッダーの最初のバイトを受信するまでの時間。 | 時間* |
| TimeToLastByte |
サービスへの HTTP リクエストの送信 (接続の取得を含む) から、レスポンス内の最後のバイトを受信するまでの時間。 ストリーミングレスポンスを返す API の場合、このメトリクスは |
時間* |
|
UnmarshallingDuration |
SDK 応答に対する HTTP 応答のマーシャリングを解除するまでの時間。 注: ストリーミングオペレーションの場合、これにはレスポンスのペイロードを読み取る時間は含まれません。 |
時間* |
HTTP メトリクス
| メトリクス名 | 説明 | タイプ | HTTP クライアントが必須です* |
|---|---|---|---|
|
AvailableConcurrency |
ターゲットサーバーへの新しい接続を確立せずに HTTP クライアントがサポートできる追加の同時リクエストの数。 HTTP/1 オペレーションの場合、これはサービスで確立されたアイドル状態の TCP 接続の数に等しくなります。HTTP/2 オペレーションの場合、これはアイドルストリームの数に等しくなります。 注: この値は HTTP クライアントの実装によって異なります。
値は個々の HTTP クライアントインスタンスに限定され、同じ JVM 内の他の HTTP クライアントからの同時実行を除外します。 |
整数 |
アパッチ、Netty、CRT |
|
ConcurrencyAcquireDuration |
接続プールからチャンネルを取得するまでの時間。 HTTP/1 オペレーションの場合、チャネルは TCP 接続に等しくなります。HTTP/2 オペレーションの場合、チャネルは HTTP/2 ストリームチャネルに等しくなります。 新しいチャネルの取得には、次の時間が含まれる場合があります。
|
時間* |
アパッチ、Netty、CRT |
|
HttpClientName |
リクエストに使用されている HTTP の名前。 |
文字列 |
アパッチ、Netty、CRT |
|
HttpStatusCode |
HTTP レスポンスの ステータスコード。 |
整数 |
いずれか |
|
LeasedConcurrency |
HTTP クライアントが現在実行しているリクエストの数。 HTTP/1 オペレーションの場合、これは サービスとのアクティブな TCP 接続の数 (アイドル接続を除く) に等しくなります。HTTP/2 オペレーションの場合、これはサービスに対してアクティブな HTTP ストリームの数に等しくなります (アイドルストリーム容量を除く)。 注: この値は HTTP クライアントの実装によって異なります。
値は個々の HTTP クライアントインスタンスに限定され、同じ JVM 内の他の HTTP クライアントからの同時実行を除外します。 |
整数 |
アパッチ、Netty、CRT |
|
LocalStreamWindowSize |
このリクエストを実行したストリームのローカル HTTP/2 ウィンドウサイズ (バイト)。 |
整数 |
Netty |
|
MaxConcurrency |
HTTP クライアントによってサポートされる同時リクエストの最大数。 HTTP/1 オペレーションの場合、これは HTTP クライアントがプールできる TCP 接続の最大数に等しくなります。HTTP/2 オペレーションの場合、これは HTTP クライアントがプールできるストリームの最大数に等しくなります。 注: この値は HTTP クライアントの実装によって異なります。
値は個々の HTTP クライアントインスタンスに限定され、同じ JVM 内の他の HTTP クライアントからの同時実行を除外します。 |
整数 |
アパッチ、Netty、CRT |
|
PendingConcurrencyAcquires |
HTTP クライアントからの同時実行を待機するリクエストの数。 HTTP/1 のオペレーションの場合、これは TCP 接続の確立待を待っている、または接続プールからの返却を待っているリクエスト数に等しくなります。HTTP/2 オペレーションの場合、これは接続プールからの新しいストリーム (場合によっては新しい HTTP/2 接続) を待っているリクエストの数に等しくなります。 注: この値は HTTP クライアントの実装によって異なります。
値は個々の HTTP クライアントインスタンスに限定され、同じ JVM 内の他の HTTP クライアントからの同時実行を除外します。 |
整数 |
アパッチ、Netty、CRT |
|
RemoteStreamWindowSize |
このリクエストを実行したストリームのリモート HTTP/2 ウィンドウサイズ (バイト) |
整数 |
Netty |
列で使用されている用語の意味は以下のとおりです。
-
Apache: アパッチベースの HTTP クライアント (
ApacheHttpClient) -
Netty: Netty ベースの HTTP クライアント (
NettyNioAsyncHttpClient) -
CRT: AWS CRT ベースの HTTP クライアント (
AwsCrtAsyncHttpClient) -
任意:メトリクスデータの収集は HTTP クライアントに依存しません。これには URLConnection ベースの HTTP クライアント (
UrlConnectionHttpClient) も含まれます。