Comment résoudre les problèmes liés aux échec de la fonction Lambda ?

Date de la dernière mise à jour : 16/10/2019

Lorsque j'exécute ma fonction AWS Lambda, elle échoue avec une erreur. Comment éliminer ces erreurs ?

Brève description

Les échecs de la fonction Lambda sont généralement ont généralement les causes suivantes :

  • Problèmes d'autorisations
  • Problèmes de code
  • Problèmes de réseau
  • Limitation
  • Erreurs d'appel d'API 500 et 502

En fonction de votre code Lambda et de votre configuration, vous pouvez utiliser ces services et fonctionnalités AWS pour déterminer la cause :

Passez en revue les types de problèmes courants suivants pour déterminer le service ou la fonctionnalité à utiliser et savoir où trouver plus d'informations et des instructions de résolution des problèmes.

Solution

Problèmes d'autorisations

CloudTrail capture les appels d'API dans votre compte AWS en tant qu'événements. Lorsque l'appel de votre fonction Lambda ne échoue, vérifiez les entrées de journal CloudTrail de Lambda.

Le demandeur effectuant des appels à Lambda doit disposer des autorisations AWS Identity and Access Management (IAM) requises pour appeler votre fonction. Si le demandeur n'a pas accès, mettez à jour les autorisations de votre fonction Lambda pour lui accorder l'accès. Pour plus d'informations, consultez Résolution des problèmes liés à AWS Lambda Identity and Acces.

Problèmes de code

CloudWatch Logs

Pour plus d'informations sur l'échec de votre fonction Lambda, consultez les journaux Lambda dans CloudWatch. Pour plus d'informations, consultez les instructions de journalisation du langage de programmation que vous utilisez :

X-Ray

Si votre fonction Lambda utilise des ressources, des microservices, des bases de données AWS en aval ou des API Web HTTP, utilisez X-Ray pour vous aider à résoudre les problèmes.

Dépendances

Si le package de déploiement de votre fonction Lambda inclut des dépendances, assurez-vous que votre code peut les importer. Pour plus d'informations, consultez ces instructions correspondant au langage de programmation que vous utilisez :

Vous pouvez également utiliser des couches Lambda pour ajouter des dépendances en dehors de votre package de déploiement.

Problèmes de réseau

Si votre fonction Lambda est connectée à un Amazon Virtual Private Cloud (Amazon VPC), assurez-vous que tout est correctement configuré. Pour plus d'informations, consultez Configuration d'une fonction Lambda pour accéder aux ressources dans un VPC.

Si votre fonction Lambda activée pour Amazon VPC doit effectuer des appels vers Internet, veillez à lui accorder un accès Internet.

Limitation

Si l'entrée des demandes est plus rapide que la capacité de dimensionnement de votre fonction ou que les demandes atteignent la simultanéité maximale que vous avez définie, les demandes échouent avec l'erreur de limitation 429. Pour plus d'informations, consultezDimensionnement d'une fonction AWS Lambda.

Pour faciliter l'identification de la cause, surveillez les métriques Lambda ConcurrentExecutions, UnreservedConcurrentExecutions et Throttles à l'aide de CloudWatch. Pour plus d'informations, consultez Métriques AWS Lambda CloudWatch.

Erreurs 502 et 500 d'appel d'API

Si votre fonction Lambda échoue avec une erreur de serveur 502 ou 500, consultez ces instructions de résolution des problèmes.

Pour obtenir la liste des erreurs possibles avec les descriptions, consultez Erreurs dans la référence de l'API Invoke Lambda.