Desabilitar um gatilho
Os triggers podem entrar em um estado suspended em resposta a um evento que impeça o trigger stream de continuar, como uma interrupção da rede ou uma alteração no cluster subjacente. Quando um trigger entra em um estado suspenso, ele é desabilitado. Ele não recebe eventos de mudança e não será disparado.
Observação
No evento de um trigger suspenso ou com falha , o Atlas envia ao proprietário do projeto um e-mail alertando-o sobre o problema.
Desativar manualmente um trigger
Você pode desabilitar manualmente um trigger ativo na UI do Atlas ou importando um aplicação diretório com a App Services CLI.
Navegue até a página Triggers
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Triggers sob o título Services.
A páginaAcionadores é exibida.
Nos Gatilhos listados, encontre o trigger que você deseja desabilitar.
Alterne a configuração Enabled para desativá-la e clique em Save.
Autentique um usuário do MongoDB Atlas :
Use suachave de API de administração do MongoDB Atlas para fazer login na App Services CLI:
appservices login --api-key="<API KEY>" --private-api-key="<PRIVATE KEY>" Extraia os arquivos de configuração mais recentes do seu aplicativo:
Execute o seguinte comando para obter uma cópia local dos seus arquivos de configuração:
appservices pull --remote=<App ID> Por padrão, o comando extrai arquivos para o diretório de trabalho atual. Você pode especificar um caminho de diretório com o sinalizador
--local
opcional.Verifique o arquivo de configuração do trigger :
Se você exportou uma nova cópia do seu aplicação, ela já deverá incluir um arquivo de configuração atualizado para o trigger suspenso . Você pode confirmar que o arquivo de configuração existe procurando no diretório
/triggers
por um arquivo de configuração detrigger com o mesmo nome que o trigger.Desative o trigger:
Depois de verificar se o trigger arquivo de configuração do existe, adicione um campo chamado
"disabled"
com o valortrue
ao nível superior da trigger JSON definição do :{ "id": "6142146e2f052a39d38e1605", "name": "steve", "type": "SCHEDULED", "config": { "schedule": "*/1 * * * *" }, "function_name": "myFunc", "disabled": true } Distribua suas alterações:
Execute o seguinte comando para implementar suas alterações:
appservices push
Restauração a partir de um snapshot
Quando você restaura o banco de dados de dados a partir de um snapshot, qualquer trigger que foi desabilitado ou suspenso é habilitado novamente. O trigger não será disparado para eventos que já foram processados. Para obter mais informações sobre a restauração a partir de snapshots, consulte Restaurar seu cluster.
Considere o seguinte cenário:
Seu gatilho de banco de dados de dados ( trigger está desabilitado ou suspenso.
Novos documentos são adicionados enquanto o trigger está desabilitado.
Você restaura o banco de dados de dados de um snapshot para um momento anterior à adição dos novos documentos.
O Atlas reinicia o trigger de banco de dados de dados desabilitado .
O trigger reiniciado coleta todos os documentos recém-adicionados e é acionado para cada documento. No entanto, ele não será acionado novamente para eventos que já foram processados.
Observação
Se um trigger de banco de dados de dados habilitado anteriormente estiver em execução durante a restauração de snapshot, você verá um erro na seção Editar trigger da interface do usuário do Atlas porque o trigger não pode se conectar ao cluster do Atlas durante o processo de restauração. Após a conclusão da restauração do snapshot, o erro desaparece e o trigger continua a ser executado normalmente.