Crie um cronômetro de tarefas com Lambda e Amazon SNS - 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á.

Crie um cronômetro de tarefas com Lambda e Amazon SNS

Esse projeto de amostra cria um temporizador de tarefas. Ele implementa um AWS Step Functions máquina de estado que implementa um Wait estado e usa um AWS Lambda função que envia uma notificação do Amazon Simple Notification Service (AmazonSNS). O estado Aguardar estado do fluxo de trabalho é um tipo de estado que aguarda um trigger para executar uma unidade de trabalho específica.

nota

Este projeto de amostra implementa um AWS Lambda função para enviar uma notificação do Amazon Simple Notification Service (AmazonSNS). Você também pode enviar uma SNS notificação da Amazon diretamente do Amazon States Language. Consulte Integrando serviços com Step Functions.

Este projeto de amostra cria a máquina de estado, uma função Lambda e um SNS tópico da Amazon e configura o relacionado AWS Identity and Access Management (IAM) permissões. Para obter mais informações sobre os recursos criados com o projeto de exemplo Task Timer (Temporizador de tarefas), consulte o seguinte:

Para obter mais informações sobre como AWS Step Functions pode controlar outros AWS serviços, vejaIntegrando serviços com Step Functions.

Etapa 1: Criar a máquina de estado

  1. Abra o console do Step Functions e clique em Criar máquina de estado.

  2. Digite Task Timer na caixa de pesquisa e escolha Temporizador de tarefas nos resultados da pesquisa que são retornados.

  3. Escolha Próximo para continuar.

  4. Escolha Executar uma demonstração para criar um ready-to-deploy fluxo de trabalho e somente leitura, ou escolha Criar nele para criar uma definição de máquina de estado editável na qual você possa criar e implantar posteriormente.

    ‎Este projeto de exemplo implementa os recursos a seguir.

    • uma função Lambda que envia uma notificação da AmazonSNS.

    • Uma AWS Step Functions máquina de estado

    • Relacionado AWS Identity and Access Management (IAM) funções

    A imagem a seguir mostra o gráfico do fluxo de trabalho do exemplo de projeto do Temporizador de tarefas:

    Gráfico do fluxo de trabalho do exemplo de projeto do Temporizador de tarefas.
  5. Escolha Usar modelo para continuar com a seleção.

As próximas etapas dependem da sua escolha anterior:

  1. Execute uma demonstração — Você pode revisar a máquina de estado antes de criar um projeto somente para leitura com recursos implantados pelo AWS CloudFormation para o seu Conta da AWS.

    Você pode visualizar a definição da máquina de estado e, quando estiver pronto, escolher Implantar e executar para implantar o projeto e criar os recursos.

    A implantação pode levar até 10 minutos para criar recursos e permissões. Você pode usar o link Stack ID para monitorar o progresso no AWS CloudFormation.

    Após a conclusão da implantação, você deverá ver sua nova máquina de estado no console.

  2. Desenvolva com base nisso — você pode revisar e editar a definição do fluxo de trabalho. Talvez seja necessário definir valores para espaços reservados no projeto de amostra antes de tentar executar seu fluxo de trabalho personalizado.

nota

Cobranças padrão podem ser aplicadas aos serviços implantados em sua conta.

Etapa 2: Executar a máquina de estado

Depois que todos os recursos forem provisionados e implantados, a caixa de diálogo Iniciar execução será exibida com um exemplo de entrada semelhante ao seguinte:

{ "jobName": "my-job",{ "topic": "arn:aws:sns:us-east-2:123456789012:StepFunctionsSample-TaskTimercc68840e-c3d3-42a8-911e-821b7ce248e5-SNSTopic-44UjcFxzhACT", "message": "HelloWorld", "timer_seconds": 10 }
  • 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.

      ASCIINão-nomes e registro

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

    2. (Opcional) Na caixa Entrada, insira os valores de entrada comoJSON. Você pode pular essa etapa se estiver executando uma demonstração.

    3. Selecione Iniciar execução.

    O console Step Functions direcionará você para uma página de detalhes da execução, na qual você pode escolher estados na visualização do gráfico para explorar informações relacionadas no Detalhes da etapa painel.

    Por exemplo, a imagem a seguir mostra a saída da etapa selecionada Aguarde pelo Timestamp. A saída dessa etapa é passada como entrada para a etapa Enviar SNS mensagem.

    Saída de execução da etapa Aguarde pelo Timestamp selecionada na Exibição em gráfico.