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.
Résolution des problèmes liés aux règles de routage
Les conseils suivants peuvent vous aider à résoudre les problèmes liés à votre règles de routage.
Je ne peux pas dire comment API Gateway a envoyé du trafic à mon APIs
Vous pouvez utiliser les journaux d’accès de l’étape de votre API REST afin d’enregistrer et de résoudre les problèmes liés à vos règles de routage. Vous pouvez consulter l’ID de la règle de routage utilisée par API Gateway pour envoyer le trafic à votre API à l’aide de la variable $context.customDomain.routingRuleIdMatched. Pour afficher le mappage d’API utilisé par API Gateway pour envoyer le trafic à votre API, utilisez la variable $context.customDomain.basePathMatched. 
Pour enregistrer vos règles de routage, vous devez configurer un ARN de rôle CloudWatch Logs approprié pour votre compte et créer un groupe de journaux.
L’exemple de groupe de journaux d’accès suivant récupère les informations pertinentes pour résoudre les problèmes liés aux règles de routage et aux mappages d’API. API Gateway renseigne uniquement la variable context correspondant au mécanisme de routage utilisé. Sinon, la variable context est -. 
Nous vous recommandons également de vérifier le mode de routage de votre nom de domaine personnalisé. Pour de plus amples informations, veuillez consulter Définition du mode de routage de votre nom de domaine personnalisé.
Je ne parviens pas à activer les règles de routage de mon nom de domaine personnalisé
API Gateway peut vous envoyer l’erreur suivante :
Your account doesn’t have permission to use RoutingRules. This might be caused by an IAM policy in your account with a deny statement on BasePathMapping or ApiMapping. To grant permission for this account to use RoutingRules, use the UpdateAccount API. This will impact any existing IAM policies that deny access to BasePathMapping or ApiMapping. See API Gateway documentation for further details.
Vous recevrez cette erreur si vous avez ou avez eu une politique IAM qui refuse l'accès à BasePathMappingou ApiMapping. Lorsque vous activez les règles de routage d’un nom de domaine personnalisé, même si votre politique continue de refuser l’accès à BasePathMapping ou ApiMapping, celle-ci peut être utilisée pour accéder à RoutingRule. L’utilisateur peut ainsi modifier le comportement de routage de votre nom de domaine personnalisé.
Par exemple, si vous aviez une politique comme suit :
{ "Sid": "DenyCreatingApiMappings", "Effect": "Deny", "Action": "apigateway:POST", "Resource": [ "arn:aws:apigateway:us-west-2::/domainnames/example.com/apimappings" ] }
Si vous activez les règles de routage pour example.com, cette politique continuera à refuser l’accès à la création d’un ApiMapping, mais ne refusera pas l’accès à la création d’une RoutingRule.
Nous vous recommandons d’auditer les politiques IAM de votre compte. L’exemple de politique suivant refuse l’accès à la création d’un ApiMapping, d’un BasePathMapping et d’une RoutingRule :
{ "Sid": "DenyCreatingBasePathMappingsApiMappings", "Effect": "Deny", "Action": "apigateway:POST", "Resource": [ "arn:aws:apigateway:us-west-2::/domainnames/example.com/basepathmappings", "arn:aws:apigateway:us-west-2::/domainnames/example.com/apimappings" ] }, { "Sid": "DenyCreatingRoutingRules", "Effect": "Deny", "Action": "apigateway:CreateRoutingRule", "Resource": [ "arn:aws:apigateway:us-west-2:111122223333:/domainnames/example.com/routingrules/*" ] }
Après avoir vérifié que toutes vos politiques ont été mises à jour, vous pouvez mettre à jour les paramètres au niveau du compte de votre API afin d’activer les règles de routage pour une région.
Utilisez la commande update-account suivante pour mettre à jour les paramètres au niveau du compte de votre API pour une région :
aws apigateway update-account --patch-operations 'op=remove,path=/features,value=BlockedForRoutingRules' --regionus-west-2
Après avoir mis à jour les paramètres au niveau du compte de votre API, vous pouvez modifier le mode de routage de votre nom de domaine personnalisé. Vous pouvez également continuer à utiliser des politiques IAM pour refuser l’accès aux RoutingRules, au ApiMapping ou au BasePathMapping.