Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Integração com webhooks

Você pode configurar o Atlas para enviar notificações de alerta para um endpoint de webhook como solicitações HTTP POST para processamento programático. Os webhooks permitem integrar alertas do Atlas a sistemas de monitoramento personalizados, plataformas de gerenciamento de instâncias ou fluxos de trabalho de automação.

Para integrar o Atlas com webhooks, você deve ter acesso Organization Owner de ou Project Owner ao projeto.

1
  1. Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Na barra lateral, clique no ícone ao lado de Project Overview.

A página Configurações do projeto é exibida.

2

Clique na aba Integrations.

A página Integrações de projeto é exibida.

3
4

No campo Webhook URL, insira a URL do endpoint para onde o Atlas deve enviar notificações de alerta .

5

No campo Webhook Secret, insira uma chave secreta. O Atlas utiliza este segredo para gerar o cabeçalho X-MMS-Signature para verificação da solicitação.

6

Para enviar alertas para seu webhook, configure notificações de alerta . Para saber mais, consulte Definir configurações de alerta.

O Atlas inclui os seguintes cabeçalhos HTTP com cada solicitação de webhook:

Cabeçalho
Descrição

X-MMS-Event

Indica o estado de alerta . Valores possíveis:

  • alert.open: o Atlas acabou de abrir o alerta.

  • alert.close: O Atlas resolve o alerta.

  • alert.update: um alerta aberto anteriormente ainda está aberto.

  • alert.acknowledge: Um usuário reconheceu o alerta.

  • alert.cancel: O alerta tornou-se inválido; Atlas cancelou.

  • alert.inform: representa um alerta informativo , que é um evento pontual , como "Eleito primário".

X-MMS-Signature

(Opcional) Se você especificar um segredo no Webhook Secret campo, o Atlas incluirá este cabeçalho. Contém a64assinatura HMAC-SHA- codificada por Base1 do corpo da solicitação. O Atlas cria a assinatura usando o segredo fornecido. Use este cabeçalho para verificar se a solicitação do webhook foi originada do Atlas.

O corpo da solicitação contém um documento JSON que usa o mesmo formato que o recurso de alertas da API de administração do Atlas . A carga útil inclui campos principais, como:

  • id: Identificador único do alerta.

  • eventTypeName: Tipo de evento que acionou o alerta.

  • created: Timestamp em que o alerta foi criado.

  • status: status atual do alerta (por exemplo, OPEN, CLOSED).

  • humanReadable: Descrição legível por humanos do alerta. Esse campo contém o nome do projeto e o nome da organização no formato "Projeto: [nome do projeto ] Organização: [nome da organização]" além de outros detalhes do alerta .

Para obter uma lista completa de campos, consulte a documentação da API de administração do Atlas para obter todos os alertas de projeto.

O exemplo a seguir mostra uma amostra de carga útil do webhook para um alerta de espaço em disco :

{
"id": "5d1b6f8e8c2e4e2d3c4a5b6c",
"groupId": "5d1b6f8e8c2e4e2d3c4a5b6d",
"eventTypeName": "OUTSIDE_METRIC_THRESHOLD",
"status": "OPEN",
"created": "2024-01-15T10:30:00Z",
"updated": "2024-01-15T10:30:00Z",
"lastNotified": "2024-01-15T10:30:00Z",
"humanReadable": "Disk space used on data partition is 95.2%.
Project: MyProject Organization: MyOrganization",
"metricName": "DISK_PARTITION_SPACE_USED_DATA",
"currentValue": {
"number": 95.2,
"units": "RAW"
}
}

O campo Webhook Secret armazena um segredo que o Atlas utiliza exclusivamente para gerar o cabeçalho X-MMS-Signature para verificação do pedido. O Atlas não envia o segredo diretamente como um cabeçalho de autenticação ou token de portador.

Se o endpoint do webhook exigir autenticação, você deverá lidar com isso de forma independente usando um dos seguintes métodos:

  • Parâmetros de consulta: inclua credenciais de autenticação no Webhook URL como parâmetros de consulta. Por exemplo: https://example.com/webhook?token=your-auth-token

  • Lista de acesso IP: configure seu endpoint do webhook para aceitar solicitações somente de endereços IP do Atlas . Esta configuração garante que somente o Atlas possa enviar solicitações para seu endpoint.

  • Proxy reverso ou gateway de API: use um proxy reverso ou gateway de API que lide com a autenticação antes de encaminhar solicitações para o endpoint do webhook.

Para verificar se uma solicitação de webhook foi originada do Atlas, valide o cabeçalho X-MMS-Signature:

1
2
3

Se corresponderem, a solicitação é autentica.

Ao usar integrações de webhook, considere as seguintes limitações:

A carga útil do webhook não inclui o nível de severidade de alerta que você configura no Atlas. Para recuperar a gravidade configurada, faça uma chamada adicional para o endpoint de configuração de alerta da API de administração do Atlas usando o alertConfigId da carga útil do webhook.

O Atlas não fornece uma maneira de acionar alertas de teste manualmente. Para testar o endpoint do webhook, você pode configurar temporariamente um alerta com condições fáceis de acionar, como:

  • Um limite baixo de espaço em disco em um cluster de teste.

  • Um limite de contagem de conexões que você pode acionar abrindo várias conexões.

  • Um limite de atraso de replicação em um conjunto de réplicas de teste.

Depois de confirmar que seu webhook recebe alertas corretamente, você pode excluir a configuração de alerta de teste.

Se o firewall exigir que você configure uma lista de acesso IP, permita o acesso a partir de endereços IP do Atlas para que o Atlas possa se comunicar com o endpoint do webhook.

Se o webhook não receber alertas:

1
2
3

O Atlas considera outros códigos de status como falhas.

4
5