

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

# Configurando uma fila do Amazon SQS para acionar uma função AWS Lambda
<a name="sqs-configure-lambda-function-trigger"></a>

Você pode usar uma função do Lambda para processar mensagens de uma fila do Amazon SQS. O Lambda sonda a fila e invoca sua função de forma síncrona, transmitindo um lote de mensagens como um evento.

**Configuração do tempo limite de visibilidade**   
Defina o tempo limite de visibilidade da fila para pelo menos seis vezes o valor do [tempo limite da função](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-common-summary). Isso garante que o Lambda tenha tempo o suficiente para tentar novamente se uma função estiver travada em um lote anterior.

**Como usar uma fila de mensagens não entregues (DLQ)**  
Especifique uma fila de mensagens não entregues para capturar mensagens que a função do Lambda não conseguir processar.

**Como gerenciar várias filas e funções**  
Uma função do Lambda pode processar várias filas criando uma origem de eventos separada para cada fila. É possível associar várias funções do Lambda à mesma fila.

**Permissões para filas criptografadas**  
Se você associar uma fila criptografada a uma função Lambda, mas o Lambda não sondar as mensagens, adicione a permissão `kms:Decrypt` para sua função de execução do Lambda.

**Restrições**  
A fila e a função do Lambda devem estar na mesma Região da AWS.  
Uma [fila criptografada](sqs-server-side-encryption.md) que usa a chave padrão (chave KMS AWS gerenciada para Amazon SQS) não pode invocar uma função Lambda em outra. Conta da AWS

Para obter detalhes de implementação, consulte [Como usar o AWS Lambda com o Amazon SQS](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html) no *Guia do desenvolvedor do AWS Lambda *.

## Pré-requisitos
<a name="configure-lambda-function-trigger-prerequisites"></a>

Para configurar os acionadores de função Lambda, você deve atender aos seguintes requisitos:
+ Se você usar um usuário, o perfil do Amazon SQS deverá incluir as seguintes permissões:
  + `lambda:CreateEventSourceMapping`
  + `lambda:ListEventSourceMappings`
  + `lambda:ListFunctions`
+ A função de execução do Lambda deve incluir as seguintes permissões:
  + `sqs:DeleteMessage`
  + `sqs:GetQueueAttributes`
  + `sqs:ReceiveMessage`
+ Se você associar uma fila criptografada a uma função Lambda, adicione a permissão `kms:Decrypt` à função de execução do Lambda.

Para obter mais informações, consulte [Visão geral do gerenciamento de acesso no Amazon SQS](sqs-overview-of-managing-access.md).

**Para configurar uma fila para acionar uma função Lambda (console)**

1. Abra o console do Amazon SQS em. [https://console.aws.amazon.com/sqs/](https://console.aws.amazon.com/sqs/)

1. No painel de navegação, escolha **Queues**.

1. Na página **Queues** (Filas), escolha a fila a ser configurada. 

1. Na página da fila, escolha a guia **Lambda triggers** (Acionadores do Lambda).

1. Na página **Lambda triggers** (Acionadores do Lambda), escolha um acionador do Lambda.

   Se a lista não incluir o acionador do Lambda de que você precisa, escolha **Configure Lambda function trigger** (Configurar acionador da função Lambda). Insira o nome do recurso da Amazon (ARN) da função Lambda ou escolha um recurso existente. Em seguida, escolha **Salvar**.

1. Escolha **Salvar**. O console salva a configuração e exibe a página **Details** (Detalhes) da fila.

   Na página **Details** (Detalhes), a guia **Lambda triggers** (Acionadores do Lambda) exibe a função Lambda e seu status. Demora aproximadamente um minuto para a função Lambda se associar à sua fila.

1. Para verificar os resultados da configuração, você pode [enviar uma mensagem à fila](creating-sqs-standard-queues.md#sqs-send-messages) e, em seguida, visualizar a função Lambda acionada no console do Lambda.