As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Gerenciando o estado e transformando dados
Recentemente, o Step Functions adicionou variáveis JSONata para gerenciar dados de estado e transformação.
Saiba mais sobre como transmitir dados com variáveis e transformar dados com JSONata.
Um estado Fail
("Type": "Fail"
) interrompe a execução da máquina de estado e identifica isso como falha, a menos que seja capturada por um bloqueio de Catch
.
O estado Fail
só permite o uso dos campos Type
e Comment
do conjunto de campos de estado comuns. Além disso, o estado Fail
permite os campos a seguir.
-
Cause
(opcional) -
Uma sequência de caracteres personalizada que descreve a causa do erro. Você pode especificar esse campo para fins operacionais ou de diagnóstico.
Nos JSONata estados, você também pode especificar uma JSONata expressão.
-
CausePath
(Opcional, JSONPath somente) -
Para fornecer dinamicamente uma descrição detalhada sobre a causa do erro com base na entrada de estado usando um caminho de referência, use
CausePath
. Quando resolvido, o caminho de referência deve selecionar um campo que contenha um valor de string.Você também pode especificar
CausePath
usando uma função intrínseca que retorna uma string. Essas funções intrínsecas são: States.Format, States.JsonToString, States.ArrayGetItem, States.Base64Encode, States.Base64Decode, States.Hash e States.UUID.Importante
-
Você pode especificar
Cause
ouCausePath
, mas não ambos, na definição do estado Falha. -
Como prática recomendada de segurança da informação, recomendamos remover informações confidenciais ou detalhes do sistema interno na descrição da causa.
-
-
Error
(opcional) -
Um nome de erro que você pode fornecer para realizar o tratamento de erros usando os campos Tentar novamente ou Capturar. Você também pode fornecer um nome de erro para fins operacionais ou de diagnóstico.
Nos JSONata estados, você também pode especificar uma JSONata expressão.
-
ErrorPath
(Opcional, JSONPath somente) -
Para fornecer dinamicamente um nome para o erro a partir da entrada de estado usando um caminho de referência, use
ErrorPath
. Quando resolvido, o caminho de referência deve selecionar um campo que contenha um valor de string.Você também pode especificar
ErrorPath
usando uma função intrínseca que retorna uma string. Essas funções intrínsecas são: States.Format, States.JsonToString, States.ArrayGetItem, States.Base64Encode, States.Base64Decode, States.Hash e States.UUID.Importante
-
Você pode especificar
Error
ouErrorPath
, mas não ambos, na definição do estado Falha. -
Como prática recomendada de segurança da informação, recomendamos remover informações confidenciais ou detalhes do sistema interno no nome do erro.
-
Como os estados Fail
sempre saem da máquina de estado, eles não têm nenhum campo Next
nem requerem um campo End
.
Exemplos de definição de estado Falha
O exemplo de definição de estado Falha a seguir especifica valores estáticos dos campos Error
e Cause
.
"FailState": {
"Type": "Fail",
"Cause": "Invalid response.",
"Error": "ErrorA"
}
O exemplo de definição do estado Falha a seguir usa dinamicamente caminhos de referência para resolver os valores dos campos Error
e Cause
.
"FailState": {
"Type": "Fail",
"CausePath": "$.Cause",
"ErrorPath": "$.Error"
}
O exemplo de definição do estado Falha a seguir usa a função intrínseca States.Format para especificar dinamicamente os valores dos campos Error
e Cause
.
"FailState": {
"Type": "Fail",
"CausePath": "States.Format('This is a custom error message for {}, caused by {}.', $.Error, $.Cause)",
"ErrorPath": "States.Format('{}', $.Error)"
}