

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: simular um problema e repetir eventos para recuperação
<a name="simulate-issue-replay-events-for-recovery"></a>

## Etapa 1: habilitar o problema simulado e enviar uma segunda solicitação da API
<a name="enable-simulated-issue-send-second-api-request"></a>

1. Faça login no [console do AWS Lambda](https://console.aws.amazon.com/lambda/).

1. No painel de navegação, escolha **Functions (Funções)**.

1. Busque `serverlessrepo-fork-example` e escolha `CheckoutFunction`.

1. No **fork-example-ecommerce- {{my-app}} - CheckoutFunction -{{ABCDEF}}...** **página, na seção **Variáveis de ambiente**, defina a variável **BUG\_ENABLED como** **verdadeira e escolha** Salvar.**

1. 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,
   "quantity": 1,
   	      "price": 75.00,
   	      "subtotal": 75.00
   	   }]
   	}
   ```

1. 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: verificar a corrupção de dados simulados
<a name="verify-simulated-data-corruption"></a>

1. Faça login no [console do Amazon DynamoDB](https://console.aws.amazon.com/dynamodb/).

1. No painel de navegação, escolha **Tables (Tabelas)**.

1. Busque `serverlessrepo-fork-example` e escolha `CheckoutTable`.

1. Na página de detalhes da tabela, escolha **Items (Itens)** e selecione o item criado.

   Os atributos armazenados são exibidos, alguns marcados como **CORROMPIDOS\!**

## Etapa 3: desabilitar o problema simulado
<a name="disable-simulated-issue"></a>

1. Faça login no [console do AWS Lambda](https://console.aws.amazon.com/lambda/).

1. No painel de navegação, escolha **Functions (Funções)**.

1. Busque `serverlessrepo-fork-example` e escolha `CheckoutFunction`.

1. No **fork-example-ecommerce- {{my-app}} - CheckoutFunction -{{ABCDEF}}...** **página, na seção **Variáveis de ambiente**, defina a variável **BUG\_ENABLED** **como falsa e escolha** Salvar.**

## Etapa 4: habilitar a repetição a fim de recuperar do problema
<a name="enable-replay-recover-from-simulated-issue"></a>

1. No AWS Lambda console, no painel de navegação, escolha **Funções**.

1. Busque `serverlessrepo-fork-example` e escolha `ReplayFunction`.

1. Expanda a seção **Designer**, escolha o bloco **SQS** e, na seção **SQS**, selecione **Habilitado**.
**nota**  
Leva aproximadamente 1 minuto para que o acionador da origem de eventos do Amazon SQS seja habilitado.

1. Escolha **Salvar**.

1. Para visualizar os atributos recuperados, volte ao console do Amazon DynamoDB.

1. Para desativar a repetição, retorne ao AWS Lambda console e desative o gatilho de origem de eventos do Amazon SQS para. `ReplayFunction`