Executar uma atividade Fail no Azure Data Factory e no Synapse Analytics
Ocasionalmente, você pode querer lançar um erro em um pipeline intencionalmente. Uma Atividade de pesquisa pode não retornar dados correspondentes ou uma Atividade personalizada pode terminar com um erro interno. Seja qual for o motivo, agora você pode usar uma atividade Fail em um pipeline e personalizar tanto a mensagem de erro quanto o código de erro.
APLICA-SE A: Azure Data Factory
Azure Synapse Analytics
Dica
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!
Criar uma atividade Fail com a interface do usuário
Para usar uma atividade Fail em um pipeline, siga estas etapas:
Procure Fail no painel Atividades do pipeline e arraste uma atividade Fail para a tela do pipeline.
Selecione a nova atividade Fail na tela, se ainda não estiver selecionada, e a guia Configurações para editar os detalhes.
Insira uma mensagem de falha e um código de erro. Esses valores podem ser expressões de cadeia de caracteres literais nem outra combinação de expressões dinâmicas, variáveis do sistema ou saídas de outras atividades.
Sintaxe
{
"name": "MyFailActivity",
"type": "Fail",
"typeProperties": {
"errorCode": "500",
"message": "My Custom Error Message"
}
}
Propriedades de tipo
Propriedade | Descrição | Valores permitidos | Obrigatório |
---|---|---|---|
name | O nome da atividade Fail. | String | Sim |
type | Deve ser definido como Falha. | String | Yes |
message | A mensagem de erro que surgiu na atividade Fail. Pode ser conteúdo dinâmico a ser avaliado em runtime. | String | Sim |
errorCode | O código de erro que categoriza o tipo de erro da atividade Fail. Pode ser conteúdo dinâmico a ser avaliado em runtime. | String | Sim |
Conceitos básicos do código de erro da atividade Fail
Os autores de pipeline normalmente definem a mensagem de erro e o código de erro da atividade Fail. Para entender os significados específicos dos códigos de erro, entre em contato com o desenvolvedor de pipeline. No entanto, nos casos de borda a seguir, o Azure Data Factory define a mensagem de erro e/ou o código de erro.
Descrição da situação | Mensagem de erro | Código do erro |
---|---|---|
O conteúdo (dinâmico) em message e errorCode é interpretado corretamente. |
A mensagem de erro definida pelo usuário | O código de erro definido pelo usuário |
Não é possível interpretar o conteúdo dinâmico em message e errorCode . |
“Falha ao interpretar a mensagem de falha ou código de erro <nome_da_atividade>" | ErrorCodeNotString |
Não é possível interpretar o conteúdo dinâmico em message como uma cadeia de caracteres. |
"<activity_name> parâmetro de mensagem de falha não pôde ser interpretado como uma cadeia de caracteres" | O código de erro definido pelo usuário |
O conteúdo dinâmico em message resolve para nulo, cadeia de caracteres vazia ou espaços em branco. |
“Falha ao interpretar a mensagem de falha ou código de erro <nome_da_atividade>" | O código de erro definido pelo usuário |
Não é possível interpretar o conteúdo dinâmico em errorCode como uma cadeia de caracteres. |
A mensagem de erro definida pelo usuário | ErrorCodeNotString |
O conteúdo dinâmico em errorCode resolve para nulo, cadeia de caracteres vazia ou espaços em branco. |
A mensagem de erro definida pelo usuário | ErrorCodeNotString |
O valor para message ou errorCode que é fornecido pelo usuário não é compatível com cadeia de caracteres.* |
O pipeline falha com: "Valor inválido para a propriedade <errorCode /message >" |
|
O campo message está ausente.* |
"A mensagem de falha não foi fornecida" | O código de erro definido pelo usuário |
O campo errorCode está ausente.* |
A mensagem de erro definida pelo usuário | ErrorCodeNotString |
* Essa situação não deverá ocorrer se o pipeline for desenvolvido com a interface do usuário da Web do Data Factory.
Conteúdo relacionado
Veja outras atividades de fluxo de controle com suporte: