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á.
Reúna informações do bucket do Amazon S3 usando integrações de serviços do AWS SDK
Este tutorial mostra como realizar uma integração do AWS SDK com o Amazon Simple Storage Service. A máquina de estado que você cria neste tutorial reúne informações sobre seus buckets do Amazon S3 e lista seus buckets junto com as informações de versão de cada bucket na região atual.
Etapa 1: Criar a máquina de estado
Usando o console do Step Functions, você vai criar uma máquina de estado que inclui um estado Task
para listar todos os buckets do Amazon S3 na conta e na região atuais. Você então vai adicionar outro estado Task
que invoca a API HeadBucket
para verificar se o bucket retornado está acessível na região atual. Se o bucket não estiver acessível, a chamada de API HeadBucket
retornará o erro S3.S3Exception
. Você incluirá um bloco Catch
para capturar essa exceção e um estado Pass
como estado alternativo.
-
Abra o console do Step Functions
e clique em Criar máquina de estado. Na caixa de diálogo Escolher um modelo, selecione Em branco.
Escolha Selecionar para abrir o Workflow Studio em Modo de design.
-
Neste tutorial, você escreverá a definição da Amazon States Language (ASL) da máquina de estado no Editor de código. Para isso, clique em Código.
-
Remova o código clichê existente e cole a seguinte definição de máquina de estado.
{ "Comment": "A description of my state machine", "StartAt": "ListBuckets", "States": { "ListBuckets": { "Type": "Task", "Parameters": {}, "Resource": "arn:aws:states:::aws-sdk:s3:listBuckets", "Next": "Map" }, "Map": { "Type": "Map", "ItemsPath": "$.Buckets", "ItemProcessor": { "ProcessorConfig": { "Mode": "INLINE" }, "StartAt": "HeadBucket", "States": { "HeadBucket": { "Type": "Task", "ResultPath": null, "Parameters": { "Bucket.$": "$.Name" }, "Resource": "arn:aws:states:::aws-sdk:s3:headBucket", "Catch": [ { "ErrorEquals": [ "S3.S3Exception" ], "ResultPath": null, "Next": "Pass" } ], "Next": "GetBucketVersioning" }, "GetBucketVersioning": { "Type": "Task", "End": true, "Parameters": { "Bucket.$": "$.Name" }, "ResultPath": "$.BucketVersioningInfo", "Resource": "arn:aws:states:::aws-sdk:s3:getBucketVersioning" }, "Pass": { "Type": "Pass", "End": true, "Result": { "Status": "Unknown" }, "ResultPath": "$.BucketVersioningInfo" } } }, "End": true } } }
-
Especifique um nome para a máquina de estado. Para fazer isso, clique no ícone de edição ao lado do nome da máquina de estado padrão 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
Gather-S3-Bucket-Info-Standard
. -
(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.
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.
-
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.
Na Etapa 2, você vai adicionar as permissões ausentes à função de máquina de estado.
Etapa 2: Adicionar permissões do perfil do IAM necessárias
Para coletar informações sobre os buckets do Amazon S3 em sua região atual, forneça à sua máquina de estado as permissões necessárias para acessar os buckets do Amazon S3.
-
Na página da máquina de estado, escolha ARN do perfil do IAM para abrir a página Funções da função da máquina de estado.
-
Escolha Adicionar permissões e depois Criar política em linha.
Escolha a guia JSON e cole as permissões a seguir no editor JSON.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets", "s3:ListBucket", "s3:GetBucketVersioning" ], "Resource": "*" } ] }
Escolha Revisar política.
No campo Política de revisão, em Nome da política, insira
s3-bucket-permissions
.Escolha Criar política.
Etapa 3: Iniciar a execução de uma máquina de estado padrão
-
Na página Gather-S3-Bucket-Info-Standard, escolha Iniciar execução.
-
Na caixa de diálogo Iniciar execução, faça o seguinte:
-
(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 o Amazon CloudWatch, recomendamos usar somente caracteres ASCII para que você possa monitorar métricas no CloudWatch.
-
Selecione Iniciar execução.
-
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.
-
Etapa 4: Executar uma execução de máquina de estado Express
-
Crie uma máquina de estado expresso usando a definição de máquina de estado apresentada na Etapa 1. Inclua também as permissões de perfil do IAM necessárias, conforme explicado na Etapa 2.
dica
Para diferenciar da máquina padrão criada antes, dê à máquina de estado expresso o nome
Gather-S3-Bucket-Info-Express
. -
Na página Gather-S3-Bucket-Info-Standard, escolha Iniciar execução.
-
Na caixa de diálogo Iniciar execução, faça o seguinte:
-
(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 o Amazon CloudWatch, recomendamos usar somente caracteres ASCII para que você possa monitorar métricas no CloudWatch.
-
Selecione Iniciar execução.
-
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.
-