Integra un servizio nel tuo flusso di lavoro Step Functions - AWS Step Functions

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Integra un servizio nel tuo flusso di lavoro Step Functions

Nell'argomento precedenteCreazione di una macchina a stati, hai aggiunto tutti i passaggi al prototipo del flusso di lavoro. Ora creerai e integrerai completamente una funzione Lambda nel tuo flusso di lavoro. Configurerai uno Task stato denominato Get credit limit che richiamerà la tua funzione Lambda. All'interno Task degli stati, puoi usare qualsiasi AWS SDKintegrazioni supportate da Step Functions.

Per definire la prima integrazione di servizi per il tuo flusso di lavoro, crea innanzitutto la funzione Lambda. Quindi, aggiorna il flusso di lavoro per specificare l'integrazione del servizio con la funzione Lambda. La funzione Lambda utilizzata in questo tutorial restituisce un numero intero generato casualmente che rappresenta il limite di credito richiesto.

Fase 1: Creare e testare la funzione Lambda

È possibile scrivere il codice per la funzione in AWS Management Console o il tuo editor preferito. Nei passaggi seguenti, si crea una funzione Lambda Node.js intitolata. RandomNumberforCredit

Importante

Assicurati di creare la funzione Lambda nella stessa regione della tua macchina a stati nella stessa Regione AWS come macchina a stati.

  1. In una nuova scheda o finestra, apri la console Lambda e crea una funzione Lambda Node.js intitolata. RandomNumberforCredit Per informazioni sulla creazione di una funzione Lambda utilizzando la console, consulta Creare una funzione Lambda nella console nel AWS Lambda Guida per gli sviluppatori.

  2. Nella RandomNumberforCreditpagina, scegli index.mjs e sostituisci il codice esistente nell'area Codice sorgente con il codice seguente.

    export const handler = async function(event, context) { const credLimit = Math.floor(Math.random() * 10000); return (credLimit); };
  3. Dalla sezione Panoramica delle funzioni, copia l'Amazon Resource Name della funzione Lambda e salvalo in un file di testo. Avrai bisogno della funzione ARN mentre specifichi l'integrazione del servizio per lo stato Get credit limit. Di seguito è riportato un esempioARN:

    arn:aws:lambda:us-east-2:123456789012:function:HelloWorld
  4. Scegli Deploy, quindi scegli Test per distribuire le modifiche e vedere l'output della funzione Lambda.

Passaggio 2: aggiorna il flusso di lavoro: configura lo stato Get credit limit

Nella console Step Functions, aggiornerai il tuo flusso di lavoro per specificare l'integrazione del servizio con la funzione RandomNumberforCredit Lambda che hai creato nella Fase 1.

  1. Apri la finestra della console Step Functions contenente il prototipo di workflow creato nel Tutorial 1.

  2. Scegli lo stato Ottieni limite di credito e, nella scheda Configurazione, procedi come segue:

    1. Per il tipo di integrazione, mantieni la selezione predefinita di Ottimizzato.

      Utilizzando Step Functions, puoi integrarti con altri Servizi AWS e orchestrali nei tuoi flussi di lavoro. Per ulteriori informazioni sulle integrazioni di servizi e sui relativi tipi, consulta. Integrazione dei servizi con Step Functions

    2. Per Nome funzione, scegli la funzione RandomNumberforCreditLambda dall'elenco a discesa.

    3. Mantieni le selezioni predefinite per il resto degli elementi.

  3. Tieni aperta questa finestra e passa all'argomento successivo.

Nota

Puoi anche usarne altri supportati AWS SDKintegrazioni nello Task stato specificando il nome del servizio e la API chiamata, come mostrato nell'esempio seguente. Per informazioni, consultare Integrazione dei servizi con Step Functions.

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

Passaggi successivi

Nell'argomento successivo, Aggiungi logica condizionale configurerai lo stato di scelta con la logica condizionale per determinare la fase successiva del flusso di lavoro.