コンテンツにスキップ

ステップエラーの管理

ワークフローの処理中にエラーが発生すると、ワークフローとエラーが発生したステップの両方にエラーインジケーターが表示されます。PlaidCloudは、失敗したステップを複数回再試行できます。これは、ステップがリモートシステムやデータにアクセスしていて、可用性が高くない場合や、原因不明の理由で断続的に失敗する場合に役立ちます。再試行の回数は多数に設定でき、再試行の間隔として数秒から数時間までの遅延を追加することもできます。

実行中にサーバーが失われたステップは、再試行とは別に扱われます。繰り返しても安全なステップは自動的に再実行され、そうでないステップは中断メッセージとともに一度だけ失敗します。中断されたステップを参照してください。

権限の不足や無効な設定など、修正可能な理由でPlaidCloudがステップを拒否した場合、ステップログには、スタックトレース付きのサーバーエラーではなく、わかりやすい言葉でそのメッセージが表示されます。子ワークフローが失敗したModel Loop、Model Run、またはMacro Runステップには、子ワークフロー自身のエラーメッセージが、「Child workflow run failed:」に続けて表示されます。

再試行が選択されていない場合、または再試行の最大回数を超えた場合、ステップはエラーとしてマークされます。その場合、PlaidCloudは3段階のエラー処理を提供します。

  • エラーが発生したらワークフローを停止する
  • ステップをエラーとしてマークするが、ワークフローの処理は継続する
  • ステップをエラーとしてマークし、現在のワークフローを継続する代わりに修復ワークフローのプロセスを起動する

ステップでエラーが発生したときにワークフローを停止するのが、最も一般的な方法です。ワークフローは通常、エラーなしで実行されるべきだからです。この場合、ワークフローが停止し、ステップとワークフローの両方にエラーインジケーターが表示されます。エラーはアクティビティモニターにも表示されますが、それ以上の処理は行われません。

各ステップは、ステップフォームでエラー時に継続するよう設定できます。このチェックボックスを有効にすると、ステップでエラーが発生した場合はマークされますが、ワークフローはそのエラーをステップの完了として扱い、処理を続けます。これは、データが欠落しているとエラーになるものの、全体のプロセスには影響しないタスクを実行するステップがある場合に役立ちます。

このシナリオでは、ワークフローはエラーが発生しても処理を続けるため、エラーインジケーターは表示されず、実行中のインジケーターが表示され続けます。

ワークフローの設定で修復ワークフローを指定しておくと、ワークフローでエラーが発生した時点で、現在のワークフローの処理が直ちに停止し、修復ワークフローの処理が開始されます。ステップがエラー時に継続するよう設定されている場合、その失敗では修復ワークフローは起動しません。修復プロセスが起動するのは、ワークフロー全体の停止の原因にもなる失敗が発生したステップだけです。

修復ワークフローは、失敗が発生したことを関係者に通知するだけにも使えますし、元のワークフローが失敗した根本原因を自動的に修正しようとする、より複雑な処理を実行することもできます。