Integre un servicio en su flujo de trabajo de Step Functions - AWS Step Functions

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.

Integre un servicio en su flujo de trabajo de Step Functions

En el tema anteriorCreación de una máquina de estado, agregaste todos los pasos al prototipo de flujo de trabajo. Ahora, creará e integrará completamente una función Lambda en su flujo de trabajo. Configurará un Task estado denominado Get credit limit que invocará su función Lambda. Dentro de Task los estados, puede usar cualquier AWS SDKintegraciones compatibles con Step Functions.

Para definir la primera integración de servicios para su flujo de trabajo, cree primero la función Lambda. A continuación, actualice el flujo de trabajo para especificar la integración de servicios con la función de Lambda. La función Lambda utilizada en este tutorial devuelve un entero generado aleatoriamente que representa el límite de crédito solicitado.

Paso 1: Crear y probar la función de Lambda.

Puede escribir código para la función en AWS Management Console o tu editor favorito. En los pasos siguientes, creará una función de Lambda Node.js con el título RandomNumberforCredit.

importante

Asegúrese de crear la función Lambda en la misma región que su máquina de estado, en la misma región. Región de AWS como tu máquina de estados.

  1. En una nueva pestaña o ventana, abra la consola de Lambda y cree una función Lambda de Node.js titulada. RandomNumberforCredit Para obtener información sobre la creación de una función Lambda mediante la consola, consulte Crear una función Lambda en la consola en AWS Lambda Guía para desarrolladores.

  2. En la RandomNumberforCreditpágina, elija index.mjs y sustituya el código existente en el área Código fuente por el código siguiente.

    export const handler = async function(event, context) { const credLimit = Math.floor(Math.random() * 10000); return (credLimit); };
  3. En la sección Información general de la función, copie el nombre del recurso de Amazon de la función de Lambda y guárdelo en un archivo de texto. Necesitará la función ARN al especificar la integración del servicio para el estado Get credit limit. A continuación se muestra un ejemploARN:

    arn:aws:lambda:us-east-2:123456789012:function:HelloWorld
  4. Elija Implementar y, a continuación, elija Probar para implementar los cambios y ver el resultado de la función de Lambda.

Paso 2: Actualizar el flujo de trabajo: configurar el estado de Obtener límite de crédito

En la consola de Step Functions, actualizará el flujo de trabajo para especificar la integración de servicios con la función de Lambda que creó en el paso 1 RandomNumberforCredit.

  1. Abra la ventana de la consola de Step Functions que contiene el prototipo de flujo de trabajo que creó en el Tutorial 1.

  2. Elija el estado Obtener límite de crédito y haga lo siguiente en la pestaña Configuración:

    1. Para Tipo de integración, mantenga la selección predeterminada de Optimizado.

      Con Step Functions, puede integrarse con otros Servicios de AWS y ordénelos en sus flujos de trabajo. Para obtener más información sobre las integraciones de servicios y sus tipos, consulte Integración de servicios con Step Functions.

    2. En Nombre de función, elija la función RandomNumberforCreditLambda en la lista desplegable.

    3. Mantenga las selecciones predeterminadas para el resto de los elementos.

  3. Mantenga esta ventana abierta y continúe con el tema siguiente.

nota

También puede utilizar otros compatibles AWS SDKintegraciones en el Task estado especificando el nombre y la API llamada del servicio, como se muestra en el siguiente ejemplo. Para obtener más información, consulte Integración de servicios con Step Functions.

arn:aws:states:::aws-sdk:serviceName:apiAction

Siguientes pasos

En el siguiente tema, Añada lógica condicional configurará el estado de elección con la lógica condicional para determinar el siguiente paso del flujo de trabajo.