Configuration de règles d'échantillonnage AWS X-Ray pour les API d'API Gateway
Vous pouvez utiliser la console AWS X-Ray ou un kit SDK pour configurer des règles d'échantillonnage pour votre API d'Amazon API Gateway. Une règle d'échantillonnage spécifie quelles demandes X-Ray doit enregistrer pour votre API. En personnalisant les règles d'échantillonnage, vous pouvez contrôler la quantité de données que vous enregistrez, et modifier le comportement d'échantillonnage à la volée, sans modifier ni redéployer votre code.
Avant de spécifier vos règles d'échantillonnage X-Ray, veuillez consulter les rubriques suivantes dans le Manuel du développeur X-Ray :
Rubriques
Valeurs des options de règle d'échantillonnage X-Ray pour les API API Gateway
Les options d'échantillonnage X-Ray suivantes sont pertinentes pour API Gateway. Les valeurs de chaîne peuvent comporter des caractères génériques pour correspondre à un seul caractère (?) ou à zéro caractère ou plus (*). Pour plus de détails, et pour obtenir une explication détaillée de l'utilisation des paramètres Reservoir (Réservoir) et Rate (Fréquence), consultez la section Configuration de règles d'échantillonnage dans la console AWS X-Ray.
-
Rule name (Nom de la règle) (chaîne) : nom unique de la règle.
-
Priority (Priorité) (nombre entier compris entre 1 et 9999) : priorité de la règle d'échantillonnage. Les services évaluent les règles dans l'ordre croissant de priorité, et prennent une décision d'échantillonnage avec la première règle correspondante.
-
Reservoir (Réservoir) (entier non négatif) : nombre fixe de demandes correspondantes à instrumenter par seconde, avant d'appliquer la fréquence fixe. Le réservoir n'est pas utilisé directement par les services, mais s'applique à tous les services qui utilisent la règle collectivement.
-
Rate (Fréquence) (nombre compris entre 0 et 100) : pourcentage de demandes correspondantes à instrumenter une fois que le réservoir est épuisé.
-
Service name (Nom du service) (chaîne) : nom de l'étape d'API, sous la forme
. Par exemple, si vous deviez déployer l'exemple d'API PetStore sur une étape nommée{api-name}
/{stage-name}
test
, la valeur à spécifier pour Service name (Nom du service) dans votre règle d'échantillonnage seraitpets/test
. -
Service type (Type de service) (chaîne) : pour une API API Gateway, vous pouvez spécifier
AWS::ApiGateway::Stage
ouAWS::ApiGateway::*
. -
Host (Hôte) (chaîne) : nom d'hôte de l'en-tête d'hôte HTTP. Définissez cette valeur sur
*
pour l'associer à tous les noms d'hôte. Vous pouvez également spécifier tout ou partie d'un nom d'hôte pour le faire correspondre (par exemple,api.example.com
ou*.example.com
). -
Resource ARN (ARN de la ressource) (chaîne) : ARN de l'étape de l'API, au format ; par exemple,
arn:aws:apigateway:
.region
::/restapis/api-id
/stages/stage-name
Le nom de l'étape peut être obtenu à partir de la console ou de l'interface de ligne de commande ou de l'API API Gateway. Pour plus d'informations sur les formats ARN, consultez Référence générale d'Amazon Web Services.
-
HTTP method (Méthode HTTP) (chaîne) : la méthode à échantillonner (par exemple,
GET
). -
URL path (Chemin URL) (chaîne) : chemin URL de la demande.
-
(facultatif) Attributes (Attributs) (clé et valeur) : en-têtes de la demande HTTP d'origine (par exemple,
Connection
,Content-Length
ouContent-Type
). Chaque attribut peut contenir jusqu'à 32 caractères.
Exemples de règles d'échantillonnage X-Ray
Exemple de règle d'échantillonnage n°1
Cette règle échantillonne toutes les requêtes GET
pour l'API testxray
à l'étape test
.
-
Nom de la règle —
test-sampling
-
Priorité —
17
-
Taille du réservoir —
10
-
Fréquence fixe —
10
-
Nom du service —
testxray/test
-
Type de service —
AWS::ApiGateway::Stage
-
Méthode HTTP —
GET
-
ARN de la ressource —
*
-
Hôte —
*
Exemple de règle d'échantillonnage n°2
Cette règle échantillonne toutes les requêtes pour l'API testxray
à l'étape prod
.
-
Nom de la règle —
prod-sampling
-
Priorité —
478
-
Taille du réservoir —
1
-
Fréquence fixe —
60
-
Nom du service —
testxray/prod
-
Type de service —
AWS::ApiGateway::Stage
-
Méthode HTTP —
*
-
ARN de la ressource —
*
-
Hôte —
*
-
Attributs —
{}