LambdaTest
.Python 3.9
.Podemos observar que es unimport json def lambda_handler(event, context): # TODO implement return { 'statusCode': 200, 'body': json.dumps('Hello from Lambda!') }
import
y una función que retorna un json
, pero lo más importante acá es la definición de esa función ya que esa función es la que se va a ejecutar cuando se invoque a nuestra lambda, en esta debemos notar ciertas cosas:
file_name
.function_name
, que para nuestro ejemplo es lambda_function.lambda_handler
. Si lo necesitamos podemos modificar esas configuraciones, pero también debemos modificar el nombre del archivo y el nombre de la función en base a nuestros cambios.event
: este contiene los datos de entrada de nuestra función, puede variar dependiendo del trigger que invoque a la lambdacontext
: este corresponde al contexto sobre el cual se está ejecutando la función, son datos sobre el entorno de ejecución.event
. Para esto nos dirigimos a la tab Test
hello-world
, y este es un ejemplo de como podemos definir nuestro evento, como se observa el evento es un objeto en formato JSON.
Dentro de las platillas que nos da AWS para nuestras pruebas podemos ver que hay muchas para distintas integraciones que podemos hacer de sus servicios con las funciones lambda.
Para el ejemplo actual vamos a dejar tal y como está el evento, podemos modificarlo por otro JSON válido pero no hará diferencia en la ejecución de la función.
Luego presionamos el botón Save, este guardará el evento que creamos para que en futuras ocasiones podamos utilizar el mismo para probar nuestra función. Si queremos usar el evento una sola vez solo presionamos el botón Test.
Si todo funcionó correctamente deberíamos ver una pantalla así, con la opción de editar nuestro evento habilitada.
Code
y presionamos el botón Test
vemos que se abre una nueva pestaña en el editor con el output de la ejecución.
Test
desde la tab Test
, el output de la función se mostrará como alerta en la parte superior (siempre dentro de la misma tab), de la siguiente forma:
Response
que es lo que retorno nuestra función (podemos ver el JSON que está en el return
.Function Logs
que contiene, además de información que muestra AWS por defecto, cualquier cosa que imprimamos a consola (un console.log()
, print()
, etc).node_modules
) es de 10MB como máximo, si se supera ese peso ya no podras editar el código en línea, y se deberá utilizar otro método para cargar el código.S3
, usar un EFS o buscar otra forma de manejar archivos (siempre esto va a depender de nuestras necesidades).