Ir para o conteúdo

Por que meu Amazon Q Developer não recebe mensagens do Amazon SNS?

8 minuto de leitura
0

Eu inscrevi o Amazon Q Developer em aplicações de bate-papo (anteriormente, AWS Chatbot) no meu tópico do Amazon Simple Notification Service (Amazon SNS). No entanto, as notificações do meu tópico do Amazon SNS não chegaram ao Amazon Q Developer.

Breve descrição

As notificações do seu tópico do Amazon SNS não chegaram ao Amazon Q Developer por um dos seguintes motivos:

  • O canal de comunicação entre o Amazon Q Developer e o canal do Slack está configurado incorretamente.
  • O canal de comunicação entre o tópico do SNS e o Amazon Q Developer está configurado incorretamente.

Resolução

Ativar o CloudWatch Logs para Amazon Q Developer

Se você ainda não fez isso, ative o Amazon CloudWatch Logs para Amazon Q Developer em aplicações de bate-papo para revisar as mensagens de erro.

Verifique se configurou corretamente o canal de comunicação entre o Amazon Q Developer e o canal Slack

Verifique se o canal do Slack não foi arquivado ou excluído

Se um canal do Slack for arquivado ou excluído, o canal não poderá receber mensagens e o Slack desativará todas as aplicações.

Para desarquivar um canal, consulte Arquivar ou excluir um canal no site do Slack.

Observação: não é possível restaurar um canal excluído do Slack. Se o canal do Slack inscrito for excluído, crie um novo canal do Slack e configure o novo canal para receber notificações do seu tópico.

Verifique se instalou a aplicação de bate-papo no espaço de trabalho do Slack

Analise as aplicações de bate-papo do CloudWatch Logs para ver a mensagem de erro "account_inactive". Se você encontrar a mensagem de erro "account_inactive", sua aplicação de bate-papo não foi instalada no seu espaço de trabalho do Slack.

Para instalar a aplicação de bate-papo no seu espaço de trabalho do Slack, siga as instruções em Tutorial: conceitos básicos do Slack.

(Somente para canais privados do Slack) Verifique se adicionou a aplicação de bate-papo ao canal do Slack

Analise as aplicações de bate-papo do CloudWatch Logs para ver a mensagem de erro "channel_not_found". Se você não adicionou sua aplicação de bate-papo ao canal privado, aparece essa mensagem de erro.

Para adicionar o Amazon Q Developer a um canal privado do Slack, execute o comando /invite @Amazon Q no canal privado.

(Para Slack, Amazon Chime e Microsoft Teams)

Verifique se você configurou corretamente o canal de comunicação entre o tópico do SNS e o Amazon Q Developer.

Verificar se inscreveu o Amazon Q Developer no tópico do Amazon SNS

Conclua as etapas a seguir:

  1. Abra o console do Amazon Q Developer.
  2. No painel de navegação, em Clientes configurados, escolha Slack, Amazon Chime ou Microsoft Teams.
  3. Selecione seu canal do Slack na configuração do espaço de trabalho do Slack, webhook na lista de webhooks do Amazon Chime ou seu canal do Microsoft Teams.
  4. Escolha Editar.
  5. No painel Detalhes, em Tópicos, procure seu tópico do SNS. Se o tópico não estiver listado, inscreva seu tópico do SNS no Amazon Q Developer.

Verificar se listou o endpoint do Amazon Q Developer como uma assinatura de tópico para o tópico do Amazon SNS

Conclua as etapas a seguir:

  1. Abra o console do Amazon SNS.
  2. No painel de navegação, escolha Tópicos e selecione o nome do seu tópico do SNS.
  3. Em Assinaturas, procure o seguinte endpoint do Amazon Q Developer: https://global.sns-api.chatbot.amazonaws.com. Se o endpoint do Amazon Q Developer não estiver listado como uma assinatura de tópico, você deverá assinar seu tópico do SNS no Amazon Q Developer.
    Observação: use sua configuração do Amazon Q Developer para enviar uma notificação de teste.

Certifique-se de não publicar manualmente mensagens em um formato não suportado do seu tópico do SNS para o Amazon Q Developer

O Amazon Q Developer aceita mensagens que são publicadas manualmente em um tópico do SNS. No entanto, o formato da mensagem deve ser compatível com o Amazon Q Developer. Qualquer serviço configurado para enviar mensagens deve enviar notificações do Amazon SNS para o Amazon Q Developer somente por meio dos serviços compatíveis com o Amazon Q Developer.

Verifique se o Amazon Q Developer é compatível com as mensagens de serviço da AWS publicadas em seu tópico do Amazon SNS

Analise as aplicações de bate-papo do CloudWatch Logs para ver a mensagem de erro "Event Received is not supported". Se você receber uma mensagem de erro "Event Received is not supported", isso significa que o Amazon Q Developer não é compatível com a mensagem de serviço da AWS publicada em seu tópico.

Para obter uma lista dos serviços da AWS que o Amazon Q Developer suporta, consulte Monitoring AWS services using Amazon Q Developer in chat applications (Monitoramento dos serviços da AWS usando o Amazon Q Developer em aplicações de bate-papo).

Certifique-se de que seu tópico do Amazon SNS conceda as permissões necessárias para que outro serviço da AWS publique mensagens

Conclua as etapas a seguir:

  1. Abra o console do Amazon SNS.
  2. No painel de navegação, selecione Tópicos.
  3. Selecione o tópico do SNS no qual você assinou o Amazon Q Developer.
  4. Escolha a guia Política de acesso.
  5. Revise a seção Declaração da política de acesso. Certifique-se de que a política permita que o serviço correto da AWS execute a ação da API SNS:Publish.
  6. Se sua política de acesso do Amazon SNS não permitir que o serviço correto da AWS publique eventos em seu tópico, atualize a política:
    Na seção Detalhes da sua página de tópico, escolha Editar.
    Expanda a seção Política de acesso e adicione o controle de acesso correto.

Observação: para obter exemplos de políticas de acesso do Amazon SNS, consulte Configurar tópicos do Amazon SNS para notificações.

Verifique se o seu tópico do Amazon SNS não tem a entrega de mensagens não processadas ativada

O Amazon Q Developer não aceita a entrega de mensagens não processadas. Para verificar se o tópico do SNS não tem a entrega de mensagens não processadas ativada, conclua as seguintes etapas:

  1. Abra o console do Amazon SNS.
  2. No painel de navegação, escolha Tópicos e selecione o nome do seu tópico do SNS.
  3. No painel Detalhes, em Entrega de mensagens não processadas, verifique se o status está ativado ou desativado.
  4. Se o status for ativado, execute as seguintes ações:
    Escolha Editar.
    Desmarque a opção Habilitar entrega de mensagens não processadas para desativar a entrega de mensagens desse tipo.
    Escolha Salvar alterações.

Certifique-se de incluir as permissões necessárias da política de chaves do AWS KMS

Observação: essa verificação só se aplica a tópicos do SNS com a criptografia do lado do servidor ativada.

Sua política de chaves do AWS Key Management Service (AWS KMS) deve permitir que o serviço que envia mensagens publique em seus tópicos criptografados do SNS.

Sua política de chaves do AWS KMS deve incluir a seguinte seção:

{  
  "Sid": "Allow CWE to use the key",  
  "Effect": "Allow",  
  "Principal": {  
    "Service": "service.amazonaws.com"  
  },  
  "Action": [  
    "kms:Decrypt",  
    "kms:GenerateDataKey"  
  ],  
  "Resource": "*"  
}

Importante: substitua events.amazonaws.com pela entidade principal de serviço da AWS para o serviço que publica seus tópicos de SNS criptografados.

Verifique se os serviços da AWS não publicam mensagens em seu tópico do Amazon SNS a uma taxa superior a 10 notificações por segundo

O Amazon Q Developer permite 10 eventos por segundo. Se o Amazon Q Developer receber mais de 10 eventos por segundo, as mensagens adicionais serão limitadas.

Para verificar se você limitou eventos, revise a métrica EventsThrottled em seu CloudWatch Logs para Amazon Q Developer.

(Para Amazon EventBridge) Certifique-se de que o EventBridge aceita notificações de eventos que os serviços da AWS enviam para seu destino de cliente do Amazon Q Developer

Use um transformador de entrada do EventBridge para gerar notificações personalizadas e, em seguida, encaminhe as notificações para um tópico do SNS. Monitore o tópico do SNS e envie notificações aos canais configurados do Microsoft Teams, Amazon Chime ou Slack com o Amazon Q Developer. As notificações personalizadas do Amazon Q Developer devem seguir o formato do esquema de eventos.

Para mais informações, consulte Supported services for Amazon Q Developer in chat applications (Serviços compatíveis com o Amazon Q Developer em aplicações de bate-papo).

Informações relacionadas

Troubleshooting Amazon Q Developer in chat channels (Solução de problemas do Amazon Q Developer em canais de bate-papo)

Como uso webhooks para publicar mensagens do Amazon SNS no Amazon Chime, Slack ou Microsoft Teams?

AWS OFICIALAtualizada há 5 meses