

 AWS Cloud9 ya no está disponible para nuevos clientes. Los clientes existentes de AWS Cloud9 pueden seguir utilizando el servicio con normalidad. [Más información](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

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.

# Cómo trabajar AWS SAM con el AWS kit de herramientas
<a name="serverless-apps-toolkit"></a>

El AWS kit de herramientas proporciona soporte para aplicaciones [sin servidor](https://aws.amazon.com/serverless/). Con el AWS kit de herramientas, puede crear aplicaciones sin servidor que contengan [AWS Lambda](https://aws.amazon.com/lambda/)funciones y, a continuación, implementar las aplicaciones en una pila. AWS CloudFormation 

## Creación de una aplicación sin servidor
<a name="sam-create"></a>

En este ejemplo se muestra cómo utilizar el AWS kit de herramientas para crear una aplicación sin servidor. Para obtener información sobre cómo ejecutar y depurar aplicaciones sin servidor, consulte [Ejecución y depuración de aplicaciones sin servidor](#sam-run-debug).

Los requisitos previos necesarios para crear una aplicación sin servidor son la **CLI de AWS SAM ** y la **CLI de AWS **. Se incluyen en. AWS Cloud9 Si la AWS SAM CLI no está instalada o si está desactualizada, es posible que deba ejecutar una instalación o actualización. Para obtener instrucciones sobre cómo instalar la AWS SAM CLI, consulte [Instalación de la AWS SAM CLI](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html#install-sam-cli-instructions) y, para obtener instrucciones sobre cómo actualizar la AWS SAM CLI, consulte [Actualización de la AWS SAM CLI](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/manage-sam-cli-versions.html#manage-sam-cli-versions-upgrade).

### Cree una aplicación sin servidor con el kit de herramientas AWS
<a name="create-serverless-app"></a>

[En este ejemplo se muestra cómo crear una aplicación sin servidor con el AWS kit de herramientas mediante ().AWS Serverless Application ModelAWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/what-is-sam.html)

1. En el **Explorador de AWS **, haga clic con el botón derecho en el nodo **Lambda** y, a continuación, elija **Create Lambda SAM Application** (Crear aplicación de SAM de Lambda). 
**nota**  
También puede seleccionar el icono de menú situado en el encabezado del **Explorador de AWS** y elegir **Create Lambda SAM Application** (Crear aplicación de SAM de Lambda).

1. Elija el tiempo de ejecución para su aplicación de SAM. Para este ejemplo, elija **nodejs12.x**.
**nota**  
Si selecciona uno de los tiempos de ejecución con "(Imagen)", su aplicación es el tipo de paquete `Image`. Si selecciona uno de los tiempos de ejecución sin "(Imagen)", su aplicación es el tipo `Zip`. Para obtener más información acerca de la diferencia entre los tipos de paquetes `Image` y `Zip`, consulte [Paquetes de implementación de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) en la *Guía para desarrolladores de AWS Lambda *.

1. Elija una de las siguientes plantillas para la aplicación sin servidor:
   + **AWS SAM Hello World**: plantilla básica con una función Lambda que devuelve el clásico mensaje «Hello World».
   + **AWS Aplicación de muestra Step Functions**: una aplicación de muestra que ejecuta un flujo de trabajo de negociación de acciones. Step Functions orquesta las interacciones de las funciones de Lambda que están involucradas. 

1. Elija una ubicación para el nuevo proyecto. Si hay una disponible, puede seleccionar una carpeta de espacio de trabajo existente. De lo contrario, busque otra carpeta. Si elige **Select a different folder** (Seleccionar una carpeta diferente), aparece un cuadro de diálogo donde puede seleccionar una ubicación de carpeta.

1. Ingrese un nombre para su nueva aplicación. Para este ejemplo, use `my-sam-app-nodejs`. Después de presionar **Entrar**, el AWS kit de herramientas tarda unos minutos en crear el proyecto.

Cuando se crea el proyecto, puede ver los archivos de la aplicación en la ventana Environment (Entorno). Se encuentra en la ventana del **Explorador**.

![\[Captura de pantalla que muestra los tiempos de ejecución disponibles para aplicaciones de SAM.\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/images/sam-create-app-explorer.png)


## Ejecución y depuración de aplicaciones sin servidor
<a name="sam-run-debug"></a>

Puede usar el AWS kit de herramientas para configurar cómo depurar aplicaciones sin servidor y ejecutarlas localmente en su entorno de desarrollo. Puedes depurar una aplicación sin servidor que esté definida por una plantilla (). AWS Serverless Application Model AWS SAM Esta plantilla utiliza una sintaxis YAML sencilla para describir los recursos, como las funciones APIs, las bases de datos y las asignaciones de fuentes de eventos, que componen una aplicación sin servidor. 

[https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-template-anatomy.html](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-template-anatomy.html) 

Alternativamente, puede depurar rápidamente las aplicaciones sin servidor que no se han confirmado en una plantilla de SAM.

Se empieza a configurar el comportamiento de depuración mediante acciones integradas para identificar una función AWS Lambda apta. Para utilizar la infraestructura definida por la plantilla de SAM, utilice la acción en línea en el archivo con formato YAML correspondiente. Para probar la función directamente sin la plantilla, utilice el enlace contextual para el controlador de Lambda en el archivo de aplicación.

**nota**  
En este ejemplo, estamos depurando una aplicación que usa. JavaScript Sin embargo, puede utilizar las funciones de depuración disponibles en el AWS kit de herramientas con los siguientes idiomas y tiempos de ejecución:  
JavaScript — Node.js 10. *x*, 12. *x*, 14. *x*
Python: 3.7, 3.8, 3.9, 3.10 (las aplicaciones sin servidor de Python 2.7 y 3.6 se pueden ejecutar pero el kit de herramientas no las AWS puede depurar).
Su elección de lenguaje también afecta a la manera en que los vínculos contextuales indican los controladores de Lambda aptos. Para obtener más información, consulte [Ejecución y depuración de funciones sin servidor directamente desde el código](#run-debug-no-template).

### Uso de plantillas de SAM para ejecutar y depurar aplicaciones sin servidor
<a name="sam-run-debug-template"></a>

Para las aplicaciones que se ejecutan y depuran con una plantilla de SAM, un archivo con formato YAML describe el comportamiento de la aplicación y los recursos que utiliza. Si crea una aplicación sin servidor con el AWS kit de herramientas, se generará automáticamente un archivo denominado `template.yaml` para su proyecto.

En este procedimiento, utilice la aplicación de ejemplo que se creó en [Creación de una aplicación sin servidor](#sam-create).

### Para utilizar una plantilla de SAM para ejecutar y depurar una aplicación sin servidor


1. Para ver los archivos de aplicación que componen la aplicación sin servidor, vaya a la ventana **Environment** (Entorno).

1. Desde la carpeta de la aplicación (por ejemplo, *my-sample-app*), abra el `template.yaml` archivo.

1. Para `template.yaml`, seleccione **Edit Launch Configuration** (Editar configuración de lanzamiento).

   Un nuevo editor muestra el archivo `launch.json` que proporciona una configuración de depuración con atributos predeterminados.

1. <a name="properties"></a>Edite o confirme los valores de las siguientes propiedades de configuración:
   + `"name"`: ingrese un nombre fácil de leer para que aparezca en el campo desplegable **Configuration** (Configuración) de la vista **Run** (Ejecución).
   + `"target"`: asegúrese de que el valor es `"template"`. De ese modo, la plantilla de SAM es el punto de entrada para la sesión de depuración. 
   + `"templatePath"`: ingrese una ruta relativa o absoluta para el archivo `template.yaml`.
   + `"logicalId"`: asegúrese de que el nombre coincida con el especificado en la sección **Resources** (Recursos) de la plantilla de SAM. En este caso, es `HelloWorldFunction` de tipo`AWS::Serverless::Function`.

   Para obtener más información sobre estas y otras entradas del archivo `launch.json`, consulte [Opciones de configuración para depurar aplicaciones sin servidor](sam-debug-config-ref.md).

1. Si está satisfecho con la configuración de depuración, guarde el archivo `launch.json`. A continuación, elija el botón de "reproducción" verde junto a **RUN** (Ejecutar) para iniciar la depuración.
**nota**  
Si la aplicación de SAM no se ejecuta, consulte la ventana **Output** (Salida) para ver si el error se debe a una imagen de Docker que no se compila. Es posible que tenga que liberar espacio del disco en el entorno.   
Para obtener más información, consulte [Error al ejecutar las aplicaciones SAM localmente en AWS Toolkit porque el AWS Cloud9 entorno no tiene suficiente espacio en disco](troubleshooting.md#troubleshooting-dockerimage-toolkit). 

   Cuando se inician las sesiones de depuración, el panel **DEBUG CONSOLE** (CONSOLA DE DEPURACIÓN) muestra la salida de la depuración y los valores que devuelve la función de Lambda. Al depurar aplicaciones de SAM, **AWS Toolkit** (Kit de herramientas de AWS ) se selecciona como canal de **Output** (Salida) en el panel **Output** (Salida).<a name="docker-problem"></a>
**nota**  
Para los usuarios de Windows, si encuentra un error de montaje de Docker durante este proceso, es posible que deba actualizar las credenciales de las unidades compartidas en **Docker Settings** (Configuración de Docker). Un error de montaje de Docker tiene un aspecto similar al siguiente.   

   ```
   Fetching lambci/lambda:nodejs10.x Docker container image......
   2019-07-12 13:36:58 Mounting C:\Users\<username>\AppData\Local\Temp\ ... as /var/task:ro,delegated inside runtime container
   Traceback (most recent call last):
   ...requests.exceptions.HTTPError: 500 Server Error: Internal Server Error ...
   ```

### Ejecución y depuración de funciones sin servidor directamente desde el código
<a name="run-debug-no-template"></a>

Al probar la AWS SAM aplicación, puede optar por ejecutar y depurar solo la función Lambda. Excluya otros recursos definidos por la plantilla de SAM. Este enfoque implica el uso de una acción en línea para identificar los controladores de funciones de Lambda en el código fuente que se pueden invocar directamente. 

Los controladores de Lambda que detectan los vínculos contextuales dependen del lenguaje y el tiempo de ejecución que esté utilizando para su aplicación.


|  Language/runtime  | Condiciones para identificar las funciones de Lambda mediante enlaces contextuales | 
| --- | --- | 
|  JavaScript (Node.js 10.x, 12.x y 14.x)  |  La función tiene las siguientes características: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/serverless-apps-toolkit.html)  | 
|  Python (3.7, 3.8, 3.9 y 3.10)  |  La función tiene las siguientes características: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/serverless-apps-toolkit.html)  | 

### Para ejecutar y depurar una aplicación sin servidor directamente desde el código de la aplicación




1. Para ver los archivos de la aplicación sin servidor, vaya a la carpeta de la aplicación mediante la elección del icono de carpeta situado junto al editor.

1. Desde la carpeta de la aplicación (por ejemplo, *my-sample-app*), expanda la carpeta de funciones (en este ejemplo, *hello-world*) y abra el archivo. `app.js`

1. En la acción en línea que identifica una función de controlador de Lambda válida, elija `Add Debug Configuration`. Si no aparece la opción de agregar configuración de depuración, debe habilitar lentes de código. Para activar lentes de código, consulte [Habilitar las lentes de código del AWS Toolkit](enable-code-lenses.md).  
![\[Acceda a la opción Add Debug Configuration (Agregar configuración de depuración) en la acción en línea de un controlador de funciones de Lambda.\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/images/direct_invoke_config.png)

1. Seleccione el tiempo de ejecución donde se ejecuta la aplicación de SAM.

1. En el editor del archivo `launch.json`, edite o confirme los valores de las siguientes propiedades de configuración:
   + `"name"`: ingrese un nombre fácil de leer.
   + `"target"`: asegúrese de que el valor es `"code"` para que un controlador de funciones de Lambda se invoque directamente.
   + `"lambdaHandler"`: ingrese el nombre del método en el código al que Lambda llama para ejecutar su función. Por ejemplo, para las aplicaciones en JavaScript, el valor predeterminado es. `app.lambdaHandler`
   + `"projectRoot"`: ingrese la ruta al archivo de aplicación que contiene la función de Lambda.
   + `"runtime"`: ingrese o confirme un tiempo de ejecución válido para el entorno de ejecución de Lambda (por ejemplo, `"nodejs.12x"`).
   + `"payload"`. Elija una de las siguientes opciones para definir la carga del evento que desea proporcionar a la función de Lambda como entrada:
     + `"json"`: pares clave-valor con formato JSON que definen la carga del evento.
     + `"path"`: ruta al archivo que se utiliza como carga del evento.

1. 

   Si está satisfecho con la configuración de depuración, elija la flecha de reproducción verde junto a **RUN** para iniciar la depuración.

   Cuando se inician las sesiones de depuración, el panel **DEBUG CONSOLE** (CONSOLA DE DEPURACIÓN) muestra la salida de la depuración y los valores que devuelve la función de Lambda. Al depurar aplicaciones de SAM, **AWS Toolkit** (Kit de herramientas de AWS ) se selecciona como el canal de **Output** (Salida) en el panel **Output** (Salida).
**nota**  
Si Docker se menciona en los mensajes de error, consulte esta [nota](#docker-problem).

### Ejecución y depuración de recursos locales de Amazon API Gateway
<a name="run-debug-api-gateway"></a>

Puede ejecutar o depurar los recursos locales de AWS SAM API Gateway que se especifican en`template.yaml`. Para ello, ejecute una configuración de AWS Cloud9 inicio o `type=aws-sam` con. `invokeTarget.target=api`

**nota**  
API Gateway admite dos tipos de APIs. Son REST y HTTP APIs. Sin embargo, la función API Gateway del AWS kit de herramientas solo es compatible con REST APIs. A veces, APIs los HTTP se denominan «API Gateway V2» APIs.

**Para ejecutar y depurar recursos de API Gateway locales**

1. Elija uno de los siguientes enfoques para crear una configuración de lanzamiento para un recurso de AWS SAM API Gateway:
   + **Opción 1**: visite el código fuente del controlador (en concreto, archivo .js, .cs o .py) en su proyecto de AWS SAM , pase el cursor sobre el controlador de Lambda y elija **Add Debug Configuration** (Agregar configuración de depuración). Si no aparece la opción de agregar configuración de depuración, habilite lentes de código. Para activar lentes de código, consulte [Habilitar las lentes de código del AWS Toolkit](enable-code-lenses.md). A continuación, en el menú, elija el elemento marcado como Evento de API.
   + **Opción 2**: edite `launch.json` y cree una nueva configuración de lanzamiento mediante la sintaxis siguiente.

     ```
     {
         "type": "aws-sam",
         "request": "direct-invoke",
         "name": "myConfig",
         "invokeTarget": {
             "target": "api",
             "templatePath": "n12/template.yaml",
             "logicalId": "HelloWorldFunction"
         },
         "api": {
             "path": "/hello",
             "httpMethod": "post",
             "payload": {
                 "json": {}
             }
         }, 
         "sam": {},
         "aws": {}
     }
     ```

1. En el menú desplegable junto al botón **Run** (Ejecutar), elija la configuración de lanzamiento (denominada `myConfig` en el ejemplo anterior).

1. (Opcional) Agregue puntos de interrupción al código del proyecto de Lambda.

1. Elija el botón **Run** (Ejecutar) junto al **botón “reproducir”** verde.

1. En el panel de resultados, vea los resultados.

#### Configuración
<a name="run-debug-api-gateway-configuration"></a>

Cuando utiliza el valor `api` de la propiedad `invokeTarget.target`, Toolkit cambia la validación y el comportamiento de la configuración de lanzamiento para admitir un campo `api`.

```
{
    "type": "aws-sam",
    "request": "direct-invoke",
    "name": "myConfig",
    "invokeTarget": {
        "target": "api",
        "templatePath": "n12/template.yaml",
        "logicalId": "HelloWorldFunction"
    },
    "api": {
        "path": "/hello",
        "httpMethod": "post",
        "payload": {
            "json": {}
        },
        "querystring": "abc=def&qrs=tuv",
        "headers": {
            "cookie": "name=value; name2=value2; name3=value3"
        }
    },
    "sam": {},
    "aws": {}
}
```

Reemplace los valores del ejemplo de la siguiente manera:

**invokeTarget.logicalId**  
Un recurso de API.

**path**  
La ruta de la API que solicita la configuración de lanzamiento (por ejemplo, `"path": "/hello"`).  
Debe ser una ruta de API válida resuelta desde el archivo `template.yaml` que se especifica mediante `invokeTarget.templatePath`.

**httpMethod**  
Uno de los verbos siguientes: "delete", "get", "head", "options", "patch", "post", "put".

**payload**  
La carga JSON (cuerpo HTTP) para enviar en la solicitud, con la misma estructura y las mismas reglas que el campo lambda.payload.  
`payload.path` apunta a un archivo que contiene la carga JSON.  
`payload.json` especifica una carga JSON en línea.

**headers**  
Mapa opcional de pares nombre-valor. Se usa para especificar los encabezados HTTP que se incluirán en la solicitud.  

```
"headers": {
     "accept-encoding": "deflate, gzip;q=1.0, *;q=0.5",
     "accept-language": "fr-CH, fr;q=0.9, en;q=0.8, de;q=0.7, *;q=0.5",
     "cookie": "name=value; name2=value2; name3=value3",
     "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",
}
```

**querystring**  
(Opcional) Use esta cadena para establecer el valor de `querystring` de la solicitud (por ejemplo, `"querystring": "abc=def&ghi=jkl"`).

**aws**  
Cómo se proporciona la información de AWS conexión. Para obtener más información, consulte la tabla de **propiedades de conexión de AWS (`aws`)** en [Opciones de configuración para depurar aplicaciones sin servidor](sam-debug-config-ref.md).

**sam**  
Cómo crea la AWS SAM CLI la aplicación. Para obtener más información, consulte las **propiedades de AWS SAM CLI (“`sam`”)** en [Opciones de configuración para depurar aplicaciones sin servidor](sam-debug-config-ref.md).

## Sincronización de una aplicación sin servidor
<a name="deploy-serverless-app"></a>

En este ejemplo se muestra cómo sincronizar la aplicación sin servidor que se creó en el tema anterior ([Creación de una aplicación sin servidor](#sam-create)) en AWS mediante el AWS Toolkit for Visual Studio Code.

### Requisitos previos
<a name="deploy-sam-prereq"></a>
+ Asegúrese de elegir un nombre de bucket que sea globalmente único para Amazon S3.
+ Asegúrese de que las credenciales que configuró incluyan el read/write acceso adecuado a los siguientes servicios: Amazon S3, CloudFormation AWS Lambda, y Amazon API Gateway.
+ Para aplicaciones con el tipo de implementación `Image`, asegúrese de que dispone de un nombre de bucket de Amazon S3 globalmente único y de un URI de repositorio de Amazon ECR para utilizarlo en la implementación.

### Sincronización de una aplicación sin servidor
<a name="deploy-sam-proc"></a>

1. En la ventana del **Explorador de AWS **, abra el menú contextual (haciendo clic con el botón derecho) del nodo **Lambda** y seleccione **Sincronizar una aplicación SAM**.

1. Elija el lugar en el Región de AWS que desea realizar la implementación. 

1. Elija el archivo `template.yaml` que desea utilizar para la implementación.

1. Ingrese el nombre de un bucket de Amazon S3 que se pueda utilizar en esta implementación. El bucket debe estar en la región en la que está realizando la implementación.
**aviso**  
El nombre del bucket de Amazon S3 debe ser único globalmente para todos los nombres de buckets existentes en Amazon S3. Agregue un identificador único al nombre indicado en el siguiente ejemplo o elija otro nombre.

1. Si su aplicación sin servidor incluye una función con el tipo de paquete `Image`, ingrese el nombre de un repositorio de Amazon ECR que se pueda utilizar en esta implementación. El repositorio debe estar en la región en la que está realizando la implementación.

1. Introduzca el nombre para la pila implementada, que puede ser nuevo o existente.

1. Verifique el éxito de la implementación en la pestaña **AWS Toolkit** de la **consola**.

   Si se produce un error, aparece un mensaje en la parte inferior derecha.

   Si esto sucede, verifique el texto de la pestaña **AWS Toolkit** para obtener más información. A continuación se muestra un ejemplo de información sobre un error.

   ```
   Error with child process: Unable to upload artifact HelloWorldFunction referenced by CodeUri parameter of HelloWorldFunction resource.
   S3 Bucket does not exist. Execute the command to create a new bucket
   aws s3 mb s3://pbart-my-sam-app-bucket
   An error occurred while deploying a SAM Application. Check the logs for more information by running the "View AWS Toolkit Logs" command from the Command Palette.
   ```

   En este ejemplo, el error se ha producido porque el bucket de Amazon S3 no existía.

Una vez que se haya realizado la implementación, verá la aplicación en el **Explorador de AWS **. Consulte [Invocación de funciones de Lambda remotas](lambda-toolkit.md#remote-lambda) para obtener información acerca de cómo invocar la función de Lambda que se creó como parte de la aplicación.

## Eliminar una aplicación sin servidor de la nube AWS
<a name="delete-serverless-app"></a>

Eliminar una aplicación sin servidor implica eliminar la CloudFormation pila que implementaste anteriormente en la nube. AWS Tenga en cuenta que este procedimiento no elimina el directorio de la aplicación del anfitrión local.

1. Abra **AWS Explorer**.

1. En la ventana **AWS Explorer**, expanda la región que contiene la aplicación implementada que desea eliminar y, a continuación, expanda **CloudFormation**.

1. Abre el menú contextual (haz clic con el botón derecho) para ver el nombre de la CloudFormation pila que corresponde a la aplicación sin servidor que deseas eliminar. A continuación, seleccione **Eliminar CloudFormation pila**.

1. Para confirmar que desea eliminar la pila seleccionada, elija **Delete** (Eliminar).

**Si la eliminación de la pila se realiza correctamente, el AWS kit de herramientas elimina el nombre de la pila de la CloudFormation lista del Explorador.AWS **

# Habilitar las lentes de código del AWS Toolkit
<a name="enable-code-lenses"></a>

En este paso se muestra cómo activar las lentes de código del AWS Toolkit.

1. En la barra de menús, elija **AWS Cloud9** y luego **Preferences** (Preferencias).

1. En la pestaña **Preferences** (Preferencias), en la barra lateral, seleccione **AWS Toolkit**.

1. Para habilitar lentes de código, seleccione **Enable Code Lenses** (Habilitar enfoques de código).

# Opciones de configuración para depurar aplicaciones sin servidor
<a name="sam-debug-config-ref"></a>

Con las acciones en línea, puede encontrar y definir fácilmente las propiedades para invocar funciones de Lambda directamente o con la plantilla de SAM. También puede definir propiedades para `"lambda"` (cómo se ejecuta la función), `"sam"` (cómo la AWS SAM CLI crea la aplicación) y `"aws"` (cómo se proporciona la información de AWS conexión). 


**AWS SAM: invocación directa del controlador de Lambda o invocación de Lambda basada en plantillas**  

| Propiedad | Description (Descripción) | 
| --- | --- | 
|  `type`  |  Especifica qué extensión administra la configuración de lanzamiento. Configúrelo siempre `aws-sam` para usar la AWS SAM CLI para compilar y depurar localmente.  | 
|  `name`  |  Especifica un nombre fácil de leer que aparecerá en la lista **Debug launch configuration** (Depurar configuración de lanzamiento).  | 
| `request` |  Especifica el tipo de configuración que debe realizar la extensión designada (`aws-sam`). Siempre se establece en `direct-invoke` para lanzar la función de Lambda.  | 
|  `invokeTarget`  |  Especifica el punto de entrada para la invocación del recurso. Para invocar directamente la función de Lambda, establezca los valores de los campos `invokeTarget` siguientes:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/sam-debug-config-ref.html) Para invocar los recursos de Lambda con la plantilla de SAM, establezca los valores de los campos `invokeTarget` siguientes: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/sam-debug-config-ref.html)  | 


**Propiedades de Lambda (`"lambda"`)**  

|  Propiedad | Description (Descripción) | 
| --- | --- | 
|  `environmentVariables`  |  Pasa parámetros operativos a la función. Por ejemplo, si está escribiendo en un bucket de Amazon S3, el nombre de bucket como una variable de entorno. No realice una codificación rígida del nombre del bucket en el que está escribiendo.  | 
| `payload` |  Proporciona dos opciones para la carga del evento que proporciona a la función de Lambda como entrada. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/cloud9/latest/user-guide/sam-debug-config-ref.html)  | 
|  `memoryMB`  |  Especifica los megabytes de memoria proporcionados para ejecutar una función de Lambda invocada.  | 
| `runtime` |  El tiempo de ejecución que usa la función de Lambda. Para obtener más información, consulte [Tiempos de ejecución de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).  | 
|  `timeoutSec`  |  Establece el tiempo permitido, en segundos, antes de que se agote la sesión de depuración.  | 

La extensión AWS Toolkit utiliza la AWS SAM CLI para crear y depurar aplicaciones sin servidor de forma local. Puede configurar el comportamiento de los comandos AWS SAM CLI mediante las propiedades de la `"sam"` configuración del `launch.json` archivo.


**AWS SAM propiedades CLI (`"sam"`)**  

| Propiedad |  Description (Descripción)  |  Predeterminado  | 
| --- | --- | --- | 
|  `buildArguments`  | Configura el modo en que el comando `sam build` compila el código fuente de Lambda. Para ver las opciones de compilación, consulte la [compilación de sam](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-build.html) en la *Guía para desarrolladores de AWS Serverless Application Model *. |  Cadena vacía  | 
|  `containerBuild`  |  Indica si se debe crear la función dentro de un contenedor AWS Lambda similar al de Docker.   |  `false`  | 
|  `dockerNetwork`  |  Especifica el nombre o el ID de una red de Docker existente a la que deben conectarse los contenedores de Lambda y Docker, junto con la red en modo puente predeterminada. Si no se especifica, los contenedores de Lambda se conectan solo a la red Docker en modo puente predeterminada.   |  Cadena vacía  | 
|  `localArguments`  |  Argumentos adicionales de invocación local.  |  Cadena vacía  | 
|  `skipNewImageCheck`  |  Especifica si el comando debe omitir la extracción de la última imagen de Docker para el tiempo de ejecución de Lambda.   |  `false`  | 
|  `template`  |  Personaliza la plantilla de SAM mediante parámetros para ingresar valores de cliente en ella. Para obtener más información, consulte [Parámetros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) en la *Guía del usuario de AWS CloudFormation *.  |  `"parameters":{}`  | 


**AWS propiedades de connection (`"aws"`)**  

| Propiedad | Description (Descripción) | Predeterminado | 
| --- | --- | --- | 
| `credentials` |  Selecciona un perfil específico (por ejemplo`profile:default`) del archivo de credenciales para obtener AWS las credenciales.   | Las AWS credenciales proporcionadas por el archivo de AWS configuración compartido o el archivo de AWS credenciales compartidas existentes. | 
| `Region` |  Establece la AWS región del servicio (por ejemplo, us-east-1).  | La AWS región predeterminada asociada al perfil de credenciales activo.  | 