Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Prosseguir com fluxos de trabalho de longa duração usando a API do Step Functions (recomendado)

Modo de foco
Prosseguir com fluxos de trabalho de longa duração usando a API do Step Functions (recomendado) - AWS Step Functions

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWS Step Functions foi projetado para executar fluxos de trabalho com duração e número de etapas finitos. As execuções do fluxo de trabalho padrão têm uma duração máxima de um ano e um máximo de 25 mil eventos (consulte Cotas de serviço do Step Functions).

Em relação a execuções de longa duração, é possível evitar atingir a cota rígida iniciando uma nova execução de fluxo de trabalho a partir do estado Task. É necessário dividir os fluxos de trabalho em máquinas de estado menores que continuam o trabalho em andamento em uma nova execução.

Para iniciar novas execuções de fluxo de trabalho, chame a ação de API StartExecution do estado Task e transmita os parâmetros necessários.

O Step Functions pode iniciar essas execuções de fluxo de trabalho chamando a própria API como um serviço integrado. Recomendamos que você adote essa abordagem para evitar exceder as service quotas para execuções de longa duração.

Etapa 1: Criar uma máquina de estado de execução longa

Crie uma máquina de estado de longa duração que você deseja iniciar do estado Task de uma máquina de estado diferente. Para este tutorial, use a máquina de estado que usa uma função do Lambda.

nota

Copie o nome e o Nome do recurso da Amazon dessa máquina de estado em um arquivo de texto para uso posterior.

Etapa 2: Criar uma máquina de estado para chamar a ação da API do Step Functions

Para iniciar execuções de fluxo de trabalho usando um estado Task
  1. Abra o console do Step Functions e clique em Criar máquina de estado.

  2. Na caixa de diálogo Escolher um modelo, selecione Em branco.

  3. Escolha Selecionar para abrir o Workflow Studio em Modo de design.

  4. Na guia Ações, arraste a ação da StartExecutionAPI e solte-a no estado vazio chamado Arraste o primeiro estado aqui.

  5. Escolha o StartExecutionestado e faça o seguinte na guia Configuração emModo de design:

    1. Renomeie o estado para Start nested execution.

    2. Em Tipo de integração, escolha SDK AWS – novo na lista suspensa.

    3. Em Parâmetros da API, faça o seguinte:

      1. Para StateMachineArn, substitua o nome de recurso da Amazon de amostra pelo ARN da sua máquina de estado. Por exemplo, insira o ARN da máquina de estado que usa o Lambda.

      2. Para o nó Input, substitua o texto do espaço reservado pelo seguinte valor:

        "Comment": "Starting workflow execution using a Step Functions API action"
      3. As entradas nos Parâmetros da API `devem ser semelhantes às seguintes:

        { "StateMachineArn": "arn:aws:states:us-east-2:123456789012:stateMachine:LambdaStateMachine", "Input": { "Comment": "Starting workflow execution using a Step Functions API action", "AWS_STEP_FUNCTIONS_STARTED_BY_EXECUTION_ID.$": "$$.Execution.Id" }
  6. (Opcional) Escolha Definição no painel Painel Inspetor para ver a definição do Amazon States Language (ASL) gerada automaticamente do seu fluxo de trabalho.

    dica

    Você também pode ver a definição de ASL no Editor de código do Workflow Studio. No editor de código, você também pode editar a definição de ASL do fluxo de trabalho.

  7. Especifique um nome para a máquina de estado. Para fazer isso, escolha o ícone de edição ao lado do nome padrão da máquina de estado de MyStateMachine. Em seguida, em Configuração da máquina de estado, insira um nome na caixa Nome da máquina de estado.

    Para este tutorial, insira o nome ParentStateMachine.

  8. (Opcional) Em Configuração da máquina de estado, especifique outras configurações do fluxo de trabalho, como o tipo de máquina de estado e a função de execução.

    Para este tutorial, mantenha todas as seleções padrão nas Configurações da máquina de estado.

    Se você já criou um perfil do IAM com as permissões corretas para a máquina de estado e deseja usá-lo, em Permissões, clique em Escolher um perfil existente e selecione uma função na lista. Ou selecione Inserir um ARN de função e forneça o ARN para esse perfil do IAM.

  9. Na caixa de diálogo Confirmar criação do perfil, selecione Confirmar para continuar.

    Você também pode escolher Exibir configurações do perfil para voltar às Configurações da máquina de estado.

    nota

    Se você excluir o perfil do IAM criado pelo Step Functions, não será possível recriá-lo posteriormente. Da mesma forma, se você modificar a função (por exemplo, removendo o Step Functions das entidades principais na política do IAM), o Step Functions não poderá restaurar as configurações originais dela posteriormente.

Etapa 3: Atualizar a política do IAM;

Para garantir que sua máquina de estado tenha permissões para iniciar a execução da máquina de estado que usa uma função do Lambda, você precisa anexar uma política em linha ao perfil do IAM da sua máquina de estado. Para mais informações, consulte Incorporar políticas em linha no Guia do usuário do IAM.

  1. Na ParentStateMachinepágina, escolha o ARN da função do IAM para navegar até a página Funções do IAM da sua máquina de estado.

  2. Atribua uma permissão apropriada à função IAM do ParentStateMachinepara que ela possa iniciar a execução de outra máquina de estado. Para atribuir a permissão, faça o seguinte:

    1. Na página Perfis do IAM, escolha Adicionar permissões e depois Criar política em linha.

    2. Na página Criar política, escolha a guia JSON.

    3. Substitua o texto pela política a seguir.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:StartExecution" ], "Resource": [ "arn:aws:states:us-east-2:123456789012:stateMachine:LambdaStateMachine" ] } ] }
    4. Escolha Revisar política.

    5. Especifique um nome para a política e escolha Criar política.

Etapa 4: Executar a máquina de estado

As execuções de máquinas de estado são instâncias em que o fluxo de trabalho é executado para a realização de tarefas.

  1. Na ParentStateMachinepágina, escolha Iniciar execução.

    A caixa de diálogo Iniciar execução é exibida.

  2. Na caixa de diálogo Iniciar execução, faça o seguinte:

    1. (Opcional) Insira um nome de execução personalizado para substituir o padrão gerado.

      Nomes e registro em log não ASCII

      O Step Functions aceita nomes de máquina de estado, execuções, atividades e rótulos que contenham caracteres não ASCII. Como esses caracteres não funcionarão com a Amazon CloudWatch, recomendamos usar somente caracteres ASCII para que você possa acompanhar as métricas. CloudWatch

    2. (Opcional) No campo Entrada, insira os valores de entrada no formato JSON para executar o fluxo de trabalho.

    3. Selecione Iniciar execução.

    4. O console do Step Functions direciona você para uma página em que o título é o ID da execução. Essa página é conhecida como página de Detalhes da execução. Nesta página, você pode revisar os resultados da execução à medida que a execução avança ou após a conclusão.

      Para revisar os resultados da execução, escolha estados individuais na Exibição em gráfico e, em seguida, escolha as guias individuais no painel Detalhes da etapa para visualizar os detalhes de cada estado, incluindo entrada, saída e definição, respectivamente. Para obter detalhes sobre as informações de execução que você pode visualizar na página Detalhes da execução, consulte Visão geral dos detalhes da execução.

  3. Abra a LambdaStateMachinepágina e observe uma nova execução acionada pelo ParentStateMachine.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.