Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Solucionar problemas de invocación en Lambda

Modo de enfoque
Solucionar problemas de invocación en Lambda - AWS Lambda

Cuando invoca una función de Lambda, Lambda valida la solicitud y comprueba la capacidad de escalado antes de enviar el evento a su función o, para la invocación asíncrona, a la cola de eventos. Los errores de invocación pueden deberse a problemas con los parámetros de solicitud, la estructura de eventos, la configuración de funciones, los permisos de usuario, los permisos de recursos o los límites.

Si invoca su función directamente, verá errores de invocación en la respuesta de Lambda. Si invoca la función de forma asíncrona, con una asignación de origen de eventos o a través de otro servicio, es posible que encuentre errores en los registros, una cola de mensajes fallidos o un destino de evento fallido. Las opciones de manejo de errores y el comportamiento de reintento varían en función de cómo invoque la función y del tipo de error.

Para obtener una lista de los tipos de error que la operación Invoke puede regresar, consulte Invocar.

Lambda: se agota el tiempo de espera de la función durante la fase Init (Sandbox.Timedout)

Error: tiempo de espera de la tarea agotado tras 3,00 segundos

Cuando se agota el tiempo de espera de la fase Init, Lambda vuelve a inicializar el entorno de ejecución y vuelve a ejecutar la fase Init cuando llega la siguiente solicitud de invocación. Esto se denomina inicio suprimido. Sin embargo, si la función está configurada con un tiempo de espera corto (generalmente alrededor de 3 segundos), es posible que el inicio suprimido no se complete durante el tiempo de espera asignado, lo que provocará que vuelva a agotarse el tiempo de espera de la fase Init. Como alternativa, el inicio suprimido se completa, pero no deja suficiente tiempo para que se complete la fase Invoke, lo que hace que se agote el tiempo de espera de la fase Invoke.

Para reducir los errores de tiempo de espera, utilice una de las siguientes estrategias:

  • Aumento del tiempo de espera de la función: amplíe el tiempo de espera para que las fases Init y Invoke se completen correctamente.

  • Aumento de la asignación de memoria de la función: más memoria también significa una asignación de CPU más proporcional, lo que puede acelerar tanto la fase Init como la fase Invoke.

  • Optimización del código de inicialización de la función: reduzca el tiempo necesario para la inicialización para garantizar que las fases Init y Invoke se completen dentro del tiempo de espera configurado.

  • Adición de gestión de errores: una gestión adecuada de los errores en el código de la función puede impedir que el entorno de ejecución de Lambda falle y desencadene intentos de inicialización repetidos.

IAM: lambda:InvokeFunction no autorizado

Error: User: arn:aws:iam::123456789012:user/developer is not authorized to perform: lambda:InvokeFunction on resource: my-function

El usuario o el rol que usted asume necesita permiso para invocar una función. Este requisito también se aplica a las funciones de Lambda y a otros recursos informáticos que invocan funciones. Agregue la política administrada de AWS AWSLambdaRole a su usuario o agregue una política personalizada que le permita la acción lambda:InvokeFunction en la función de destino.

nota

El nombre de la acción de IAM (lambda:InvokeFunction) hace referencia a la operación de la API de Lambda Invoke.

Para obtener más información, consulte Administrar permisos en AWS Lambda.

Lambda: no se encontró un arranque válido (Runtime.InvalidEntrypoint)

Error: no se encontraron los arranques válidos: [/var/task/bootstrap/opt/bootstrap]

Este error suele ocurrir cuando la raíz del paquete de implementación no contiene un archivo ejecutable denominado bootstrap. Por ejemplo, si va a implementar una función de provided.al2023 con un archivo .zip, el archivo de bootstrap debe estar en la raíz del archivo .zip, no en un directorio.

Lambda: no se puede realizar la operación ResourceConflictException

Error: ResourceConflictException: la operación no se puede realizar en este momento. La función se encuentra actualmente en el siguiente estado: Pending (Pendiente)

Cuando conecta una función a una nube virtual privada (VPC) en el momento de la creación, la función entra en un estado Pending mientras Lambda crea interfaces de redes elásticas. Durante este tiempo, no puede invocar o modificar su función. Si conecta su función a una VPC después de la creación, puede invocarla mientras la actualización esté pendiente, pero no podrá modificar su código o configuración.

Para obtener más información, consulte Estados de función de Lambda.

Lambda: la función está atascada en Pendiente

Error: una función está bloqueada en el estado Pending durante varios minutos.

Si una función queda atascada en el estado Pending durante más de seis minutos, llame a una de las siguientes operaciones de API para desbloquearla.

Lambda cancela la operación pendiente y pone la función en el estado Failed. Luego, puede intentar realizar otra actualización.

Lambda: una función utiliza toda la concurrencia

Problema: Una función utiliza toda la concurrencia disponible, lo que hace que otras funciones se limiten.

Para dividir la concurrencia disponible en una cuenta de AWS de una región de AWS en grupos, utilice concurrencia reservada. La concurrencia reservada garantiza que una función siempre puede escalar a su concurrencia asignada, y que no escalará más allá de su concurrencia asignada.

General: no se puede invocar la función con otras cuentas o servicios

Problema: puede invocar la función directamente, pero esta no se ejecuta cuando otro servicio o cuenta la invoca.

Puede conceder permisos a otros servicios y cuentas para invocar una función en la política basada en recursos de la función. Si el usuario que invoca la función está en otra cuenta, ese usuario también necesita permiso para invocar funciones.

General: la invocación de funciones está en bucle

Problema: la función se invoca continuamente en bucle.

Esto suele ocurrir cuando la función administra recursos en el mismo servicio de AWS que lo activa. Por ejemplo, es posible crear una función que almacene un objeto en un bucket de Amazon Simple Storage Service (Amazon S3) configurado con una notificación que invoca la función de nuevo. Para evitar que la función se ejecute, reduzca la simultaneidad disponible a cero, lo que limita todas las invocaciones futuras. A continuación, identifique la ruta de acceso del código o el error de configuración que provocó la invocación recursiva. Lambda detecta y detiene de forma automática los bucles recursivos en algunos SDK y servicios de AWS. Para obtener más información, consulte Utilice la detección de bucles recursivos de Lambda para evitar bucles infinitos.

Lambda: enrutamiento de alias con concurrencia aprovisionada

Problema: Invocaciones de casos de superación de simultaneidad aprovisionadas durante el enrutamiento de alias.

Lambda utiliza un modelo probabilístico simple para distribuir el tráfico entre las dos versiones de funciones. En niveles de tráfico bajos, es posible que vea una gran variación entre el porcentaje configurado y el porcentaje real de tráfico en cada versión. Si su función utiliza la concurrencia aprovisionada, puede evitar Invocaciones de casos de superación configurando un mayor número de instancias de simultaneidad aprovisionadas durante el tiempo en que el enrutamiento de alias está activo.

Lambda: comienza en frío con concurrencia aprovisionada

Problema: Verá inicios en frío después de habilitar la concurrencia aprovisionada.

Cuando el número de ejecuciones simultáneas en una función es menor o igual que el nivel configurado de concurrencia aprovisionada, no debería haber ningún comienzo frío. Para ayudarle a confirmar si la concurrencia aprovisionada funciona normalmente, haga lo siguiente:

  • Comprobar que la concurrencia aprovisionada esté habilitada en la versión o alias de la función.

    nota

    La simultaneidad aprovisionada no es compatible con la versión no publicada de la función ($LATEST).

  • Asegúrese de que los desencadenadores invoquen la versión o alias de función correctos. Por ejemplo, si está utilizando Amazon API Gateway, compruebe que API Gateway invoca la versión de la función o alias con concurrencia aprovisionada, no $LATEST. Para confirmar que se está utilizando la concurrencia aprovisionada, puede comprobar la métrica ProvisionedConcurrcyInvocations de Amazon CloudWatch. Un valor distinto de cero indica que la función está procesando invocaciones en entornos de ejecución inicializados.

  • Determine si la concurrencia de funciones excede el nivel configurado de concurrencia aprovisionada comprobando la métrica ProvisionedConcurrencySpilloverInvocations de CloudWatch. Un valor distinto de cero indica que toda la concurrencia aprovisionada está en uso y que se ha producido alguna invocación con un inicio en frío.

  • Compruebe su frecuencia de invocación (solicitudes por segundo). Las funciones con concurrencia aprovisionada tienen una tasa máxima de 10 solicitudes por segundo por concurrencia aprovisionada. Por ejemplo, una función configurada con 100 concurrencia aprovisionada puede manejar 1000 solicitudes por segundo. Si la tasa de invocación supera las 1000 solicitudes por segundo, pueden producirse algunos inicios en frío.

Lambda: el frío comienza con nuevas versiones

Problema: Verá arranques en frío al implementar nuevas versiones de su función.

Cuando actualiza un alias de función, Lambda cambia automáticamente la concurrencia aprovisionada a la nueva versión en función de los pesos configurados en el alias.

Error: KMSDisabledException: Lambda no pudo descifrar las variables de entorno porque la clave KMS utilizada está deshabilitada. Compruebe la configuración de claves de KMS de la función.

Este error puede producirse si su clave AWS Key Management Service (AWS KMS) está deshabilitada o si se revoca la concesión que permite a Lambda utilizar la clave. Si falta la concesión, configure la función para utilizar una clave diferente. Luego, reasigne la clave personalizada para volver a crear la concesión.

EFS: la función no pudo montar el sistema de archivos EFS

Error: EFSMountFailureException: la función no pudo montar el sistema de archivos de EFS con el punto de acceso arn:aws:elasticfilesystem:us-east-2:123456789012:access-point/fsap-015cxmplb72b405fd.

Se rechazó la solicitud de montaje en el sistema de archivos de la función. Compruebe los permisos de la función y confirme que su sistema de archivos y su punto de acceso existen y están listos para su uso.

EFS: la función no se pudo conectar al sistema de archivos EFS

Error: EFSMountConnectivityException: la función no se pudo conectar al sistema de archivos de Amazon EFS con el punto de acceso arn:aws:elasticfilesystem:us-east-2:123456789012:access-point/fsap-015cxmplb72b405fd. Compruebe la configuración de la red y vuelva a intentarlo.

La función no pudo establecer una conexión con el sistema de archivos de la función con el protocolo NFS (puerto TCP 2049). Compruebe el grupo de seguridad y la configuración de enrutamiento de las subredes de la VPC.

Si aparecen estos errores después de actualizar los ajustes de configuración de la VPC de la función, intente desmontar y volver a montar el sistema de archivos.

EFS: La función no pudo montar el sistema de archivos EFS debido al tiempo de espera

Error: EFSMountTimeoutException: la función no pudo montar el sistema de archivos EFS con el punto de acceso {arn:aws:elasticfilesystem:us-east-2:123456789012:access-point/fsap-015cxmplb72b405fd} debido a que se agotó el tiempo de espera del montaje.

La función pudo conectarse al sistema de archivos de la función, pero se agotó el tiempo de espera de la operación de montaje. Vuelva a intentarlo después en un tiempo corto y considere limitar la concurrencia de la función para reducir la carga en el sistema de archivos.

Lambda: Lambda detectó un proceso de E/S que estaba tomando demasiado tiempo

EFSIOException: esta instancia de función se detuvo porque Lambda detectó un proceso de E/S que estaba tardando demasiado.

Se agotó el tiempo de espera de una invocación anterior y Lambda no pudo finalizar el controlador de funciones. Este problema puede producirse cuando un sistema de archivos adjunto se queda sin créditos de ráfaga y el rendimiento previsto es insuficiente. Para aumentar el rendimiento, puede aumentar el tamaño del sistema de archivos o utilizar el rendimiento aprovisionado.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.