Principal Tratamento de erros
🚨

Tratamento de erros

Saiba mais sobre os erros comuns que podem acontecer nas execuções e configurações de cenários e aprenda como resolvê-los.
Eduardo
Por Eduardo
2 artigos

PROCESSAMENTO DE ERRO

Sobre Às vezes, pode ocorrer um erro durante a execução de um cenário. Isso acontece principalmente se um serviço estiver indisponível devido a uma falha na conexão com um serviço ou se a validação falhar. Abaixo, descrevemos os erros comuns que você pode encontrar. Tipos de erro Saiba diferenciar vários tipos básicos de erro. Ele reagirá de maneira diferente, dependendo do tipo de erro ocorrido. Erro de conexão "ConnectionError" O erro de conexão é um dos erros mais comuns, geralmente causados ​​pela indisponibilidade do serviço de terceiros por diversos motivos (sobrecarga, manutenção, interrupção, etc.). O tratamento padrão desse erro depende de qual módulo ele foi encontrado: - Se o erro ocorrer no primeiro módulo, a execução do cenário é encerrada com uma mensagem de aviso. Faça tentativas repetidas de executar novamente o cenário em intervalos de tempo crescentes. Se todas as tentativas falharem, o Toolzz Connect desativa o cenário. - Se o erro de conexão ocorrer em outro módulo após o primeiro, as etapas subsequentes dependem da opção "Allow storing incomplete execution" nas configurações avançadas do cenário: - Se esta opção estiver habilitada, a execução do cenário é movida para a pasta Execuções incompletas, onde o Toolzz Connect repetidamente tenta reexecutar o cenário em intervalos de tempo crescentes. Se todas as tentativas falharem, a execução ficará na pasta "Incomplete executions" aguardando resolução manual pelo usuário. - Se a opção estiver desabilitada, a execução do cenário termina com um erro seguido de uma fase de reversão. Faça tentativas repetidas de executar novamente o cenário em intervalos de tempo crescentes. Se todas as tentativas falharem, o Toolzz Connect desativa o cenário. Intervalos de tempo crescentes O algoritmo que aumenta, multiplicativamente, os intervalos de tempo entre as tentativas quando ocorre um erro é conhecido como "Exponential backoff". Os intervalos de tempo crescentes são definidos da seguinte forma: 1. 10 minutos 2. 1 hora 3. 3 horas 4. 12 horas 5. 24 horas ❗ Observação A principal razão para empregar intervalos de tempo crescentes é evitar que cenários executados com frequência consumam operações em tentativas com falhas repetidas. Exemplo: Imagine que seu cenário contém o gatilho do "Google Photos > Watch photos and videos". No entanto, o serviço "Google Fotos" fica indisponível por 30 minutos devido a manutenção. Quando o Toolzz Connect inicia o cenário, o "Google Fotos" não consegue recuperar novas fotos ou vídeos. O cenário para e tenta novamente em 10 minutos. Como o serviço continua indisponível nesse período, o Toolzz connect ainda não consegue obter informações sobre novas fotos. A próxima execução do cenário está agendada em 1 hora. O serviço "Google Fotos" está disponível novamente neste período e o cenário é executado conforme o esperado. Erro de dados "ConnectionError" Um erro de dados é gerado quando um item é mapeado incorretamente e não passa na validação realizada pela marca ou serviço de terceiros que está sendo usado. Se esse erro ocorrer, o cenário, até onde o módulo falhou, é movido para a pasta execuções incompletas, onde você pode solucionar o problema. No entanto, o cenário não para e continua a ser executado de acordo com sua programação. Para interromper a execução do cenário quando um erro de dados aparecer, ative a opção "Sequential processing" nas configurações do cenário. Se você não habilitou a opção "Allow storing incomplete executions" nas configurações do cenário, a execução do cenário termina com o erro e uma reversão é executada. Exemplo: Se seu cenário contiver a ação do Twitter > "Criate a tweet", o limite de 280 caracteres para um tweet não pode ser excedido. Se você tentar tweetar com mais de 280 caracteres, a execução do cenário terminará com um erro de dados. Erro de dados duplicados "DuplicateDataError" Se o Toolzz Connect tentar inserir o mesmo pacote duas vezes em um serviço que não permite dados duplicados, um erro de dados duplicados será gerado. Se esse erro ocorrer, o Toolzz Connect procede da mesma forma que para o erro de dados. Exemplo: Um cenário contendo a ação Twitter > "Criar um tweet" será encerrado com este erro se o Toolzz Connect tentar inserir o mesmo tweet duas vezes. Erro de token de acesso inválido "InvalidAccessTokenError" Um erro de token de acesso inválido ocorre quando o Toolzz Connect não consegue acessar sua conta registrada em um serviço de terceiros. Isso acontece principalmente quando você revoga os direitos de acesso para o Toolzz Connect na administração de um determinado serviço, mas os cenários relacionados continuam sendo executados de acordo com o cronograma. Se esse erro ocorrer, a execução de um cenário é interrompida imediatamente. O restante do cenário a partir do módulo onde ocorreu o erro é movido para "Incomplete executions". Erro de limite de taxa "RateLimitError" Se um limite definido por um determinado serviço for excedido, um erro de limite de taxa é gerado. Se esse erro acontecer, o Toolzz Connect procede da mesma forma que para o ConnectionError (erro de conexão). Erro de dados incompletos "IncompleteDataError" Um erro de dados incompletos ocorre apenas com gatilhos. Este erro é gerado se um acionador falhar ao baixar os dados necessários de um determinado serviço. Se um cenário terminar com "IncompleteDataError", seu comportamento posterior dependerá da configuração do número máximo de erros consecutivos. Exemplo: Imagine que você tem um cenário com o gatilho do "Google Photos > Watch photos and videos". Se o cenário for executado enquanto você carrega fotos ou vídeos para um álbum selecionado, o Toolzz Connect pode tentar baixar um arquivo que acabou de ser carregado para o "Google Fotos" (por exemplo, um vídeo longo). Se isso acontecer, o cenário terminará com o "IncompleteDataError". Erro de tempo de execução "RuntimeError" Se algum outro erro (não mencionado acima) aparecer durante a execução do cenário, ele será relatado como "RunTimeError". Se um cenário terminar com o "RuntimeError", seu comportamento posterior dependerá de sua configuração de número máximo de erros consecutivos. ❗ Observação Se um cenário começar com um gatilho instantâneo, a configuração de "Max number of consecutive errors " é ignorada e o cenário é desativado imediatamente após a ocorrência do primeiro erro. Erro de inconsistência "InconsistencyError" Se algum erro descrito acima ocorrer durante a fase de confirmação ou reversão, um cenário será encerrado com um erro de inconsistência. Se esse erro aparecer em um cenário, a execução do cenário é imediatamente interrompida. ⚠️ Aviso Ao executar um cenário, você pode receber um aviso informando sobre um problema. No entanto, isso não impede que o cenário seja concluído com sucesso. Por exemplo, um aviso pode aparecer quando o tamanho máximo de arquivo permitido é excedido e a opção "Enable data loss" está desativada. Pronto! Agora você já sabe tudo sobre processamento de erros no Toolzz Connect.

Última atualização em Mar 14, 2024

DIRETRIZES PARA TRATAMENTO DE ERROS

Tipos de diretrizes As diretrizes são explicadas em detalhes abaixo: Rollback A execução do cenário é interrompida imediatamente e uma fase de reversão é iniciada em todos os módulos na tentativa de revertê-los ao estado inicial. Os módulos subsequentes não são processados. Salvo alguns tipos de erro, o cenário é desativado após o "number of consecutive errors" (número de erros consecutivos) especificado em Configurações do cenário. O status de execução do cenário é marcado como "error". ❗Observação: Este é o comportamento padrão se nenhuma rota do manipulador de erros estiver anexada ao módulo e a configuração "Permitir armazenamento de execuções incompletas" em "Configurações do cenário" não estiver marcada. Commit A execução do cenário é interrompida imediatamente e uma fase de confirmação é iniciada em todos os módulos. Os módulos subsequentes não são processados. Todos os bundles (pacotes) não processados ​​são ignorados. O status de execução do cenário é marcado como "success". Resume Uma saída substituta é especificada e fornecida ao módulo que encontra um erro. Os módulos subsequentes são processados. O status de execução do cenário é marcado como "success". Ignore O erro é ignorado e os módulos subsequentes não são processados. Se houver pacotes não processados, a execução do cenário continua normalmente. O status de execução do cenário é marcado como "success". Break O estado da execução do cenário é armazenado na fila de execuções incompletas onde o erro pode ser resolvido manualmente. No entanto, existem algumas exceções mencionadas aqui. Os módulos subsequentes não são processados. Se houver pacotes não processados, a execução do cenário continua normalmente. O status de execução do cenário é marcado como "warning" quando "Automatically complete execution***"*** está desativada. Consulte a seção "Break" abaixo para obter mais informações. Retry Em alguns casos, pode ser útil reexecutar um módulo com falha algumas vezes quando houver uma chance de que o motivo da falha passe com o tempo. Atualmente, o Toolzz Connect não oferece a diretiva "Retry", embora várias soluções alternativas possam ser empregadas para imitar sua funcionalidade. 📢 Informação importante: Atualmente, as diretrizes de tratamento de erros não podem ser usadas fora do escopo de uma rota de tratamento de erros. O Toolzz Connect, atualmente, não oferece um módulo "Throw" que permitiria que você facilmente gerasse (lançasse) erros condicionalmente, embora uma solução alternativa pode ser empregada para imitar sua funcionalidade. Break Quando um erro é tratado pela diretriz "Break", um registro é criado na pasta "Incomplete Executions" que armazena o estado da execução do cenário junto com os dados dos módulos anteriores. Para cada pacote de dados que causa o erro, um registro separado é criado. O registro faz referência ao módulo onde o erro se originou e contém informações sobre quais dados foram recebidos pelo módulo como entrada. Aqui, você pode resolver o erro manualmente atualizando o cenário (se necessário) e executando-o uma vez. Por outro lado, ao habilitar a opção "Automatically complete execution" nas configurações da diretriz "Break", ela pode ser configurada para processar automaticamente uma execução incompleta reexecutando o cenário após o número de minutos especificado. Com esta opção habilitada, quando ocorre um erro, a execução incompleta é recuperada (após o tempo especificado no campo "Interval between attempts") e executada com os dados de entrada originais. Isso se repetirá até que a execução do módulo seja concluída sem erros ou até que o número de tentativas especificado seja atingido. No entanto, há algumas exceções para execuções armazenadas na aba "Incomplete Executions", em um cenário, e, com alguns tipos de erro, a repetição automática de uma execução de cenário não é possível. Execuções incompletas Fornece informações sobre todas as execuções incompletas do cenário. Ele inclui as seguintes informações para cada execução incompleta: - Data Criada - Tamanho da transferência de dados - Tentar novamente - Resolvido - Número de tentativas Pronto! Agora você já sabe tudo sobre as diretrizes para tratamento de erros no Toolzz Connect.

Última atualização em Mar 14, 2024