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:

  1. Clique na tarefa existente no seu editor de integração. O painel de configuração da tarefa será exibido.
  2. 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 :

    Estratégia de tratamento de errosEstratégia de tratamento de erros

    Na seção Tratamento de erros , siga estas etapas:

    1. 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.
      1. 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 .
      2. 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:
        $`ErrorInfo.code`$ = 404
        Para obter informações sobre como adicionar essas condições, consulte Condições de nova tentativa .
    2. 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.
    3. Na seção Apanhador de erros , adicione o apanhador de erros para sua integração.

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:

  1. Execute uma integração.
  2. Se a solicitação falhar, aguarde 10 minutos e tente novamente.
  3. Se a solicitação falhar, aguarde 20 minutos e tente novamente.
  4. Se a solicitação falhar, aguarde 40 minutos e tente novamente.
  5. 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.

$longString$ : "substring"

$list of values$ : "value"

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.