AWS SDK for Java 2.x:綜合指標參考 - AWS SDK for Java 2.x

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

AWS SDK for Java 2.x:綜合指標參考

使用 AWS SDK for Java 2.x,您可以從應用程式中的服務用戶端收集指標,然後將這些指標發佈 (輸出) 至 Amazon CloudWatch

這些資料表列出您可以收集的指標,以及任何 HTTP 用戶端用量需求。

如需啟用和設定 SDK 指標的詳細資訊,請參閱啟用 SDK 指標

每個請求收集的指標

指標名稱 Description (描述) Type

ApiCallDuration

API 呼叫的持續時間。這包括所有進行的呼叫嘗試。

持續時間*

ApiCallSuccessful

如果 API 呼叫成功,則為 true,否則為 false。

Boolean

CredentialsFetchDuration

擷取 API 呼叫簽署憑證的持續時間。

持續時間*

EndpointResolveDuration 解析 API 呼叫所用端點的持續時間。 持續時間*

MarshallingDuration

將 SDK 請求封送至 HTTP 請求的持續時間。

持續時間*

OperationName

要叫用之服務操作的名稱。

字串

RetryCount

開發套件在執行請求時執行的重試次數。0 表示請求第一次運作,而且未嘗試任何重試。

如需設定重試行為的詳細資訊,請參閱 重試策略

Integer

ServiceId

服務的唯一 ID。

字串

ServiceEndpoint

服務的端點。

URI

TokenFetchDuration

擷取 API 呼叫簽署憑證的持續時間。 持續時間*

*java.time.Duration

每次請求嘗試收集的指標

在收到回應之前,每個 API 呼叫可能需要多次嘗試。每次嘗試都會收集這些指標。

核心指標

指標名稱 Description (描述) Type

AwsExtendedRequestId

服務請求的延伸請求 ID。

字串

AwsRequestId

服務請求的請求 ID。

字串

BackoffDelayDuration

開發套件在此 API 呼叫嘗試之前等待的持續時間。此值是以用戶端上的 BackoffStrategy 集為基礎。如需詳細資訊,請參閱本指南中的重試策略一節。

持續時間*

ErrorType

呼叫嘗試發生的錯誤類型。

以下是可能的值:

  • Throttling:服務以限流錯誤回應。

  • ServerError:服務以限流以外的錯誤回應。

  • ConfiguredTimeout:在 API 呼叫層級或 API 呼叫嘗試層級發生用戶端逾時。

  • IO:發生 I/O 錯誤。

  • Other:針對不屬於上述其中一個類別的其他錯誤,全部鎖定。

字串
ReadThroughput

用戶端的讀取輸送量,定義為 NumberOfResponseBytesRead / (TTLB - TTFB)。此值以每秒位元組為單位。

請注意,此指標只會測量從 ResponseTransformer或 中讀取的位元組AsyncResponseTransformer。在轉換器外部讀取的資料,例如回應串流因轉換器而傳回時,不會包含在計算中。

Double

ServiceCallDuration

連線到服務 (或從連線集區取得連線)、傳送序列化請求和接收初始回應 (例如 HTTP 狀態碼和標頭) 的持續時間。這不包含從服務讀取整個回應的時間。

持續時間*

SigningDuration

簽署 HTTP 請求的持續時間。

持續時間*

TimeToFirstByte 從傳送 HTTP 請求 (包括取得連線) 到 服務,以及接收回應中第一個位元組標頭的持續時間。 持續時間*
TimeToLastByte

從傳送 HTTP 請求 (包括取得連線) 到 服務,以及接收回應最後一個位元組的持續時間。

請注意,對於傳回串流回應APIs,此指標會跨越 ResponseTransformerAsyncResponseTransformer完成之前的時間。

持續時間*

UnmarshallingDuration

取消封送 HTTP 回應至 SDK 回應的持續時間。

注意:對於串流操作,這不包括讀取回應承載的時間。

持續時間*

*java.time.Duration

HTTP 指標

指標名稱 Description (描述) Type 需要 HTTP 用戶端*

AvailableConcurrency

HTTP 用戶端支援的額外並行請求數量,無需建立與目標伺服器的新連線。

對於 HTTP/1 操作,這等於使用 服務建立的閒置 TCP 連線數。對於 HTTP/2 操作,這等於閒置串流的數量。

注意:此值因 HTTP 用戶端實作而異:

  • Apache 用戶端:值會套用至整個 HTTP 用戶端

  • Netty 用戶端:值適用於每個端點

  • AWS CRT 型用戶端:值適用於每個端點

此值的範圍為個別 HTTP 用戶端執行個體,並排除來自相同 JVM 中其他 HTTP 用戶端的並行。

Integer

Apache、Netty、CRT

ConcurrencyAcquireDuration

從連線集區取得頻道的持續時間。

對於 HTTP/1 操作,頻道等於 TCP 連線。對於 HTTP/2 操作,頻道等於 HTTP/2 串流頻道。

取得新頻道可能包括下列時間:

  1. 等待並行許可,受到用戶端並行上限組態的限制。

  2. 如果集區中沒有可用的現有連線,請建立新的連線。

  3. 如果啟用 TLS,請執行 TLS 交握和交涉。

持續時間*

Apache、Netty、CRT

HttpClientName

用於請求的 HTTP 名稱。

字串

Apache、Netty、CRT

HttpStatusCode

HTTP 回應的狀態碼。

Integer

任何

LeasedConcurrency

HTTP 用戶端目前執行的請求數量。

對於 HTTP/1 操作,這等於與服務的作用中 TCP 連線數 (閒置連線除外)。對於 HTTP/2 操作,這等於服務作用中 HTTP 串流的數量 (閒置串流容量除外)。

注意:此值因 HTTP 用戶端實作而異:

  • Apache 用戶端:值會套用至整個 HTTP 用戶端

  • Netty 用戶端:值適用於每個端點

  • AWS CRT 型用戶端:值適用於每個端點

此值的範圍為個別 HTTP 用戶端執行個體,並排除來自相同 JVM 中其他 HTTP 用戶端的並行。

Integer

Apache、Netty、CRT

LocalStreamWindowSize

執行此請求之串流的本機 HTTP/2 視窗大小,以位元組為單位。

Integer

Netty

MaxConcurrency

HTTP 用戶端支援的並行請求數目上限。

對於 HTTP/1 操作,這等於 HTTP 用戶端可以集區的最大 TCP 連線數。對於 HTTP/2 操作,這等於 HTTP 用戶端可以集區的最大串流數量。

注意:此值因 HTTP 用戶端實作而異:

  • Apache 用戶端:值會套用至整個 HTTP 用戶端

  • Netty 用戶端:值適用於每個端點

  • AWS 以 CRT 為基礎的用戶端:值適用於每個端點

此值的範圍為個別 HTTP 用戶端執行個體,並排除來自相同 JVM 中其他 HTTP 用戶端的並行。

Integer

Apache、Netty、CRT

PendingConcurrencyAcquires

等待來自 HTTP 用戶端並行的請求數量。

對於 HTTP/1 操作,這等於等待 TCP 連線從連線集區建立或傳回的請求數目。對於 HTTP/2 操作,這等於從連線集區等待新串流 (可能為新的 HTTP/2 連線) 的請求數量。

注意:此值因 HTTP 用戶端實作而異:

  • Apache 用戶端:值適用於整個 HTTP 用戶端

  • Netty 用戶端:值適用於每個端點

  • AWS 以 CRT 為基礎的用戶端:值適用於每個端點

此值的範圍為個別 HTTP 用戶端執行個體,並排除來自相同 JVM 中其他 HTTP 用戶端的並行。

Integer

Apache、Netty、CRT

RemoteStreamWindowSize

執行此請求之串流的遠端 HTTP/2 視窗大小,以位元組為單位。

Integer

Netty

*java.time.Duration

資料欄中使用的術語表示: