AWS SDK for Java 2.x: Référence complète sur les métriques - AWS SDK for Java 2.x

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

AWS SDK for Java 2.x: Référence complète sur les métriques

Avec le AWS SDK for Java 2.x, vous pouvez collecter des statistiques auprès des clients du service dans votre application, puis publier (générer) ces statistiques sur Amazon CloudWatch.

Ces tableaux répertorient les métriques que vous pouvez collecter et les exigences relatives à l'utilisation du client HTTP.

Pour plus d'informations sur l'activation et la configuration des métriques pour le SDK, consultez la section Activation des métriques du SDK.

Métriques collectées à chaque demande

Nom des métriques Description Type

ApiCallDuration

Durée de l'appel d'API. Cela inclut toutes les tentatives d'appel effectuées.

Durée*

ApiCallSuccessful

Vrai si l'appel d'API a réussi, faux dans le cas contraire.

Booléen

CredentialsFetchDuration

Durée nécessaire pour récupérer les informations de signature pour l'appel d'API.

Durée*

EndpointResolveDuration Durée de résolution du point de terminaison utilisé pour l'appel d'API. Durée*

MarshallingDuration

Durée nécessaire pour transformer la requête du SDK en une requête HTTP.

Durée*

OperationName

Nom de l'opération de service invoquée.

Chaîne

RetryCount

Le nombre de tentatives effectuées par le SDK lors de l'exécution de la demande. 0 signifie que la demande a fonctionné la première fois et qu'aucune nouvelle tentative n'a été tentée.

Pour plus d'informations sur la configuration du comportement des nouvelles tentatives, consultezRéessayez les stratégies.

Entier

ServiceId

L'identifiant unique du service.

Chaîne

ServiceEndpoint

Le point de terminaison du service.

URI

TokenFetchDuration

Durée nécessaire pour récupérer les informations de signature pour l'appel d'API. Durée*

* java.time.Duration.

Mesures collectées pour chaque tentative de demande

Chaque appel d'API peut nécessiter plusieurs tentatives avant de recevoir une réponse. Ces statistiques sont collectées pour chaque tentative.

Indicateurs de base

Nom des métriques Description Type

AwsExtendedRequestId

ID de demande étendu de la demande de service.

Chaîne

AwsRequestId

ID de demande de la demande de service.

Chaîne

BackoffDelayDuration

Durée pendant laquelle le SDK a attendu avant cette tentative d'appel d'API. La valeur est basée sur l'BackoffStrategyensemble défini sur le client. Consultez la Réessayez les stratégies section de ce guide pour plus d'informations.

Durée*

ErrorType

Type d'erreur survenue lors d'une tentative d'appel.

Les valeurs admises sont les suivantes :

  • Throttling: Le service a répondu par une erreur de régulation.

  • ServerError: Le service a répondu avec une erreur autre que le ralentissement.

  • ConfiguredTimeout: un délai d'attente du client s'est produit, soit au niveau de l'appel d'API, soit au niveau de la tentative d'appel d'API.

  • IO: Une I/O erreur s'est produite.

  • Other: fourre-tout pour les autres erreurs qui n'entrent pas dans l'une des catégories répertoriées ci-dessus.

Chaîne
ReadThroughput

Le débit de lecture du client, défini commeNumberOfResponseBytesRead / (TTLB - TTFB). Cette valeur est exprimée en octets par seconde.

Notez que cette métrique mesure uniquement les octets lus depuis le ResponseTransformer ouAsyncResponseTransformer. Les données lues en dehors du transformateur, par exemple lorsque le flux de réponse est renvoyé par le transformateur, ne sont pas incluses dans le calcul.

Double

ServiceCallDuration

Durée nécessaire pour se connecter au service (ou acquérir une connexion à partir du pool de connexions), envoyer la demande sérialisée et recevoir la réponse initiale (par exemple, le code d'état HTTP et les en-têtes). Cela n'inclut pas le temps nécessaire pour lire l'intégralité de la réponse du service.

Durée*

SigningDuration

Durée de signature de la requête HTTP.

Durée*

TimeToFirstByte Durée entre l'envoi de la requête HTTP (y compris l'acquisition d'une connexion) au service et la réception du premier octet des en-têtes de la réponse. Durée*
TimeToLastByte

Durée entre l'envoi de la requête HTTP (y compris l'acquisition d'une connexion) au service et la réception du dernier octet de la réponse.

Notez que pour ce APIs qui renvoie des réponses de streaming, cette métrique couvre le temps écoulé jusqu'à la fin de la ResponseTransformer ouAsyncResponseTransformer.

Durée*

UnmarshallingDuration

Durée de désinstallation de la réponse HTTP à une réponse du SDK.

Remarque : pour les opérations de streaming, cela n'inclut pas le temps de lecture de la charge utile de réponse.

Durée*

* java.time.Duration.

Métriques HTTP

Nom des métriques Description Type Client HTTP requis*

AvailableConcurrency

Nombre de demandes simultanées supplémentaires prises en charge par le client HTTP sans établir de nouvelles connexions avec le serveur cible.

Pour les opérations HTTP/1, cela correspond au nombre de connexions TCP inactives établies avec le service. Pour les opérations HTTP/2, cela correspond au nombre de flux inactifs.

Remarque : Cette valeur varie en fonction de l'implémentation du client HTTP :

  • Client Apache : la valeur s'applique à l'ensemble du client HTTP

  • Client Netty : la valeur s'applique par point de terminaison

  • AWS Client basé sur CRT : la valeur s'applique par point de terminaison

La valeur est limitée à une instance de client HTTP individuelle et exclut la simultanéité des autres clients HTTP de la même machine virtuelle Java.

Entier

Apache, Netty, CRT

ConcurrencyAcquireDuration

Durée d'acquisition d'un canal à partir du pool de connexions.

Pour les opérations HTTP/1, un canal équivaut à une connexion TCP. Pour les opérations HTTP/2, un canal est égal à un canal de flux HTTP/2.

L'acquisition d'une nouvelle chaîne peut nécessiter du temps pour :

  1. En attente d'une autorisation de simultanéité, conformément à la configuration de simultanéité maximale du client.

  2. Etablissement d'une nouvelle connexion, si aucune connexion existante n'est disponible dans le pool.

  3. Exécution de la prise de contact et de la négociation TLS, si le protocole TLS est activé.

Durée*

Apache, Netty, CRT

HttpClientName

Nom du protocole HTTP utilisé pour la demande.

Chaîne

Apache, Netty, CRT

HttpStatusCode

Code d'état de la réponse HTTP.

Entier

N’importe quel compte

LeasedConcurrency

Le nombre de requêtes que le client HTTP exécute actuellement.

Pour les opérations HTTP/1, cela correspond au nombre de connexions TCP actives avec le service (à l'exclusion des connexions inactives). Pour les opérations HTTP/2, cela correspond au nombre de flux HTTP actifs associés au service (à l'exclusion de la capacité des flux inactifs).

Remarque : Cette valeur varie en fonction de l'implémentation du client HTTP :

  • Client Apache : la valeur s'applique à l'ensemble du client HTTP

  • Client Netty : la valeur s'applique par point de terminaison

  • AWS Client basé sur CRT : la valeur s'applique par point de terminaison

La valeur est limitée à une instance de client HTTP individuelle et exclut la simultanéité des autres clients HTTP de la même machine virtuelle Java.

Entier

Apache, Netty, CRT

LocalStreamWindowSize

Taille de la fenêtre HTTP/2 locale en octets pour le flux qui exécute cette demande.

Entier

Netty

MaxConcurrency

Nombre maximal de demandes simultanées prises en charge par le client HTTP.

Pour les opérations HTTP/1, cela correspond au nombre maximum de connexions TCP que le client HTTP peut regrouper. Pour les opérations HTTP/2, cela correspond au nombre maximum de flux que le client HTTP peut regrouper.

Remarque : Cette valeur varie en fonction de l'implémentation du client HTTP :

  • Client Apache : la valeur s'applique à l'ensemble du client HTTP

  • Client Netty : la valeur s'applique par point de terminaison

  • AWS Client basé sur CRT : la valeur s'applique par point de terminaison

La valeur est limitée à une instance de client HTTP individuelle et exclut la simultanéité des autres clients HTTP de la même machine virtuelle Java.

Entier

Apache, Netty, CRT

PendingConcurrencyAcquires

Nombre de demandes en attente de simultanéité de la part du client HTTP.

Pour les opérations HTTP/1, cela correspond au nombre de demandes en attente d'établissement ou de retour d'une connexion TCP depuis le pool de connexions. Pour les opérations HTTP/2, cela correspond au nombre de requêtes en attente d'un nouveau flux (et éventuellement d'une nouvelle connexion HTTP/2) depuis le pool de connexions.

Remarque : Cette valeur varie en fonction de l'implémentation du client HTTP :

  • Client Apache : la valeur s'applique à l'ensemble du client HTTP

  • Client Netty : la valeur s'applique par point de terminaison

  • AWS Client basé sur CRT : la valeur s'applique par point de terminaison

La valeur est limitée à une instance de client HTTP individuelle et exclut la simultanéité des autres clients HTTP de la même machine virtuelle Java.

Entier

Apache, Netty, CRT

RemoteStreamWindowSize

Taille de la fenêtre HTTP/2 distante en octets pour le flux qui exécute cette demande.

Entier

Netty

* java.time.Duration.

Les termes utilisés dans la colonne signifient :