app/ └── triggers/ └── <trigger name>.json
Configuração geral
Todos os Atlas Triggers estão em conformidade com um esquema base com variações específicas, dependendo do tipo de trigger. Os seguintes campos existem em todos os arquivos de configuração do trigger:
{ "name": "<Trigger Name>", "type": "<Trigger Type>", "disabled": <Boolean>, "config": {}, "event_processors": { "<Type of Event Processor>": { "config": {} } } }
Campo | Descrição |
|---|---|
namestring | O nome do trigger. Pode ter no máximo 64 caracteres e só pode conter letras, números, sublinhados e hífens ASCII. |
typestring | O tipo de trigger. O valor deste campo determina o esquema exato do arquivo de configuração. Opções válidas:
|
disabledboolean | Padrão é |
configobject | Um documento com campos que são mapeados para opções de configuração adicionais para o trigger. Os campos de configuração exatos dependem do trigger |
event_processorsobject | Um documento que configura o trigger para enviar eventos para um processador de eventos sempre que ele é disparado. Opções válidas:
Para mais informações sobre Funções, consulte Função de Realm. Para obter mais informações sobre o Amazon Web Services Eventbridge, consulte Enviar trigger evento para o Amazon Web Services Eventbridge. |
event_processors.configobject | Um documento com campos que são mapeados para opções de configuração adicionais para o processador de eventos. Os campos de configuração exatos dependem do tipo do processador de eventos: |
Gatilhos de banco de dados
As configurações de Database Tools estão em conformidade com o esquema de trigger base com opções de configuração adicionais que especificam qual collection observar e quando acionar o trigger.
Os campo existem em arquivos de configuração do trigger do Database Tools. Existem duas configurações possíveis dependendo do tipo de processador de eventos:
FUNCTIONAWS_EVENTBRIDGE
Database Tools com um processador de evento de função
{ "name": "<Trigger Name>", "type": "DATABASE", "disabled": <boolean>, "config": { "service_id": "<MongoDB Data Source Service ID>", "database": "<Database Name>", "collection": "<Collection Name>", "operation_types": ["<Operation Type>", ...], "full_document": <boolean>, "full_document_before_change": <boolean>, "tolerate_resume_errors": <boolean>, "unordered": <boolean>, "match": { <Match Filter> }, "maximum_throughput": <boolean>, "skip_catchup_events": <boolean>, "project": { <Projection Filter> }, }, "event_processors": { "FUNCTION": { "config": { "function_name": "<Function Name>" } } } }
Gatilho de banco de dados com um processador de eventos do AWS EventBridge
{ "name": "<Trigger Name>", "type": "DATABASE", "disabled": <boolean>, "config": { "service_id": "<MongoDB Data Source Service ID>", "database": "<Database Name>", "collection": "<Collection Name>", "operation_types": ["<Operation Type>", ...], "full_document": <boolean>, "full_document_before_change": <boolean>, "tolerate_resume_errors": <boolean>, "unordered": <boolean>, "match": { <Match Filter> }, "maximum_throughput": <boolean>, "skip_catchup_events": <boolean>, "project": { <Projection Filter> }, }, "event_processors": { "AWS_EVENTBRIDGE": { "config": { "account_id": "<AWS Account ID>", "region": "<AWS Region>", "extended_json_enabled": <boolean> } } }, "error_handler": { "config": { "enabled": <boolean>, "function_name": "<Error Handler Function Name>" } } }
Campo | Descrição | ||||||||
|---|---|---|---|---|---|---|---|---|---|
config.service_idstring | O identificador exclusivo da fonte de dados MongoDB que contém a coleção assistida. Não é possível definir um trigger de banco de dados de dados em uma instância sem servidor ou instância do banco de dados de dados federado. | ||||||||
config.databasestring | O nome do MongoDB database que contém a collection assistida. | ||||||||
config.collectionstring | O nome da collection que o trigger assiste. | ||||||||
config.operation_typesstring[] | Uma lista de um ou mais tipos de operação do reconhecimento de data center que fazem o trigger disparar. Tipos de operações válidos para todos os Atlas Triggers:
Tipos de operações válidas para Atlas Triggers de reconhecimento de data center e sistema:
Tipos de operações válidos apenas para Atlas Triggers de implementação:
DicaAs operações de atualização executadas a partir do MongoDB Compass ou do MongoDB Atlas Data Explorer substituem completamente o documento anterior. Como resultado, as operações de atualização desses clientes gerarão | ||||||||
config.full_documentboolean | Se ObservaçãoIndependentemente desta configuração, os eventos | ||||||||
config.full_document_before_changeboolean | Se ImportanteConfigurações de pré-imagem em nível de coleçãoAs pré-imagens de documentos usam informações adicionais armazenadas no oplog. Os dados extras podem ter implicações de desempenho para alguns aplicativos. Depois de habilitar as pré-imagens de documento para qualquer trigger em uma determinada collection, essa collection incluirá dados de pré-imagem no oplog e outros Atlas Triggers na collection poderão usar pré-imagens sem sobrecarga adicional. Você pode desativar as pré-imagens de documentos por trigger para excluir a pré-imagem de eventos de alteração. Independentemente das configurações de nível de trigger, as entradas de oplog de uma collection continuarão a incluir dados de pré-imagem, a menos que você desative explicitamente as pré-imagens para a collection. Para obter mais informações, consulte Pré-imagens de documentos. | ||||||||
config.tolerate_resume_errorsboolean | Se Se ativado, quando o token de retomada desse trigger não puder ser encontrado no oplog do cluster, o trigger retomará automaticamente os eventos de processamento no próximo evento relevante de change streams. Todos os eventos de change streams, desde quando o trigger foi suspenso até que o trigger retome a execução, não têm o trigger acionado para eles. Para obter mais informações sobre como retomar Atlas Triggers suspensos, consulte Atlas Triggers suspensos. | ||||||||
config.unorderedboolean | Se Se a ordenação de eventos estiver habilitada, múltiplas execuções desse trigger ocorrerão sequencialmente com base nos carimbos de data/hora dos eventos de alteração. Se a ordenação de eventos estiver desabilitada, múltiplas execuções desse trigger ocorrerão de forma independente. DicaOtimização de desempenhoDesabilite o reconhecimento de data center de eventos para melhorar o desempenho dos Atlas Triggers que respondem a operações de reconhecimento de data center em massa. Saiba mais. | ||||||||
config.matchobject | Um documento de expressão $match que o App Services usa para filtrar quais eventos de alteração causam o acionamento do trigger. O trigger avalia todos os objetos de evento de alteração que recebe em relação a essa expressão de correspondência e só é executado se a expressão for avaliada como ObservaçãoUsar notação de ponto para campos incorporadosO MongoDB executa uma correspondência de igualdade total para documentos incorporados em uma expressão de correspondência. Se quiser corresponder a um campo específico em um documento incorporado, consulte o campo diretamente usando anotação de ponto. Para obter mais informações, consulte Query sobre documentos incorporados no manual do servidor MongoDB. DicaOtimização de desempenhoLimite o número de campos que o trigger processa usando uma expressão $match . Saiba mais. | ||||||||
config.maximum_throughputboolean | Padrão é | ||||||||
config.skip_catchup_eventsboolean | Padrão é | ||||||||
config.projectobject | Uma expressão $project que seleciona um subconjunto de campos de cada evento no fluxo de alteração. Você pode usar isso para otimizar a execução do trigger. A expressão é um objeto que mapeia o nome dos campos no evento de alteração para um
| ||||||||
event_processors.config.account_idstring | Um ID de conta Amazon Web Services. Para obter mais informações sobre como encontrar o ID da conta, consulte Configurar a origem do evento de parceiro do MongoDB. | ||||||||
event_processors.config.regionstring | Uma região Amazon Web Services. | ||||||||
event_processors.config.extended_json_enabledboolean |
Os Atlas Triggers convertem os BSON types em objetos de evento em tipos JSON padrão. Para preservar informações sobre o tipo BSON, você pode serializar objetos de evento no formato JSON estendido . O JSON estendido preserva informações de tipo às custas de legibilidade e interoperabilidade. | ||||||||
error_handler.config.enabledboolean | Se | ||||||||
error_handler.config.function_namestring | O nome da função do manipulador de erros invocada quando o trigger do Amazon Web Services Eventbridge falha e não pode ser repetido com êxito. |
Gatilhos de autenticação
As configurações do trigger de autenticação estão em conformidade com o esquema básico do trigger, com opções de configuração adicionais que especificam quais provedores de autenticação devem ser observados e quando acionar o trigger. Os seguintes campo existem em arquivos de configuração do trigger de autenticação :
{ "name": "<Trigger Name>", "type": "AUTHENTICATION", "config": { "operation_type": ["<Operation Type>", ...], "providers": ["<Provider Type>", ...], }, "function_name": "<Trigger Function Name>", "disabled": <Boolean> }
Campo | Descrição |
|---|---|
config.operation_typestring | O tipo de operação de autenticação que faz com que o trigger seja acionado. Tipos de operações válidos:
|
config.providersstring[] | Uma lista de tipos de provedor de autenticação que o trigger assiste. Tipos de provedor válidos:
|
Gatilhos programados
As configurações de trigger agendado estão em conformidade com o esquema de trigger base com opções de configuração adicionais que especificam a programação na qual o trigger é acionado. Os seguintes campo existem em arquivos de configuração de trigger agendado :
{ "name": "<Trigger Name>", "type": "SCHEDULED", "config": { "schedule": "<CRON expression>" }, "function_name": "<Trigger Function Name>", "disabled": <Boolean> }
Campo | Descrição |
|---|---|
config.schedulestring | A expressão CRON que agenda a execução do trigger. |