Veja os conectores suportados para integração de aplicativos.
Estratégias de tratamento de erros para tarefas
A estratégia de tratamento de erros para uma tarefa especifica a ação a ser tomada se a tarefa falhar devido a um erro temporário.
Configurar estratégias de tratamento de erros
Para configurar uma estratégia de tratamento de erros para uma tarefa, siga estas etapas:
- Clique na tarefa existente no seu editor de integração. O painel de configuração da tarefa será exibido.
- No painel de configuração de tarefas, expanda a seção Tratamento de erros . A imagem a seguir mostra a seção Tratamento de erros :
Na seção Tratamento de erros , siga estas etapas:
- Para adicionar uma nova política de falha, clique em + Adicionar Política de Falha . Se várias políticas de falha condicionais estiverem configuradas, elas serão verificadas e correspondidas em ordem.
- No campo Estratégia de repetição , selecione a estratégia de tratamento de erros que deseja usar. Para obter uma lista de estratégias, consulte Estratégias de repetição .
- No campo Condição de repetição , insira a condição que deve corresponder ao erro para que esta estratégia de erro seja executada. Por exemplo, para uma tarefa Chamar ponto de extremidade REST , para executar a estratégia de erro se o código de erro corresponder
404
, insira o seguinte: Para obter informações sobre como adicionar essas condições, consulte Condições de nova tentativa .$`ErrorInfo.code`$ = 404
- Na seção Política de erro padrão , adicione a política padrão que deve ser aplicada caso nenhuma política de falha condicional corresponda. A política de falha padrão é opcional.
- Na seção Apanhador de erros , adicione o apanhador de erros para sua integração.
- Para adicionar uma nova política de falha, clique em + Adicionar Política de Falha . Se várias políticas de falha condicionais estiverem configuradas, elas serão verificadas e correspondidas em ordem.
Para obter informações sobre códigos de erro e tratamento de erros, consulte Tratamento de erros . Estratégias de repetição:
As tabelas a seguir descrevem as diferentes estratégias de tratamento de erros que você pode usar para uma tarefa:
Tipo de estratégia | Descrição |
---|---|
Fatal | Interrompe a execução de toda a integração e marca o status de execução como Falha . |
Ignorar | Ignora a falha da tarefa. A integração continua a executar as próximas tarefas, assumindo que a tarefa com falha tenha sido concluída com Sucesso . |
Nenhum | Interrompe a execução da tarefa e marca o status de integração como Falha . Se houver um caminho alternativo para a tarefa final (tarefa folha), as tarefas nesse caminho alternativo serão executadas. Se todas as tarefas no caminho alternativo forem executadas com sucesso, marca o status de integração como Bem-sucedido . |
Reiniciar a integração com backoff | Executa toda a integração a partir da primeira tarefa. No entanto, a tarefa pode falhar novamente. Para evitar falhas recorrentes, especifique o intervalo de tempo entre reinicializações no campo Intervalo de nova tentativa (em segundos) e o número de tentativas de reinicialização permitidas no campo Contagem máxima de novas tentativas. |
Repetir tarefa com recuo exponencial | Executa a integração a partir da tarefa com falha. Se a tarefa falhar durante uma nova tentativa, o intervalo de tempo entre cada nova tentativa aumenta em uma potência de 2. Há um atraso de 1 a 5 segundos que é adicionado ao tempo de espera. Por exemplo, se o intervalo de repetição especificado for de 3 segundos, a primeira tentativa ocorrerá após 3 segundos. A segunda tentativa ocorrerá após 9 segundos, a terceira após 81 segundos e assim por diante. O processo continua até que o número máximo de tentativas seja atingido ou a tarefa seja bem-sucedida, o que ocorrer primeiro. |
Repetir tarefa com intervalo fixo | Executa a integração a partir da tarefa com falha. Se a tarefa falhar durante uma nova tentativa, o intervalo de tempo entre cada nova tentativa permanece constante. Por exemplo, se o intervalo de repetição especificado for de 3 segundos, as tentativas ocorrerão a cada 3 segundos. O processo continua até que o número máximo de tentativas seja atingido ou a tarefa seja bem-sucedida, o que ocorrer primeiro. |
Repetir tarefa com recuo linear | Executa a integração a partir da tarefa com falha. Se a tarefa falhar durante uma nova tentativa, o intervalo de tempo entre cada nova tentativa aumenta linearmente. Há um atraso de 1 a 5 segundos que é adicionado ao tempo de espera. Por exemplo, se o intervalo de repetição especificado for de 3 segundos, a primeira tentativa ocorrerá após 3 segundos. A segunda tentativa ocorrerá após 6 segundos, a terceira após 9 segundos e assim por diante. O processo continua até que o número máximo de tentativas seja atingido ou a tarefa seja bem-sucedida, o que ocorrer primeiro. |
Tentativas de recuo
O limite de simultaneidade padrão é definido como 50 execuções para cada projeto e região. As execuções com falha são enfileiradas e repetidas usando um algoritmo de backoff exponencial, que aumenta gradualmente o tempo de espera entre as tentativas em até 10 vezes. Por exemplo:
- Execute uma integração.
- Se a solicitação falhar, aguarde 10 minutos e tente novamente.
- Se a solicitação falhar, aguarde 20 minutos e tente novamente.
- Se a solicitação falhar, aguarde 40 minutos e tente novamente.
- E assim por diante, até um máximo de 10 tentativas de espera.
Condições de nova tentativa
A condição de repetição especifica a condição que deve corresponder para que a estratégia de tratamento de erros seja executada. A tabela a seguir descreve os operadores e funções suportados que você pode usar na condição de repetição:
Operadores suportados
A tabela a seguir descreve os operadores suportados disponíveis para uso em condições de nova tentativa.
Operador | Descrição | Exemplo |
= | Verifica a igualdade entre dois valores | $var$ = "value" |
!= | Verifica a desigualdade entre dois valores | $var$ != "value" |
< | Verifica se um valor é menor que outro valor | 5 < 10 |
<= | Verifica se um valor é menor ou igual a outro valor | $var$ <= 5 |
> | Verifica se um valor é maior que outro valor | 1 > 0 |
>= | Verifica se um valor é maior ou igual a outro valor | $var$ >= 0 |
: | Verifica se uma string contém uma substring ou verifica se uma lista contém um valor primitivo específico. | |
E | Verifica duas expressões e retorna verdadeiro se ambas as expressões forem avaliadas como verdadeiras. | $a$ > $b$ AND $b$ < $c$ |
OU | Verifica duas expressões e retorna verdadeiro se qualquer uma delas for avaliada como verdadeira. | $a$ > $b$ OR $b$ < $c$ |
NÃO | Operador de negação. Inverte o resultado de uma expressão. | NOT($var$ = "value") |
Funções suportadas
A tabela a seguir descreve as funções suportadas disponíveis para uso em condições de nova tentativa.
Função | Descrição |
exists( VARIABLE ) | Verifica se uma determinada variável existe |
does_not_exist( VARIABLE ) | Verifica se uma determinada variável não existe |
is_empty( VARIABLE ) | Verifica se uma variável fornecida é uma lista E está vazia. Suporta variáveis do tipo array, exceto array JSON. |
is_not_empty( VARIABLE ) | Verifica se uma variável fornecida é uma lista E não está vazia. Suporta variáveis do tipo array, exceto array JSON. |