Trabajar con AWS Lambda funciones mediante el AWS kit de herramientas - AWS Cloud9

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

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.

Trabajar con AWS Lambda funciones mediante el AWS kit de herramientas

El AWS kit de herramientas admite AWS Lambdafunciones. El AWS kit de herramientas reemplaza la funcionalidad que anteriormente proporcionaba el complemento Lambda en. AWS Cloud9 Con el AWS kit de herramientas, puede crear código para funciones Lambda que forman parte de aplicaciones sin servidor. Además, puede invocar funciones de Lambda localmente o en AWS.

Lambda es un servicio de computación totalmente administrado que ejecuta su código como respuesta a eventos generados por código personalizado o de varios Servicios de AWS. Se incluyen Amazon Simple Storage Service (Amazon S3), Amazon DynamoDB, Amazon Kinesis, Amazon Simple Notification Service (Amazon SNS) y Amazon Cognito.

importante

Si desea crear una aplicación de Lambda que use los recursos proporcionados por el modelo de aplicaciones sin servidor (SAM), consulte Cómo trabajar AWS SAM con el AWS kit de herramientas.

Invocación de funciones de Lambda remotas

Con el AWS kit de herramientas, puede interactuar con AWS Lambdalas funciones de varias maneras.

Para obtener más información acerca de Lambda, consulte la Guía para desarrolladores de AWS Lambda.

nota

Suponga que ya ha creado funciones Lambda mediante AWS Management Console o de alguna otra forma. Puede invocarlas desde el kit de herramientas. AWS Para crear una nueva función con AWS Toolkit en la que pueda implementarla AWS Lambda, primero debe crear una aplicación sin servidor.

Requisitos previos

  • Asegúrese de que las credenciales que configuró incluyan el acceso de lectura/escritura adecuado al servicio. AWS Lambda Si en el Explorador de AWS , en Lambda, aparece un mensaje del tipo "Error loading Lambda resources" (Error al cargar recursos de Lambda), verifique los permisos asociados a esas credenciales. Los cambios que realice en los permisos tardarán unos minutos en afectar al Explorador de AWS en el kit de herramientas de AWS .

Llamar a una función Lambda

importante

Al llamar a los métodos de la API mediante el AWS kit de herramientas, es posible que se produzcan cambios en los recursos que no se puedan deshacer. Por ejemplo, si llama a un método POST, los recursos de la API se actualizan si la llamada se lleva a cabo correctamente.

Puede invocar una función Lambda al utilizar AWS AWS el kit de herramientas.

  1. En AWS Explorer, elija el nombre de la función de Lambda que desea invocar y, a continuación, abra su menú contextual.

  2. Seleccione Invocar activado. AWS

  3. En la ventana Invoke function (Invocar a función) que se abre, elija una opción para la carga que necesita su función de Lambda. (La carga es el archivo JSON que desea proporcionar a su función de Lambda como entrada). Puede elegir Browse (Examinar) para seleccionar un archivo para utilizarlo como carga o utilizar el campo desplegable para seleccionar una plantilla para la carga. En este caso, la función de Lambda podría aparecer como una cadena como entrada, como se muestra en el cuadro de texto.

Elija Invoke (Invocar) para llamar a la función de Lambda y pasar la carga.

Puede ver el resultado de la función Lambda en la AWS Lambda pestaña.

Descarga, carga y eliminación de funciones de Lambda

El AWS kit de herramientas proporciona las opciones para importar y cargar funciones Lambda en IDE. AWS Cloud9

Descarga de una función de Lambda

Al descargar una función Lambda, también se descargan los archivos de proyecto que describen la función desde la AWS nube y se trabaja con ellos en el AWS Cloud9 IDE.

Para descargar una función de Lambda

  1. En el Explorador de AWS , en el nodo Lambda, abra el menú contextual (haga clic con el botón derecho) de la función y elija Download (Descargar).

  2. Cuando se le muestre Select a workspace folder for your new project (Seleccione una carpeta de espacio de trabajo para su nuevo proyecto), puede realizar una de las siguientes acciones:

    • Elija la carpeta sugerida para crear una subcarpeta con el mismo nombre que su proyecto de Lambda.

    • Elija Select a different folder (Seleccionar una carpeta diferente) para abrir un cuadro de diálogo para buscar y seleccionar una carpeta principal diferente para la subcarpeta del proyecto.

    El IDE abre una nueva ventana del editor.

Configuración de una función Lambda descargada para su ejecución y depuración

Para ejecutar y depurar su función de Lambda descargada como una aplicación sin servidor, necesita que se defina una configuración de lanzamiento en su archivo launch.json. Es AWS Management Console posible que una función Lambda que se creó en el no se incluya en una configuración de lanzamiento. Por lo tanto, es posible que tenga que agregarla manualmente.

Para agregar su función Lambda a la configuración de lanzamiento

  1. Una vez que haya descargado la función de Lambda, abra la ventana Environment (Entorno) para ver sus carpetas y archivos.

  2. A continuación, compruebe que su función Lambda está incluida en un archivo /home/ec2-user/.c9/launch.json. Si no está presente, haga lo siguiente para añadir un CodeLens enlace al código de la función:

    1. Abra el archivo de código fuente que define la función de Lambda (por ejemplo, un archivo .js o .py). A continuación, compruebe si hay un CodeLens enlace que pueda utilizar para añadir la función lambda a un launch.json archivo. CodeLens Aparece una A encima de la función e incluye el Add Debug Config enlace.

    2. Elija Go (Ir) (el icono de la lupa) a la izquierda del IDE e ingrese "sam hint" para que aparezca el comando AWS: Toggle SAM hints in source files. Elija el comando para ejecutarlo.

    3. Cierre el archivo de código fuente de Lambda y vuelva a abrirlo.

    4. Si CodeLens está disponible en el código fuente después de volver a abrir el archivo, elija Add Debug Config añadir la configuración de inicio.

  3. Si no puede añadir un CodeLens par después de activar la opción de sugerencia de SAM, haga lo siguiente para añadir la configuración de lanzamiento:

    1. Elija Go (Ir) (el icono de la lupa) a la izquierda del IDE y escriba «sam hint» para que aparezca el comando AWS: SAM Debug Configuration Editor. Elija el comando para ejecutarlo.

    2. Aparece SAM Debug Configuration Editor (Editor de configuración de depuración de SAM). Puede utilizar este editor para definir las propiedades de configuración de lanzamiento. Para obtener información, consulte el paso para configuring launch properties en Uso de plantillas de SAM para ejecutar y depurar aplicaciones sin servidor.

      nota

      Si su función de Lambda no tiene un archivo template.yaml para las aplicaciones de SAM, debe agregar uno. Para obtener más información, consulte Creación de su plantilla de SAM de AWS.

    3. Cuando haya terminado de ingresar la información de configuración necesaria en el editor, la configuración de lanzamiento se agregará al archivo launch.json.

Después de haber definido una configuración de lanzamiento para su función de Lambda, puede ejecutarla haciendo lo siguiente:

  1. En la parte superior del IDE, elija la flecha situada junto a Auto y seleccione la configuración de lanzamiento correspondiente.

  2. A continuación, elija Next (Siguiente).

Carga de una función de Lambda

Puede actualizar las funciones de Lambda existentes con código local. La actualización del código de esta manera no utiliza la AWS Serverless Application Model CLI para la implementación y no crea una AWS CloudFormation pila. De este modo, puede cargar una función de Lambda con cualquier tiempo de ejecución que admita Lambda.

Existen varias opciones de interfaz para cargar funciones Lambda mediante AWS el kit de herramientas.

  1. En Environment window (Ventana de entorno) para los archivos de proyecto, elija el contexto (haga clic con el botón derecho) de template.yaml para la aplicación de Lambda que quiere cargar y elija Upload Lambda (Cargar Lambda).

    También puede presionar Ctrl+P para abrir el panel Ir a cualquier punto e ingrese "lambda" para acceder al comando AWS Cargar Lambda. A continuación, elíjalo para iniciar el proceso de carga.

  2. A continuación, seleccione una en la Región de AWS que desee cargarla.

  3. Elija ahora una opción para cargar la función Lambda:

    Cargar un archivo .zip

    1. Elija ZIP Archive (Archivo ZIP) en el menú.

    2. Elige un archivo.zip de tu sistema de AWS Cloud9 archivos y selecciona Abrir.

    Cargar un directorio tal cual

    1. Elija Directory (Directorio) en el menú.

    2. Elija un directorio de su sistema de AWS Cloud9 archivos y elija Abrir.

  4. Especifique el controlador de funciones Lambda que procesa los eventos. Cuando se invoca la función, Lambda ejecuta este método del controlador.

    nota

    Al seleccionar la función Lambda, puede seleccionarla de la lista que se muestra. Si no sabe qué función elegir, puede ingresar el número de recurso de Amazon (ARN) de una función de Lambda que está disponible en el kit de herramientas.

    Aparece un cuadro de diálogo preguntando si desea que este código se publique como la versión más reciente de la función Lambda. Elija Yes (Sí) para confirmar la publicación.

    nota

    También puede cargar aplicaciones de Lambda si abre el menú contextual (haga clic con el botón derecho) de la carpeta principal en la carpeta y selecciona Upload Lambda (Cargar Lambda). La carpeta principal se selecciona automáticamente para cargarla.

  1. En el Explorador de AWS , abra el menú contextual (haga clic con el botón derecho) del nombre de la función de Lambda que desea importar.

  2. Elija Upload Lambda (Cargar Lambda).

  3. Elija entre las tres opciones para cargar su función de Lambda.

    Cargar un archivo .zip prediseñado

    1. Elija ZIP Archive (Archivo ZIP) en el menú.

    2. Elige un archivo.zip de tu sistema de AWS Cloud9 archivos y selecciona Abrir.

    3. Confirme la carga con el cuadro de diálogo modal. Con esta acción se carga el archivo .zip y se actualiza inmediatamente la función de Lambda después de la implementación.

    Cargar un directorio tal cual

    1. Elija Directory (Directorio) en el menú.

    2. Elija un directorio de su sistema de AWS Cloud9 archivos y elija Abrir.

    3. Elija No cuando se le pida que cree el directorio.

    4. Confirme la carga con el cuadro de diálogo modal. Con esta acción se carga el directorio y se actualiza inmediatamente la función de Lambda después de la implementación.

    Crear y cargar un directorio

    1. Elija Directory (Directorio) en el menú.

    2. Elija un directorio de su sistema de AWS Cloud9 archivos y seleccione Abrir.

    3. Elija Yes (Sí) cuando se le pida que cree el directorio.

    4. Confirme la carga con el cuadro de diálogo modal. Esto crea el código en el directorio mediante el sam build comando AWS SAM CLI y actualiza inmediatamente la Lambda tras la implementación.

Implementación de una función Lambda para el acceso remoto

Puede hacer que sus funciones locales estén disponibles de forma remota si las implementa como aplicaciones de SAM sin servidor.

Para implementar una función Lambda como aplicación de SAM

  1. En la ventana del Explorador de AWS , abra el menú contextual (haga clic con el botón derecho) del nodo Lambda y seleccione Deploy SAM Application (Desplegar la aplicación de SAM).

  2. En el panel de comandos, seleccione la plantilla YAML que define su función como aplicación sin servidor.

  3. A continuación, seleccione un bucket de Amazon S3 para la implementación de Lambda. También puede crear un bucket para la implementación.

  4. Ahora introduzca el nombre de la AWS CloudFormation pila en la que vaya a realizar la implementación. Si especifica una pila existente, el comando la actualiza. Si especifica una nueva pila, el comando la crea.

    Después de ingresar el nombre de la pila, su función Lambda comienza a implementarse como una aplicación de SAM. Tras una implementación correcta, la aplicación de Lambda de SAM está disponible de forma remota. De esta forma, puede descargarla o invocarla desde otros entornos de AWS Cloud9 desarrollo.

Si desea crear una función Lambda desde cero, le recomendamos que siga los pasos para Cómo crear una aplicación sin servidor con AWS Toolkit.

Eliminación de una función de Lambda

También puede eliminar una función de Lambda con el mismo menú contextual (haga clic con el botón derecho).

aviso

No utilice este procedimiento para eliminar las funciones de Lambda asociadas a AWS CloudFormation. No utilice este procedimiento para eliminar la función de Lambda que se ha creado al crear una aplicación sin servidor anteriormente en esta guía. Estas funciones deben eliminarse a través de la pila de AWS CloudFormation .

  1. En el Explorador de AWS , elija el nombre de la función de Lambda que desea eliminar y, a continuación, abra su menú contextual (haga clic con el botón derecho).

  2. Elija Eliminar.

  3. En el mensaje que aparece, elija Yes (Sí) para confirmar la eliminación.

Una vez eliminada la función, esta deja de aparecer en la vista AWS Explorer.