Arquivos de configuração do trigger
Nesta página
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 |
---|---|
name string | O nome do trigger. Pode ter no máximo 64 caracteres e só pode conter letras, números, sublinhados e hífens ASCII. |
type string | O tipo de trigger. O valor deste campo determina o esquema exato do arquivo de configuração. Opções válidas:
|
disabled boolean | Padrão é false . Se true , o trigger não escutará nenhum evento e não disparará. |
config object | 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_processors object | 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.config object | 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:
FUNCTION
AWS_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_id string | 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.database string | O nome do MongoDB database que contém a collection assistida. | ||||||||
config.collection string | O nome da collection que o trigger assiste. | ||||||||
config.operation_types string[] | 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_document boolean | Se ObservaçãoIndependentemente desta configuração, os eventos | ||||||||
config.full_document_before_change boolean | 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_errors boolean | 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.unordered boolean | 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.match object | 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_throughput boolean | Padrão é false . Se true , você pode aumentar a taxa de transferência máxima além dos 10.000 processos simultâneos padrão. Para obter mais informações, consulte Maximizar Atlas Triggers. | ||||||||
config.skip_catchup_events boolean | Padrão é false . Se true , habilitar o trigger depois que ele foi desabilitado não invocará evento que ocorreram enquanto o trigger esteve desabilitado. | ||||||||
config.project object | 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_id string | 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.region string | Uma região Amazon Web Services. | ||||||||
event_processors.config.extended_json_enabled boolean |
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.enabled boolean | Se true , o tratamento de erros está habilitado para o trigger do Amazon Web Services Eventbridge. Para obter mais informações sobre como configurar o tratamento de erros, consulte Tratamento de erros personalizado. | ||||||||
error_handler.config.function_name string | 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_type string | O tipo de operação de autenticação que faz com que o trigger seja acionado. Tipos de operações válidos:
|
config.providers string[] | 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.schedule string | A expressão CRON que agenda a execução do trigger. |