

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# AWS SDK for Java 2.x: 포괄적인 지표 참조
<a name="metrics-list"></a>

를 사용하면 애플리케이션의 서비스 클라이언트에서 지표를 수집한 다음 해당 지표를 [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)에 게시(출력)할 AWS SDK for Java 2.x수 있습니다.

다음 표에는 수집할 수 있는 지표와 HTTP 클라이언트 사용 요구 사항이 나열되어 있습니다.

SDK 지표를 활성화 및 구성하는 자세한 내용은 [SDK 지표 활성화](metrics.md)를 참조하세요.

## 각 요청에서 수집된 지표
<a name="metrics-perrequest"></a>


| 지표 이름 | 설명 | 형식 | 
| --- | --- | --- | 
|  ApiCallDuration  |  API 직접 호출 지속 시간입니다. 여기에는 모든 직접 호출 시도가 포함됩니다.  |  지속 시간\$1  | 
|  ApiCallSuccessful  |  API 직접 호출이 성공하면 true이고, 그렇지 않으면 false입니다.  |  부울  | 
|  CredentialsFetchDuration  |  API 직접 호출용 서명 자격 증명을 가져오는 지속 시간입니다.  |  지속 시간\$1  | 
| EndpointResolveDuration | API 직접 호출에 사용되는 엔드포인트를 해결하는 데 걸리는 시간입니다. | 지속 시간\$1 | 
|  MarshallingDuration  |  SDK 요청을 HTTP 요청으로 마샬하는 데 걸리는 시간입니다.  |  지속 시간\$1  | 
|  OperationName  |  간접 호출 중인 서비스 작업의 이름입니다.  |  문자열  | 
|  RetryCount  |  SDK가 요청 실행 시 수행한 재시도 횟수입니다. 0은 요청이 처음 작동했고 재시도가 시도되지 않았음을 의미합니다. 재시도 동작 구성에 대한 자세한 내용은 [재시도 전략](retry-strategy.md#retry-strategies) 섹션을 참조하세요.  |  Integer  | 
|  ServiceId  |  서비스의 고유 ID입니다.  |  문자열  | 
|  ServiceEndpoint  |  서비스의 엔드포인트입니다.  |  URI  | 
|  TokenFetchDuration  | API 직접 호출용 서명 자격 증명을 가져오는 지속 시간입니다. | 지속 시간\$1 | 

\$1[java.time.Duration](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html).

## 각 요청 시도에 대해 수집된 지표
<a name="metrics-perattempt"></a>

응답을 수신하려면 각 API 호출에 여러 번 시도해야 할 수 있습니다. 이 지표는 각 요청 시도에 대해 수집됩니다.

### 주요 지표
<a name="metrics-perattempt-core"></a>


| 지표 이름 | 설명 | 형식 | 
| --- | --- | --- | 
|  AwsExtendedRequestId  |  서비스 요청의 확장 요청 ID입니다.  |  문자열  | 
|  AwsRequestId  |  서비스 요청의 요청 ID입니다.  |  문자열  | 
|  BackoffDelayDuration  |  이 API 직접 호출을 시도하기 전에 SDK가 대기한 지속 시간입니다. 값은 클라이언트에 설정된 `[https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/retries/api/BackoffStrategy.html](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/retries/api/BackoffStrategy.html)`를 기반으로 합니다. 자세한 내용은 이 가이드의 [재시도 전략](retry-strategy.md#retry-strategies) 섹션을 참조하세요.  |  지속 시간\$1  | 
| ErrorType |  직접 호출 시도에서 발생한 오류 유형입니다. 유효한 값은 다음과 같습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/sdk-for-java/latest/developer-guide/metrics-list.html)  | 문자열 | 
| ReadThroughput |  `NumberOfResponseBytesRead / (TTLB - TTFB)`로 정의된 클라이언트의 읽기 처리량입니다. 이 값은 초당 바이트 단위입니다. 이 지표는 `ResponseTransformer` 또는 `AsyncResponseTransformer` 내에서 읽은 바이트만 측정합니다. 응답 스트림이 변환기의 결과로 반환되는 경우와 같이 변환기 외부에서 읽는 데이터는 계산에 포함되지 않습니다.  | 배정밀도 실수 | 
| WriteThroughput |  로 정의된 클라이언트의 쓰기 처리량입니다`RequestBytesWritten / (LastByteWrittenTime - FirstByteWrittenTime)`. 이 값은 초당 바이트 단위입니다. 이 지표는 SDK가 HTTP 클라이언트에 요청 본문을 제공하는 속도를 측정합니다. 연결 설정, TLS 핸드셰이크 시간 및 서버 처리 시간은 제외됩니다. 이 지표는 S3 PutObject와 같은 스트리밍 본문이 있는 요청에 대해서만 보고됩니다. 이 지표는 HTTP 클라이언트 계층의 버퍼링을 고려하지 않습니다. HTTP 클라이언트가 전송하기 전에 데이터를 버퍼링하면 실제 네트워크 전송 속도가 낮아질 수 있습니다. 이 지표는 네트워크 처리량의 상한을 나타냅니다.  | 배정밀도 실수 | 
|  ServiceCallDuration  |  서비스에 연결하고(또는 연결 풀에서 연결을 획득하고), 직렬화된 요청을 보내고, 초기 응답(예: HTTP 상태 코드 및 헤더)을 수신하는 지속 시간입니다. 여기에는 서비스의 전체 응답을 읽는 시간은 포함되지 않습니다.  |  지속 시간\$1  | 
|  SigningDuration  |  HTTP 요청에 서명하는 지속 시간입니다.  |  지속 시간\$1  | 
| TimeToFirstByte | 서비스에 HTTP 요청(연결 획득 포함)을 보내고 응답에서 헤더의 첫 번째 바이트를 수신하는 지속 시간입니다. | 지속 시간\$1 | 
| TimeToLastByte |  서비스에 HTTP 요청(연결 획득 포함)을 보내고 응답에서 마지막 바이트를 수신하는 지속 시간입니다. 스트리밍 응답을 반환하는 API의 경우 이 지표는 `ResponseTransformer` 또는 `AsyncResponseTransformer`가 완료될 때까지의 시간에 걸쳐 있습니다.  | 지속 시간\$1 | 
|  UnmarshallingDuration  |  SDK 응답에 대한 HTTP 응답을 언마샬하는 데 걸리는 지속 시간입니다. 참고: 스트리밍 작업의 경우 응답 페이로드를 읽는 데 걸리는 시간은 포함되지 않습니다.  |  지속 시간\$1  | 

\$1[java.time.Duration](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html).

### HTTP 지표
<a name="metrics-perattempt-http"></a>


| 지표 이름 | 설명 | 형식 | HTTP 클라이언트 필요\$1 | 
| --- | --- | --- | --- | 
|  AvailableConcurrency  |  대상 서버에 대한 새 연결을 설정하지 않고 HTTP 클라이언트가 지원하는 추가 동시 요청 수입니다. HTTP/1 작업의 경우 서비스에 설정된 유휴 TCP 연결 수와 같습니다. HTTP/2 작업의 경우 유휴 스트림 수와 같습니다. 참고: 이 값은 HTTP 클라이언트 구현에 따라 다릅니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/sdk-for-java/latest/developer-guide/metrics-list.html) 값은 개별 HTTP 클라이언트 인스턴스로 범위가 지정되며 동일한 JVM의 다른 HTTP 클라이언트에서 동시성을 제외합니다.  |  Integer  | Apache, Netty, CRT | 
|  ConcurrencyAcquireDuration  |  연결 풀에서 채널을 획득하는 데 걸린 지속 시간입니다. HTTP/1 작업의 경우 채널은 TCP 연결과 같습니다. HTTP/2 작업의 경우 채널은 HTTP/2 스트림 채널과 같습니다. 새 채널을 획득하는 데 다음과 같은 시간이 포함될 수 있습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/sdk-for-java/latest/developer-guide/metrics-list.html)  |  지속 시간\$1  |  Apache, Netty, CRT  | 
|  HttpClientName  |  요청에 사용 중인 HTTP의 이름입니다.  |  문자열  |  Apache, Netty, CRT  | 
|  HttpStatusCode  |  HTTP 응답의 상태 코드입니다.  |  Integer  |  임의  | 
|  LeasedConcurrency  |  HTTP 클라이언트에서 실행하는 요청 수입니다. HTTP/1 작업의 경우 서비스와의 활성 TCP 연결 수와 같습니다(유휴 연결 제외). HTTP/2 작업의 경우 서비스가 포함된 활성 HTTP 스트림 수와 같습니다(유휴 스트림 용량 제외). 참고: 이 값은 HTTP 클라이언트 구현에 따라 다릅니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/sdk-for-java/latest/developer-guide/metrics-list.html) 값은 개별 HTTP 클라이언트 인스턴스로 범위가 지정되며 동일한 JVM의 다른 HTTP 클라이언트에서 동시성을 제외합니다.  |  Integer  |  Apache, Netty, CRT  | 
|  LocalStreamWindowSize  |  이 요청이 실행되는 스트림의 로컬 HTTP/2 창 크기(바이트)입니다.  |  Integer  |  Netty  | 
|  MaxConcurrency  |  HTTP 클라이언트가 지원하는 최대 동시 요청 수입니다. HTTP/1 작업의 경우 HTTP 클라이언트가 풀링할 수 있는 최대 TCP 연결 수와 같습니다. HTTP/2 작업의 경우 HTTP 클라이언트가 풀링할 수 있는 최대 스트림 수와 같습니다. 참고: 이 값은 HTTP 클라이언트 구현에 따라 다릅니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/sdk-for-java/latest/developer-guide/metrics-list.html) 값은 개별 HTTP 클라이언트 인스턴스로 범위가 지정되며 동일한 JVM의 다른 HTTP 클라이언트에서 동시성을 제외합니다.  |  Integer  |  Apache, Netty, CRT  | 
|  PendingConcurrencyAcquires  |  HTTP 클라이언트의 동시성을 기다리는 요청 수입니다. HTTP/1 작업의 경우 TCP 연결이 연결 풀에서 설정되거나 반환될 때까지 대기하는 요청 수와 같습니다. HTTP/2 작업의 경우 연결 풀에서 새 스트림(및 가능한 경우 새 HTTP/2 연결)을 기다리는 요청 수와 같습니다. 참고: 이 값은 HTTP 클라이언트 구현에 따라 다릅니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/sdk-for-java/latest/developer-guide/metrics-list.html) 값은 개별 HTTP 클라이언트 인스턴스로 범위가 지정되며 동일한 JVM의 다른 HTTP 클라이언트에서 동시성을 제외합니다.  |  Integer  |  Apache, Netty, CRT  | 
|  RemoteStreamWindowSize  |  이 요청이 실행되는 스트림의 원격 HTTP/2 창 크기(바이트)입니다.  |  Integer  |  Netty  | 

\$1[java.time.Duration](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html).

열에 사용된 용어의 의미는 다음과 같습니다.
+ Apache: Apache 기반 HTTP 클라이언트(`[ApacheHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/apache/ApacheHttpClient.html)`)
+ Netty: Netty 기반 HTTP 클라이언트(`[NettyNioAsyncHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/nio/netty/NettyNioAsyncHttpClient.html)`)
+ CRT: AWS CRT 기반 HTTP 클라이언트(`[AwsCrtAsyncHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/crt/AwsCrtAsyncHttpClient.html)`)
+ 임의: 지표 데이터 수집은 HTTP 클라이언트에 종속되지 않습니다. 여기에는 URLConnection 기반 HTTP 클라이언트(`[UrlConnectionHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/urlconnection/UrlConnectionHttpClient.html)`)가 포함됨