Configurações de tarefa de tratamento de erros - AWS Database Migration Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurações de tarefa de tratamento de erros

É possível definir o comportamento do tratamento de erros da tarefa de replicação ao utilizar as seguintes configurações. Para obter informações sobre como utilizar um arquivo de configuração de tarefas para definir as configurações de tarefas, consulte Exemplo de configurações de tarefas.

  • DataErrorPolicy— Determina a ação que o AWS DMS executa quando há um erro relacionado ao processamento de dados no nível do registro. Erros de conversão, erros de transformação e dados ruins são alguns exemplos de erros de processamento de dados. O padrão é LOG_ERROR.

    • IGNORE_RECORD: a tarefa continua, e os dados daquele registro são ignorados. O contador de erros para a propriedade DataErrorEscalationCount foi incrementado. Portanto, se você definir um limite de erros para uma tabela, este erro será contado para esse limite.

    • LOG_ERROR: a tarefa continua, e o erro é gravado no log de tarefas.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

  • DataTruncationErrorPolicy: determina a ação que o AWS DMS realiza quando os dados estão truncados. O padrão é LOG_ERROR.

    • IGNORE_RECORD: a tarefa continua, e os dados daquele registro são ignorados. O contador de erros para a propriedade DataErrorEscalationCount foi incrementado. Portanto, se você definir um limite de erros para uma tabela, este erro será contado para esse limite.

    • LOG_ERROR: a tarefa continua, e o erro é gravado no log de tarefas.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

  • DataErrorEscalationPolicy: determina a ação que o AWS DMS realiza quando o número máximo de erros (definido no parâmetro DataErrorEscalationCount) é atingido. O padrão é SUSPEND_TABLE.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

  • DataErrorEscalationCount: define o número máximo de erros que podem ocorrer nos dados de um registro específico. Quando esse número é atingido, os dados da tabela que contém o registro de erro são tratados de acordo com a política definida em DataErrorEscalationPolicy. O padrão é 0.

  • EventErrorPolicy— Determina a ação que o AWS DMS executa quando ocorre um erro ao enviar um evento relacionado à tarefa. Os valores possíveis são

    • IGNORE: a tarefa continua e todos os dados associados a esse evento são ignorados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

  • TableErrorPolicy: determina a ação que o AWS DMS realiza quando um erro ocorre durante o processamento de dados ou de metadados de uma tabela específica. Esse erro só se aplica a dados gerais da tabela e é relacionado a um registro específico. O padrão é SUSPEND_TABLE.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

  • TableErrorEscalationPolicy: determina a ação que o AWS DMS realiza quando o número máximo de erros (definido utilizando o parâmetro TableErrorEscalationCount). A configuração de usuário padrão, e única, é STOP_TASK, onde a tarefa é interrompida e é necessária intervenção manual.

  • TableErrorEscalationCount: o número máximo de erros que podem ocorrer devido a dados ou metadados gerais de uma tabela específica. Quando esse número é atingido, os dados da tabela são manipulados de acordo com a política definida em TableErrorEscalationPolicy. O padrão é 0.

  • RecoverableErrorCount: o número máximo de tentativas feitas para reiniciar uma tarefa quando um erro ambiental ocorre. Após o sistema tentar reiniciar a tarefa o número designado de vezes, ela será interrompida e será necessária intervenção manual. O valor padrão é -1, que instrui AWS DMS a tentar reiniciar a tarefa indefinidamente. Quando você define esse valor como -1, o número de novas tentativas que o DMS tenta varia com base no tipo de erro retornado da seguinte forma:

    • Estado de execução, erro recuperável: se ocorrer um erro recuperável, como uma conexão perdida ou uma falha na aplicação de destino, o DMS repetirá a tarefa nove vezes.

    • Estado inicial, erro recuperável: o DMS repete a tarefa seis vezes.

    • Estado de execução, erro fatal tratado pelo DMS: o DMS repete a tarefa seis vezes.

    • Estado de execução, erro fatal não tratado pelo DMS: o DMS não repete a tarefa.

    Defina esse valor como 0 para nunca tentar reiniciar uma tarefa.

    Recomendamos que você RecoverableErrorInterval defina valores de RecoverableErrorCount e para que haja repetições suficientes em intervalos suficientes para que sua tarefa do DMS se recupere adequadamente. Se ocorrer um erro fatal, o DMS interrompe as tentativas de reinicialização na maioria dos cenários.

  • RecoverableErrorInterval— O número de segundos que o AWS DMS espera entre as tentativas de reiniciar uma tarefa. O padrão é 5.

  • RecoverableErrorThrottling: quando ativado, o intervalo entre as tentativas de reiniciar uma tarefa é aumentado em uma série com base no valor de RecoverableErrorInterval. Por exemplo, se RecoverableErrorInterval estiver definido como 5 segundos, a próxima tentativa ocorrerá após 10 segundos, depois 20, depois 40 segundos e assim por diante. O padrão é true.

  • RecoverableErrorThrottlingMax— O número máximo de segundos que o AWS DMS espera entre as tentativas de reiniciar uma tarefa, se RecoverableErrorThrottling estiver ativado. O padrão é 1800.

  • RecoverableErrorStopRetryAfterThrottlingMax— Quando definido comotrue, interrompe a reinicialização da tarefa após atingir o número máximo de segundos de AWS DMS espera entre as tentativas de recuperação, por. RecoverableErrorThrottlingMax

  • ApplyErrorDeletePolicy: determina a ação que o AWS DMS realiza quando há um conflito com uma operação DELETE. O padrão é IGNORE_RECORD. Os valores possíveis são os seguintes:

    • IGNORE_RECORD: a tarefa continua, e os dados daquele registro são ignorados. O contador de erros para a propriedade ApplyErrorEscalationCount foi incrementado. Portanto, se você definir um limite de erros para uma tabela, este erro será contado para esse limite.

    • LOG_ERROR: a tarefa continua, e o erro é gravado no log de tarefas.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

  • ApplyErrorInsertPolicy: determina a ação que o AWS DMS realiza quando há um conflito com uma operação INSERT. O padrão é LOG_ERROR. Os valores possíveis são os seguintes:

    • IGNORE_RECORD: a tarefa continua, e os dados daquele registro são ignorados. O contador de erros para a propriedade ApplyErrorEscalationCount foi incrementado. Portanto, se você definir um limite de erros para uma tabela, este erro será contado para esse limite.

    • LOG_ERROR: a tarefa continua, e o erro é gravado no log de tarefas.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

    • INSERT_RECORD: se houver um registro de destino existente com a mesma chave primária que o registro de origem inserido, o registro de destino será atualizado.

  • ApplyErrorUpdatePolicy: determina a ação que o AWS DMS realiza quando há um conflito de dados ausentes com uma operação UPDATE. O padrão é LOG_ERROR. Os valores possíveis são os seguintes:

    • IGNORE_RECORD: a tarefa continua, e os dados daquele registro são ignorados. O contador de erros para a propriedade ApplyErrorEscalationCount foi incrementado. Portanto, se você definir um limite de erros para uma tabela, este erro será contado para esse limite.

    • LOG_ERROR: a tarefa continua, e o erro é gravado no log de tarefas.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

    • UPDATE_RECORD— Se o registro de destino estiver ausente, o registro de destino ausente será inserido na tabela de destino. AWS DMS desativa completamente o suporte da coluna LOB para a tarefa. Selecionar essa opção requer que o registro em log suplementar total seja ativado para todas as colunas da tabela de origem quando o Oracle é o banco de dados de origem.

  • ApplyErrorEscalationPolicy— Determina qual ação o AWS DMS executa quando o número máximo de erros (definido usando o ApplyErrorEscalationCount parâmetro) é atingido. O padrão é LOG_ERROR:

    • LOG_ERROR: a tarefa continua, e o erro é gravado no log de tarefas.

    • SUSPEND_TABLE: a tarefa continua, mas os dados da tabela com o registro do erro são movidos para um estado de erro e os dados não são replicados.

    • STOP_TASK: a tarefa é interrompida, e intervenção manual é requerida.

  • ApplyErrorEscalationCount: esta opção define o número máximo de conflitos de APPLY que pode ocorrer para uma tabela específica durante uma operação de processo de alteração. Quando esse número é atingido, os dados da tabela são manipulados de acordo com a política definida no parâmetro ApplyErrorEscalationPolicy. O padrão é 0.

  • ApplyErrorFailOnTruncationDdl: defina esta opção como true para fazer com que a tarefa falhe quando um truncamento for executado em uma das tabelas rastreadas durante a CDC. O padrão é false.

    Essa abordagem não funciona com o PostgreSQL versão 11.x ou inferior, ou qualquer outro endpoint de origem que não replica o truncamento da tabela de DDL.

  • FailOnNoTablesCaptured: defina esta opção como true para que uma tarefa falhe quando os mapeamentos de tabelas definidos para uma tarefa não encontrarem tabelas quando a tarefa for iniciada. O padrão é false.

  • FailOnTransactionConsistencyBreached: esta opção se aplica a tarefas que utilizam o Oracle como uma origem com CDC. O padrão é falso. Defina como true para fazer com que uma tarefa falhe quando uma transação permanecer aberta por um tempo maior do que o limite especificado e puder ser descartada.

    Quando uma tarefa do CDC começa com o Oracle, AWS DMS aguarda por um tempo limitado até que a transação aberta mais antiga seja fechada antes de iniciar o CDC. Se a transação aberta mais antiga não fechar até que o tempo limite seja atingido, na maioria dos casos AWS DMS iniciará o CDC, ignorando essa transação. Se essa opção for definida como true, a tarefa falhará.

  • FullLoadIgnoreConflicts— Defina essa opção true para AWS DMS ignorar os erros de “zero linhas afetadas” e “duplicatas” ao aplicar eventos em cache. Se definido comofalse, AWS DMS relata todos os erros em vez de ignorá-los. O padrão é true.

Observe que os erros de carregamento de tabela no Redshift como destino são relatados em STL_LOAD_ERRORS. Para obter mais informações, consulte STL_LOAD_ERRORS no Guia do desenvolvedor de banco de dados do Amazon Redshift.