

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# AWS SDK for Java 2.x: referência abrangente de métricas
<a name="metrics-list"></a>

Com o AWS SDK for Java 2.x, você pode coletar métricas dos clientes de serviço em seu aplicativo e depois publicar (gerar) essas métricas [na Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html).

Essas tabelas listam as métricas que é possível coletar e os requisitos de uso do cliente HTTP.

Para obter mais informações sobre como habilitar e configurar métricas para o SDK, consulte [Como habilitar métricas do SDK](metrics.md).

## Métricas coletadas com cada solicitação
<a name="metrics-perrequest"></a>


| Nome da métrica | Description | Tipo | 
| --- | --- | --- | 
| ApiCallDuration | A duração da chamada de API. Isso inclui todas as tentativas de chamada feitas. | Duração\* | 
| ApiCallSuccessful | Verdadeiro se a chamada de API foi bem-sucedida, falso se não foi. | Booleano | 
| CredentialsFetchDuration | O tempo necessário para obter as credenciais de assinatura para a chamada de API. | Duração\* | 
| EndpointResolveDuration | A duração do tempo para resolver o endpoint usado na chamada de API. | Duração\* | 
| MarshallingDuration | O tempo necessário para converter a solicitação de SDK em uma solicitação HTTP. | Duração\* | 
| OperationName | O nome da operação de serviço que está sendo invocada. | String | 
| RetryCount | O número de novas tentativas que o SDK realizou na execução da solicitação. 0 indica que a solicitação funcionou na primeira vez e que nenhuma tentativa foi feita.<br />Consulte mais informações sobre como configurar a retenção de dados em [Estratégias de novas tentativas](retry-strategy.md#retry-strategies). | Inteiro | 
| ServiceId | O ID exclusivo para o serviço. | String | 
| ServiceEndpoint | O endpoint para o serviço. | URI | 
| TokenFetchDuration | O tempo necessário para obter as credenciais de assinatura para a chamada de API. | Duração\* | 

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

## Métricas coletadas para cada tentativa de solicitação
<a name="metrics-perattempt"></a>

Cada chamada de API pode exigir várias tentativas antes de receber uma resposta. Essas métricas são coletadas para cada tentativa.

### Métricas principais
<a name="metrics-perattempt-core"></a>


| Nome da métrica | Description | Tipo | 
| --- | --- | --- | 
| AwsExtendedRequestId | O ID da solicitação estendida da solicitação de serviço. | String | 
| AwsRequestId | O ID da solicitação de serviço. | String | 
| BackoffDelayDuration | O tempo que o SDK esperou antes dessa tentativa de chamada de API. O valor é baseado no conjunto `[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)` do cliente. Veja mais informações na seção [Estratégias de novas tentativas](retry-strategy.md#retry-strategies) a seguir deste guia. | Duração\* | 
| ErrorType | O tipo de erro que ocorreu em uma tentativa de chamada.<br />Os valores possíveis são:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/sdk-for-java/latest/developer-guide/metrics-list.html) | String | 
| ReadThroughput | O throughput de leitura do cliente, definido como `NumberOfResponseBytesRead / (TTLB - TTFB)`. Esse valor está em bytes por segundo.<br />Observe que essa métrica mede apenas os bytes lidos de dentro do `ResponseTransformer` ou `AsyncResponseTransformer`. Os dados lidos fora do transformador, por exemplo, quando o fluxo de resposta é retornado como resultado do transformador, não são incluídos no cálculo. | Duplo | 
| WriteThroughput | A taxa de transferência de gravação do cliente, definida como`RequestBytesWritten / (LastByteWrittenTime - FirstByteWrittenTime)`. Esse valor está em bytes por segundo.<br />Essa métrica mede a taxa na qual o SDK fornece o corpo da solicitação ao cliente HTTP. Isso exclui a configuração da conexão, o tempo de handshake TLS e o tempo de processamento do servidor. Essa métrica só é relatada para solicitações que têm um corpo de streaming, como o S3 PutObject.<br />Observe que essa métrica não leva em conta o buffer na camada do cliente HTTP. A taxa real de transmissão da rede pode ser menor se o cliente HTTP armazenar dados em buffer antes do envio. Essa métrica representa um limite superior da taxa de transferência da rede. | Duplo | 
| ServiceCallDuration | O tempo necessário para se conectar ao serviço (ou adquirir uma conexão do pool de conexões), enviar a solicitação serializada e receber a resposta inicial (por exemplo, código de status e cabeçalhos HTTP). Isso NÃO inclui o tempo para ler toda a resposta do serviço. | Duração\* | 
| SigningDuration | O tempo necessário para assinar a solicitação HTTP. | Duração\* | 
| TimeToFirstByte | O tempo necessário do envio da solicitação HTTP (incluindo a aquisição de uma conexão) até o serviço e o recebimento do primeiro byte dos cabeçalhos na resposta. | Duração\* | 
| TimeToLastByte | O tempo necessário do envio da solicitação HTTP (incluindo a aquisição de uma conexão) até o serviço e o recebimento do último byte da resposta.<br />Observe que, para APIs essas respostas de streaming de retorno, essa métrica abrange o tempo até a `AsyncResponseTransformer` conclusão do `ResponseTransformer` ou. | Duração\* | 
| UnmarshallingDuration | O tempo necessário para desvincular uma resposta HTTP de uma resposta do SDK.<br />Observação: para operações de streaming, isso não inclui o tempo de leitura da carga útil da resposta. | Duração\* | 

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

### Métricas HTTP
<a name="metrics-perattempt-http"></a>


| Nome da métrica | Description | Tipo | Um cliente HTTP é necessário\* | 
| --- | --- | --- | --- | 
| AvailableConcurrency | O número de solicitações simultâneas adicionais que o cliente HTTP suporta sem estabelecer novas conexões com o servidor de destino.<br />Para operações HTTP/1, isso é igual ao número de conexões TCP ociosas estabelecidas com o serviço. Para operações HTTP/2, isso é igual ao número de fluxos ociosos.<br />Observação: esse valor varia de acordo com a implementação do cliente HTTP:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/sdk-for-java/latest/developer-guide/metrics-list.html)<br />O valor tem como escopo uma instância individual do cliente HTTP e exclui a simultaneidade de outros clientes HTTP na mesma JVM. | Inteiro | Apache, Netty, CRT | 
| ConcurrencyAcquireDuration | O tempo necessário para adquirir um canal do grupo de conexões.<br />Para operações HTTP/1, um canal é igual a uma conexão TCP. Para operações HTTP/2, um canal é igual a um canal de fluxo HTTP/2.<br />A aquisição de um novo canal pode incluir tempo para:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/sdk-for-java/latest/developer-guide/metrics-list.html) | Duração\* | Apache, Netty, CRT | 
| HttpClientName | O nome do HTTP usado para a solicitação. | String | Apache, Netty, CRT | 
| HttpStatusCode | O código de status da resposta HTTP. | Inteiro | Any | 
| LeasedConcurrency | O número de solicitações que estão sendo executadas atualmente pelo cliente HTTP. <br />Para operações HTTP/1, isso é igual ao número de conexões TCP ativas estabelecidas com o serviço (excluindo conexões ociosas). Para operações HTTP/2, isso é igual ao número de fluxos HTTP ativos com o serviço (excluindo a capacidade de fluxo ocioso). <br />Observação: esse valor varia de acordo com a implementação do cliente HTTP:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/sdk-for-java/latest/developer-guide/metrics-list.html)<br />O valor tem como escopo uma instância individual do cliente HTTP e exclui a simultaneidade de outros clientes HTTP na mesma JVM. | Inteiro | Apache, Netty, CRT | 
| LocalStreamWindowSize | O tamanho da janela HTTP/2 local em bytes para o fluxo que executa essa solicitação. | Inteiro | Netty | 
| MaxConcurrency | O número máximo de solicitações simultâneas que o cliente HTTP suporta.<br />Para operações HTTP/1, isso é igual ao número máximo de conexões TCP que o cliente HTTP pode agrupar. Para operações HTTP/2, isso é igual ao número máximo de fluxos que o cliente HTTP pode agrupar.<br />Observação: esse valor varia de acordo com a implementação do cliente HTTP:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/sdk-for-java/latest/developer-guide/metrics-list.html)<br />O valor tem como escopo uma instância individual do cliente HTTP e exclui a simultaneidade de outros clientes HTTP na mesma JVM. | Inteiro | Apache, Netty, CRT | 
| PendingConcurrencyAcquires | O número de solicitações que aguardam a simultaneidade do cliente HTTP.<br />Para operações HTTP/1, isso é igual ao número de solicitações que aguardam o estabelecimento ou o retorno de uma conexão TCP do pool de conexões. Para operações HTTP/2, isso é igual ao número de solicitações que aguardam um novo fluxo (e, possivelmente, uma nova conexão HTTP/2) do grupo de conexões.<br />Observação: esse valor varia de acordo com a implementação do cliente HTTP:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/sdk-for-java/latest/developer-guide/metrics-list.html)<br />O valor tem como escopo uma instância individual do cliente HTTP e exclui a simultaneidade de outros clientes HTTP na mesma JVM. | Inteiro | Apache, Netty, CRT | 
| RemoteStreamWindowSize | O tamanho da janela HTTP/2 remota em bytes para o fluxo que executa essa solicitação. | Inteiro | Netty | 

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

Os termos usados na coluna significam:
+ Apache: o cliente HTTP baseado no Apache (`[ApacheHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/apache/ApacheHttpClient.html)`)
+ Netty: o cliente HTTP baseado em Netty (`[NettyNioAsyncHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/nio/netty/NettyNioAsyncHttpClient.html)`)
+ CRT: o cliente HTTP AWS baseado em CRT () `[AwsCrtAsyncHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/crt/AwsCrtAsyncHttpClient.html)`
+ Qualquer: a coleta de dados métricos não depende do cliente HTTP; isso inclui o cliente HTTP URLConnection baseado (`[UrlConnectionHttpClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/urlconnection/UrlConnectionHttpClient.html)`)