View a markdown version of this page

Erros de exceção do iterador expirado - Amazon Kinesis Data Streams

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á.

Erros de exceção do iterador expirado

Os erros de exceção do iterador expirado (HTTP 400) ocorrem quando o iterador de fragmento expira e não é mais usado para recuperar os registros do fluxo durante a chamada de GetRecords. Isso ocorre quando há atrasos entre as operações de leitura, causados por tarefas de processamento de dados de longa duração, problemas de rede ou tempo de inatividade da aplicação.

nota

Um iterador de fragmento é válido por 5 minutos após o momento em que é emitido.

Recomendações para lidar com exceções
  • Atualizar os iteradores de fragmento antes que eles expirem.

  • Incorporar o tratamento de erros para obter novos iteradores.

  • Utilizar a Kinesis Kinesis Client Library (KCL), que gerencia automaticamente a expiração do iterador de fragmento.

Para obter mais informações, consulte O que é AWS Fault Injection Service?

Para realizar um experimento básico
  1. Crie um modelo de experimento: use o AWS FIS console.

  2. Selecione a ação: use a ação aws:kinesis:inject-api-expired-iterator-exception.

  3. Configure os destinos: especifique o perfil do IAM e as operações do Kinesis Data Streams.

  4. Defina a duração: comece com 5 a 10 minutos para o teste inicial.

  5. Adicionar condições de parada: condições de parada para AWS FIS.

  6. Execute o experimento: monitore o comportamento da aplicação.

Detalhes da ação
  • Tipo de recurso: ARN do perfil do IAM

  • Operações de destino: GetRecords

  • Código de erro: ExpiredIteratorException (HTTP 400)

  • Descrição: o iterador fornecido excede o período máximo permitido, simulando cenários em que o processamento de registros é muito lento ou a lógica de verificação falha.

Parâmetros
  • ARN do perfil do IAM: perfil usado por sua aplicação para as operações do Kinesis Data Streams.

  • Operações: operações de destino: GetRecords

  • Lista de recursos: os nomes específicos do fluxo ou ARNs.

  • Duração: a duração do experimento. Isso é configurável.

  • Intensidade: a porcentagem de solicitações a serem submetidas a controle de utilização.

Permissões obrigatórias
  • kinesis:InjectApiError