翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ワークフローの状態の失敗
Fail
状態 ("Type": "Fail"
) は、ステートマシンの実行を停止し、Catch
ブロックでキャッチされるのでなければ、障害としてマークします。
Fail
状態では、Type
共通状態フィールド Comment
のセットから および フィールドの使用のみが許可されます。また、Fail
状態では以下のフィールドを使用できます。
-
Cause
(オプション) -
エラーの原因を説明するカスタム文字列。このフィールドは、運用または診断目的で指定できます。
-
CausePath
(オプション) -
参照パス を使用して状態入力からエラーの原因を動的に説明する場合は、 を使用します
CausePath
。解決されると、リファレンスパスは文字列値を含むフィールドを選択する必要があります。文字列を返す組み込み関数を使用して
CausePath
を指定することもできます。これらの組み込み関数は、States.Format、States.JsonToString、States.ArrayGetItem、States.Base64Encode、States.Base64Decode、States.Hash、States.UUID です。重要
-
失敗状態の定義では、
CausePath
またはCause
のいずれかを指定できますが、両方を指定することはできません。 -
情報セキュリティのベストプラクティスとして、原因の説明から機密情報や内部システムの詳細を削除することをお勧めします。
-
-
Error
(オプション) -
Retry または Catch フィールドを使用してエラー処理を実行する際に指定できるエラー名。運用または診断目的で使用できるエラー名も提供できます。
-
ErrorPath
(オプション) -
リファレンスパスを使用して状態入力からエラー名を動的に指定する場合は、
ErrorPath
を使用してください。解決されると、リファレンスパスは文字列値を含むフィールドを選択する必要があります。文字列を返す組み込み関数を使用して
ErrorPath
を指定することもできます。これらの組み込み関数は、States.Format、States.JsonToString、States.ArrayGetItem、States.Base64Encode、States.Base64Decode、States.Hash、States.UUID です。重要
-
失敗状態の定義では、
ErrorPath
またはError
のいずれかを指定できますが、両方を指定することはできません。 -
情報セキュリティのベストプラクティスとして、エラー名から機密情報や内部システムの詳細を削除することをお勧めします。
-
Fail
状態は常にステートマシンを終了するため、Next
フィールドはなく、End
フィールドも不要です。
失敗状態の例
以下の失敗状態の定義例では、Error
および Cause
フィールド値を指定しています。
"FailState": {
"Type": "Fail",
"Cause": "Invalid response.",
"Error": "ErrorA"
}
以下の失敗状態の定義例では、参照パスを動的に使用して Error
および Cause
フィールド値を解決しています。
"FailState": {
"Type": "Fail",
"CausePath": "$.Cause",
"ErrorPath": "$.Error"
}
以下の失敗状態の定義例では、States.Format 組み込み関数関数を使用して Error
および Cause
フィールド値を動的に指定しています。
"FailState": {
"Type": "Fail",
"CausePath": "States.Format('This is a custom error message for {}, caused by {}.', $.Error, $.Cause)",
"ErrorPath": "States.Format('{}', $.Error)"
}