ワークフローの状態の失敗 - AWS Step Functions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ワークフローの状態の失敗

Fail 状態 ("Type": "Fail") は、ステートマシンの実行を停止し、Catch ブロックでキャッチされるのでなければ、障害としてマークします。

Fail 状態では、Type 共通状態フィールド Comment のセットから および フィールドの使用のみが許可されます。また、Fail 状態では以下のフィールドを使用できます。

Cause (オプション)

エラーの原因を説明するカスタム文字列。このフィールドは、運用または診断目的で指定できます。

CausePath (オプション)

参照パス を使用して状態入力からエラーの原因を動的に説明する場合は、 を使用しますCausePath。解決されると、リファレンスパスは文字列値を含むフィールドを選択する必要があります。

文字列を返す組み込み関数を使用して CausePath を指定することもできます。これらの組み込み関数は、States.FormatStates.JsonToStringStates.ArrayGetItemStates.Base64EncodeStates.Base64DecodeStates.HashStates.UUID です。

重要
  • 失敗状態の定義では、CausePath または Cause のいずれかを指定できますが、両方を指定することはできません。

  • 情報セキュリティのベストプラクティスとして、原因の説明から機密情報や内部システムの詳細を削除することをお勧めします。

Error (オプション)

Retry または Catch フィールドを使用してエラー処理を実行する際に指定できるエラー名。運用または診断目的で使用できるエラー名も提供できます。

ErrorPath (オプション)

リファレンスパスを使用して状態入力からエラー名を動的に指定する場合は、ErrorPath を使用してください。解決されると、リファレンスパスは文字列値を含むフィールドを選択する必要があります。

文字列を返す組み込み関数を使用して ErrorPath を指定することもできます。これらの組み込み関数は、States.FormatStates.JsonToStringStates.ArrayGetItemStates.Base64EncodeStates.Base64DecodeStates.HashStates.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)" }