Comment utiliser un runbook SAW pour résoudre les erreurs d'appel HTTP d'API Gateway ?

Lecture de 3 minute(s)
0

Je souhaite résoudre les erreurs d'Amazon API Gateway à l'aide du runbook AWSSupport-TroubleshootAPIGatewayHttpErrors AWS Support Automation Workflow (SAW).

Brève description

Le runbook AWSSupport-TroubleshootAPIGatewayHttpErrors est une solution automatisée qui permet de détecter et de résoudre les erreurs liées aux requêtes HTTP d'API Gateway. Si votre API est configurée pour enregistrer toutes les demandes de ressources et de méthodes, vous pouvez utiliser ce runbook pour résoudre les erreurs 4xx et 5xx.

Pour en savoir plus sur la configuration de la journalisation, veuillez consulter la section Configuration de la journalisation CloudWatch pour une API REST dans API Gateway.

Pour en savoir plus sur SAW, consultez la page AWS Support Automation Workflows (SAW).

Résolution

Le runbook AWSSupport-TroubleshootAPIGatewayHttpErrors valide l'API, la ressource, la méthode et l'étape avant de tenter de récupérer et d'analyser Amazon CloudWatch Logs.

L'utilisateur actuel ou la fonction du service AWS Identity and Access Management (IAM) assumée qui exécute l'automatisation doit disposer des autorisations suivantes :

  • apigateway:GET
  • logs:GetQueryResults
  • logs:StartQuery
  • ssm:DescribeAutomationExecutions
  • ssm:GetAutomationExecution
  • ssm:DescribeAutomationStepExecutions
  • ssm:StartAutomationExecution
  • ssm:DescribeDocument
  • ssm:GetDocument
  • ssm:ListDocuments

Prérequis

Avant d'exécuter le runbook, assurez-vous que votre utilisateur ou rôle IAM dispose des autorisations appropriées. Celles-ci incluent des autorisations spécifiques liées à AWS Systems Manager, ainsi que les autorisations supplémentaires en fonction des services décrits plus haut.

Exécution de l'automatisation AWSSupport-TroubleshootAPIGatewayHttpErrors

  1. Ouvrez le runbook AWSSupport-TroubleshootAPIGatewayHttpErrors.
    **Remarque :**Le runbook appartient à la région AWS us-east-1.

  2. Sélectionnez Exécuter l'automatisation.

    Saisissez les informations suivantes dans les paramètres d'entrée :

    • RestAPId (obligatoire) : l'ID d'API de l'API qui nécessite un dépannage.
    • StageName (obligatoire) : le nom de l'étape déployée.
    • ResourcePath (obligatoire) : le chemin des ressources de la méthode.
    • HttpMethod (obligatoire) : la méthode pour le chemin de ressource configuré.
    • StartTime (obligatoire) : la date et l’heure de début de l'interrogation de CloudWatch Logs. Le format doit être YYYY-MM-DDTHH:mm:ss et le fuseau horaire doit être UTC.
    • EndTime (obligatoire) : la date et l’heure de fin de l'interrogation de CloudWatch Logs. Le format doit être YYYY-MM-DDTHH:mm:ss et le fuseau horaire doit être UTC.
    • AccessLogs (obligatoire) : veuillez indiquer si les journaux d'accès sont analysés.
    • ExecutionID (facultatif) : l’ID d'exécution de la demande qui présente des erreurs.
    • AutomationAssumeRole (facultatif) : il s'agit du nom de ressource ARN (Amazon Resource Name) du rôle IAM qui permet à Automation, une fonctionnalité de Systems Manager, d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Automation utilise les autorisations de l'utilisateur qui lance le runbook.
  3. Sélectionnez Exécuter. L'automatisation démarre.

  4. Une fois l'automatisation terminée, consultez la section Sorties pour obtenir des résultats détaillés.

Remarque : même si aucun journal n'est trouvé, le runbook s'exécute correctement.