invoca local - 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.

invoca local

Invocar a un localAWS Lambdafunciona una vez y se cierra una vez finalizada la invocación.

De forma predeterminada, cuando se utiliza este comando, elAWS SAMCLI supone que el directorio de trabajo actual es el directorio raíz de su proyecto. LaAWS SAMEn primer lugar, la CLI intenta localizar un archivo de plantilla creado mediante elsam build, que se encuentra en el.aws-samsubcarpeta y con nombretemplate.yamlotemplate.yml. A continuación, laAWS SAMCLI intenta localizar un archivo de plantilla denominadotemplate.yamlotemplate.ymlen el directorio de trabajo actual. Si especifica el--templateopción,AWS SAMEl comportamiento predeterminado de la CLI se anulará y se cargará precisamente esoAWS SAMplantilla y los recursos locales a los que apunta.

Para invocar una función de una aplicación o pila anidada, puede proporcionar el ID lógico de la aplicación o pila junto con el ID lógico de la función utilizando el formatoStackLogicalId/FunctionLogicalId.

Lasam local invokees útil para desarrollar funciones sin servidor que manejan eventos asíncrónicos, como Amazon Simple Storage Service (Amazon S3) o eventos de Amazon Kinesis. También puede ser útil si desea redactar un guión de casos de prueba. Puedes pasar en el cuerpo del evento utilizando el--eventparámetro. 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.

La salida en tiempo de ejecución (por ejemplo, registros) se genera enstderr, y el resultado de la función Lambda se envía astdout.

nota

Si hay más de una función definida en suAWS SAM, debe proporcionar laFUNCTION_LOGICAL_IDde la función que desea invocar.

Uso:

sam local invoke [OPTIONS] [FUNCTION_LOGICAL_ID]

Opciones:

Opción Descripción
-e, --event PATH El archivo JSON que contiene datos de eventos que se transfieren a la función Lambda cuando se invoca. Si no especifica esta opción, no se asume ningún evento. Para introducir JSON desdestdin, debe pasar el valor «-». Para obtener más información sobre los formatos de mensajes de eventos de diferentesAWSservicios, consulteTrabajar con otros serviciosen laAWS LambdaGuía para desarrolladores.
--no-event Invoca la función con un evento vacío.
-t, --template PATH LaAWS SAMArchivo de plantilla de.

Nota: Si especifica esta opción,AWS SAMcarga solo la plantilla y los recursos locales a los que apunta.

-n, --env-vars PATH El archivo JSON que contiene los valores de las variables de entorno de la función Lambda. Para obtener más información acerca de los archivos de variables de entorno, consulteArchivo de variables de entorno.
--parameter-overrides (Opcional) Cadena que contieneAWS CloudFormationreemplazos de parámetros codificados como pares clave-valor. Utiliza el mismo formato que elAWS Command Line Interface(AWS CLI). Por ejemplo: 'ParameterKey=KeyPairName,ParameterValue=MyKey ParameterKey=InstanceType,ParameterValue=t1.micro».
-d, --debug-port TEXT Cuando se especifica, inicia el contenedor de funciones Lambda en modo de depuración y expone este puerto en el host local.
--debugger-path TEXT Ruta de host a un depurador que está montado en el contenedor Lambda.
--debug-args TEXT Argumentos adicionales que se pasan al depurador.
-v, --docker-volume-basedir TEXT La ubicación del directorio base en el que seAWS SAMel archivo existe. Si Docker se está ejecutando en un equipo remoto, debe montar la ruta donde elAWS SAMexiste en el equipo Docker y modifica este valor para que coincida con el equipo remoto.
--docker-network TEXT El nombre o ID de una red Docker existente a la que deben conectarse los contenedores de Lambda Docker, junto con la red en modo puente predeterminada. Si no se especifica, los contenedores Lambda de se conectan solo a la red Docker en modo puente predeterminada.
--container-env-vars (Opcional) Transfiera variables de entorno al contenedor de imágenes de la función Lambda al depurar localmente.
-l, --log-file TEXT El archivo de registro al que enviar registros en tiempo de ejecución.
--layer-cache-basedir DIRECTORY Especifica la ubicación del directorio base en el que se descargan las capas que utiliza la plantilla.
--skip-pull-image Especifica si elAWS SAMLa CLI debería omitir la extracción de la última imagen de Docker para el tiempo de ejecución de Lambda.
--force-image-build Especifica si elAWS SAMLa CLI debe regenerar la imagen utilizada para invocar funciones Lambda con capas.
--invoke-image TEXT

URI de la imagen de contenedor que desea utilizar para la invocación de funciones locales. Por defecto,AWS SAMExtracción de la imagen del contenedor de Amazon ECR Public. Utilice esta opción para extraer la imagen de otra ubicación.

Por ejemplo, sam local invoke MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8.

--profile TEXT El perfil específico del archivo de credenciales que obtieneAWSCredenciales de .
--region TEXT LaAWSRegión en la que desea implementar. Por ejemplo, us-east-1.
--config-file PATH Ruta y nombre de archivo del archivo de configuración que contiene los valores de parámetros predeterminados que se utilizarán. El valor predeterminado es»samconfig.toml«en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulte AWS SAMArchivo de configuración de la CLI.
--config-env TEXT El nombre del entorno que especifica los valores de parámetros predeterminados en el archivo de configuración que se va a utilizar. El valor predeterminado es «default». Para obtener más información sobre los archivos de configuración, consulte AWS SAMArchivo de configuración de la CLI.
--shutdown Emula un evento de apagado una vez finalizada la invocación, para probar el manejo de extensiones del comportamiento de apagado.
--container-host TEXT Anfitrión de contenedores Lambda emulados localmente. El valor predeterminado es localhost. Si quieres correrAWS SAMCLI en un contenedor Docker en macOS, puede especificarhost.docker.internal. Si desea ejecutar el contenedor en un host distinto deAWS SAMCLI, puede especificar la dirección IP del host remoto.
--container-host-interface TEXT Dirección IP de la interfaz de red host a la que deben vincularse los puertos de contenedor. El valor predeterminado es 127.0.0.1. Usar0.0.0.0para enlazar a todas las interfaces.
--debug Activa el registro de depuración para imprimir mensajes de depuración que elAWS SAMCLI genera y muestra marcas de hora.
--help Muestra este mensaje y cierra.