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á.
Etapa 4: Como simular um problema e repetir eventos para recuperação
Etapa 1: Como habilitar o problema simulado e enviar uma segunda solicitação da API
-
Faça login no AWS Lambdaconsole
. -
No painel de navegação, escolha Functions (Funções).
-
Busque
serverlessrepo-fork-example
e escolhaCheckoutFunction
. -
No fork-example-ecommerce-
página, na seção Variáveis de ambiente, defina a variável BUG_ENABLED como verdadeira e escolha Salvar.my-app
- - CheckoutFunction ABCDEF... -
Copie o JSON a seguir em um arquivo denominado
test_event_2.json
.{ "id": 9917, "date": "2019-03-26T21:11:10-08:00", "status": "confirmed", "customer": { "id": 56999, "name": "Marcia Oliveira", "email": "marcia.oliveira@example.com" }, "payment": { "id": 3311, "amount": 75.00, "currency": "usd", "method": "credit", "card-network": "mastercard", "card-number": "1234 5678 9012 3456", "card-expiry": "12/2025", "card-owner": "Marcia Oliveira", "card-cvv": "321" }, "shipping": { "id": 9900, "time": 20, "unit": "days", "method": "plane" }, "items": [{ "id": 9993, "product": 3120, "name": "Hockey Stick", "quantity": 1, "price": 75.00, "subtotal": 75.00 }] }
-
Para enviar uma solicitação HTTPS ao endpoint da API, envie a carga do evento de exemplo como entrada, executando um comando
curl
, por exemplo:curl -d "$(cat test_event_2.json)" https://abcdefghij.execute-api.us-east-2.amazonaws.com/Prod/checkout
A API retorna a seguinte resposta vazia, indicando uma execução bem-sucedida:
{ }
Etapa 2: Como verificar a corrupção de dados simulados
-
Faça login no console do Amazon DynamoDB
. -
No painel de navegação, escolha Tables (Tabelas).
-
Busque
serverlessrepo-fork-example
e escolhaCheckoutTable
. -
Na página de detalhes da tabela, escolha Items (Itens) e selecione o item criado.
Os atributos armazenados são exibidos, alguns marcados como CORRUPTED! (CORROMPIDOS!)
Etapa 3: Como desabilitar o problema simulado
-
Faça login no AWS Lambdaconsole
. -
No painel de navegação, escolha Functions (Funções).
-
Busque
serverlessrepo-fork-example
e escolhaCheckoutFunction
. -
No fork-example-ecommerce-
página, na seção Variáveis de ambiente, defina a variável BUG_ENABLED como falsa e escolha Salvar.my-app
- - CheckoutFunction ABCDEF...
Etapa 4: Como habilitar a repetição a fim de recuperar do problema
-
No console do AWS Lambda, no painel de navegação, escolha Functions (Funções).
-
Busque
serverlessrepo-fork-example
e escolhaReplayFunction
. -
Expanda a seção Designer, escolha o bloco SQS e, na seção SQS, selecione Enabled (Habilitado).
nota
Leva aproximadamente 1 minuto para que o acionador da origem de eventos do Amazon SQS seja habilitado.
-
Escolha Salvar.
-
Para visualizar os atributos recuperados, volte ao console do Amazon DynamoDB.
-
Para desativar a as novas tentativas, volte ao console do AWS Lambda e desabilite o acionador da origem de eventos do Amazon SQS para
ReplayFunction
.