J'ai configuré la simultanéité allouée pour ma fonction AWS Lambda, mais elle n'a pas pu être déployée avec une erreur « FUNCTION_ERROR_INIT_FAILURE ».
Brève description
Les raisons suivantes peuvent être à l'origine d'un échec après avoir configuré la simultanéité allouée pour votre fonction Lambda :
- Vous avez peut-être invoqué la fonction Lambda avec la version $LATEST de Lambda au lieu de la version avec la simultanéité allouée configurée.
- Toute la simultanéité allouée est utilisée, de sorte que votre fonction Lambda est invoquée avec la simultanéité standard. Cela provoque des démarrages à froid.
- Votre compte a dépassé sa limite de transmission en rafales.
- Des variables d'environnement sont manquantes ou incompatibles ou des problèmes liés au code de la fonction Lambda sont survenus.
- Le service Lambda ne parvient pas à accéder au code de fonction ou à l'invoquer. Par exemple, les paramètres d'autorisations ont peut-être été modifiés afin que Lambda ne puisse plus accéder à votre code de fonction dans Amazon Elastic Container Registry (Amazon ECR).
Résolution
Procédez comme suit pour résoudre les problèmes liés à la simultanéité allouée :
- Vérifiez que la fonction Lambda que vous utilisez pour configurer la simultanéité allouée n'est pas définie sur $LATEST. Les versions inédites des fonctions Lambda ne prennent pas en charge la simultanéité allouée. Pour plus d'informations, consultez les sections Versions de la fonction Lambda et Configuration de la simultanéité allouée.
- Dans la configuration de votre fonction Lambda, vérifiez que votre simultanéité allouée affiche le statut Prêt.
- Utilisez Amazon CloudWatch pour consulter tous les journaux générés par votre code de fonction afin d'identifier les problèmes potentiels. Pour plus d'informations, consultez la section Utilisation des journaux CloudWatch Logs avec Lambda.
- Sur la page Métriques de la console CloudWatch, vérifiez la métrique ProvisionedConcurrencySpilloverInvocations. Cette métrique indique le nombre de fois que votre fonction Lambda s'exécute avec la simultanéité standard lorsque toute la simultanéité allouée est utilisée.
- Déployez la fonction sans configurer la simultanéité allouée. Puis, testez la fonction Lambda.
- Vérifiez si la simultanéité réservée est configurée pour la fonction Lambda. La simultanéité réservée limite la capacité de mise à l’échelle ascendante d'une fonction.
Si les étapes précédentes n’ont pas permis de résoudre votre problème, contactez AWS Support. Incluez les informations suivantes dans votre dossier de support :
- L’ARN de la fonction Lambda.
- Le flux de travail sur la configuration de la fonction Lambda avec tous les services inclus.
- Informations indiquant si le problème est intermittent ou continu.
- Remplissez les journaux CloudWatch au format .txt à partir du moment où le problème est survenu. Ces journaux CloudWatch sont utilisés pour identifier les erreurs de la fonction Lambda, notamment les problèmes de délai d'expiration, les durées d'initialisation et les problèmes d'autorisations.
- Horodatage exact du problème avec le fuseau horaire ou l'horodatage en UTC.
Remarque : Les représentants d'AWS Support n'ont pas accès aux journaux CloudWatch des clients pour des raisons de sécurité et de confidentialité.
Pour plus d'informations sur la résolution des problèmes, consultez la section Lambda : démarrage à froid avec les nouvelles versions.
Remarque : Contrairement à la simultanéité réservée, vous encourez des coûts supplémentaires lorsque vous utilisez la simultanéité allouée. Consultez la section Tarification d'AWS Lambda pour en savoir plus sur les coûts de la simultanéité allouée. Pour maintenir les coûts de la simultanéité allouée à un faible niveau, il est recommandé de planifier l'utilisation de la simultanéité allouée pour votre organisation. Pour plus d'informations, consultez la section Planification de la simultanéité allouée par AWS Lambda pour les pics d'utilisation récurrente.
Informations connexes
Résoudre les problèmes d'invocation dans Lambda