Invocación de funciones de localmente - AWS Serverless Application Model

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Invocación de funciones de localmente

Puede invocar la función de localmente utilizando lainvoca localy proporciona su identificador lógico de función y un archivo de eventos. Otra opción,sam local invoketambién aceptastdincomo evento. Para obtener más información acerca de los eventos, consulteEventoen laAWS LambdaGuía para desarrolladores. Para obtener más información sobre los formatos de mensajes de eventos de diferentesAWSservicios, consulteTrabajar con otros serviciosen laAWS LambdaGuía para desarrolladores.

nota

Lasam local invokeque se describe en esta sección corresponde a laAWS CLIcomandoaws lambda invoke. Puede utilizar cualquiera de las versiones de este comando para invocar una función Lambda que ha cargado en elAWSen la nube.

Debes ejecutarsam local invokeen el directorio de proyectos que contiene la función que desea que invoque.

Ejemplos:

# Invoking function with event file $ sam local invoke "Ratings" -e event.json # Invoking function with event via stdin $ echo '{"message": "Hey, are you there?" }' | sam local invoke --event - "Ratings" # For more options $ sam local invoke --help

Archivo de variables de entorno

Puede utilizar el--env-varsel argumento deinvokeostart-apicommands. Esto se hace para proporcionar un archivo JSON que contiene valores para anular las variables de entorno que ya están definidas en la plantilla de funciones. Puede estructurar el archivo de la siguiente manera:

{ "MyFunction1": { "TABLE_NAME": "localtable", "BUCKET_NAME": "testBucket" }, "MyFunction2": { "TABLE_NAME": "localtable", "STAGE": "dev" } }

Como alternativa, el archivo de entorno puede contener un únicoParametersentrada con las variables de entorno para todas las funciones. Tenga en cuenta que este formato no se puede combinar con el ejemplo anterior.

{ "Parameters": { "TABLE_NAME": "localtable", "BUCKET_NAME": "testBucket", "STAGE": "dev" } }

Guardar las variables de entorno en un archivo denominadoenv.json. El siguiente comando utiliza este archivo para anular las variables de entorno incluidas:

sam local invoke --env-vars env.json

Capas

Si la aplicación incluye capas, consulteTrabajar con capaspara obtener más información sobre cómo depurar problemas de capas en el host local.