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:
10 minutos
1 hora
3 horas
12 horas
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.