# ジョブの再実行

Workato では、ジョブの再実行が可能です。その場合、トリガーイベントはレシピの一連のアクションを通じて再度実行されます。この機能は、以下の場合に役立ちます。

  • レシピを編集してテストしたい場合
  • ジョブでエラーが発生したために、レシピとデータを修正して、ジョブを再実行したい場合

注 : ジョブが再実行されると、トリガーイベントがレシピ全体で実行されます。重複が生じている可能性があるため、ジョブを再実行する前に、必ず重複を確認して (ある場合は) 削除します。

ジョブレポートページからジョブを再実行するには、再実行するジョブにチェックを入れ、[Repeat] を選択します。

ジョブレポートページからのジョブの再実行 ジョブレポートページからのジョブの再実行

ジョブの詳細ページからジョブを再実行することもできます。[Repeat job] を選択します。

ジョブの詳細ページからのジョブの再実行 ジョブの詳細ページからのジョブの再実行

ジョブは「インプレース」で再実行されます。つまり、ジョブの位置がジョブレポート内で変わることはありません。最初に8月に処理されたジョブが9月に再実行されても、8月に処理された他のジョブ内でのそのジョブの位置は維持されます。

# ジョブの再実行でのキャッシュされたトリガーデータ

ジョブを再実行するときには常に、キャッシュされたデータが使用されます。つまり、元のトリガーイベントのデータが再実行に再利用され、トリガーアプリでトリガーイベントに加えられた変更がジョブの再実行で取得されることはありません。そのため、ジョブを再実行しても問題が解決されないことがあります。

# トリガーのデータの問題が原因でジョブが失敗した場合

トリガーアプリの不良データがそのままレシピで処理されている場合は、何回再実行してもジョブが失敗します。

# トリガーイベントを更新してレシピによる新しいトリガーイベントの処理方法を確認したい場合

新規オブジェクト トリガーを使用している場合は、既存のトリガーイベントを削除する必要があります。たとえば、 Salesforce の新規アカウント トリガーを使用している場合は、その Salesforce アカウントを削除して、レシピに対して新しい Salesforce アカウントを再作成し、新しいデータの Salesforce アカウント (トリガーイベント) を取得する必要があります。

新規または更新されたオブジェクト トリガーを使用している場合は、古いデータのレコードを削除する必要はなく、レコードを更新して、レシピで更新を取得します。たとえば、 Salesforce の新規または更新されたアカウント トリガーを使用している場合は、Salesforce の新規作成または更新されたアカウントを更新でき、レシピでその変更が取得されます。

どちらの場合も、新しいジョブが取得されます。トリガーアプリのイベントを更新しても、前のジョブで保存されたキャッシュ済みのデータには影響せず、新しいジョブが取得されます。

# ジョブの再実行の履歴

ジョブの詳細ページには、ジョブの再実行の履歴が表示されます。

ジョブの履歴 ジョブの履歴

ジョブの詳細画面に、直近のものではないジョブの再実行が表示されている場合は、[Rerun] ボタンがグレー表示になります。

# ジョブの再実行に関する一般的なシナリオ

  • 新しいレシピのテスト

レシピを作成後や編集後にテストする場合には、すべてのシナリオをテストしてください。レシピに条件付きアクションがある場合は、レシピ内のすべての論理ブランチをテストするのが最善の方法です。

たとえば、以下のレシピでは、トリガーイベントにより、ステップ2 ~ 3、またはステップ4 ~ 5のいずれかが実行されます。この場合、一致する Zendesk 組織のない Salesforce アカウントと、一致する Zendesk 組織のある Salesforce アカウントについて、レシピフローをテストする必要があります。

サンプルレシピ

トリガーが Salesforce の新規または更新されたアカウント であるため、Salesforce アカウントを新規作成し、レシピでそのアカウントを取得した後ステップ4 ~ 5の処理を実行して、対応する Zendesk アカウントを作成することができます。その後、Salesforce アカウントに対して簡単な編集を加え、更新されたレコードをレシピで取得することができます。その場合、この Salesforce アカウントには一致する Zendesk 組織があるため、ステップ2 ~ 3の処理が実行されます。

トリガーが Salesforce の新規アカウント の場合は、別の方法でテストを段階的に行う必要があります。一致する Zendesk 組織のある Salesforce アカウントと、一致する Zendesk 組織のない Salesforce アカウントを作成し、両方のジョブが正しく実行されることを確認する必要があります。

テスト中に再実行ジョブを実行することで、レシピを段階的に作成できます。新しいバージョンのレシピを試すたびに新しいトリガーイベントを作成するのではなく、再実行ジョブと同じイベントでレシピをテストできます。さらに、これによって、問題に直面したときに対処できるようにもなります。問題が修正できているかどうかを再実行ジョブで直接テストできます。

  • エラー

レシピでエラーが発生すると、(エラーから回復するためにエラー監視ステップを使用してしている場合は別として) エラーが発生した場所でジョブが終了してしまうため、ジョブが未完了になります。そのようなときに、レシピで指定されたとおりにジョブが実行されて完了するようにするには、問題がトリガーデータに関するものである場合以外は、ジョブの再実行が必要です。その際は、トリガーエラーへの対処について、こちらのセクションを参照してください。

# データ保持ポリシー

データ保持は、処理されたトリガーイベントに適用されます。つまり、古いジョブは再実行できない可能性があります。データ保持ポリシーによるジョブの再実行への影響については、こちらをご覧ください。


Last updated: 2023/8/31 1:07:14