ワークフローインスタンスの管理

ワークフローコンソールには、ワークフローインスタンスを管理し、それらが想定どおりに実行されていることを確認するための複数のツールが用意されています。

メモ

JMXコンソールは、追加のワークフロー保守操作を提供します。

ワークフローの管理用に、次の各種コンソールが用意されています。グローバルナビゲーションを使用して​ツール​パネルを開き、その後「ワークフロー」を選択します。

  • モデル:ワークフロー定義を管理します
  • インスタンス:実行中のワークフローインスタンスを表示および管理します
  • ランチャー:ワークフローの起動方法を確認します
  • アーカイブ:正常に完了したワークフローの履歴を表示します
  • エラー:エラーで終了したワークフローの履歴を表示します

ワークフローインスタンスのステータスの監視

  1. ナビゲーションを使用して、ツールワークフロー​を選択します。

  2. インスタンス」を選択して現在進行中のワークフローインスタンスのリストを表示します。

    wf-96

  3. 特定の項目を選択し、「履歴を開く」で詳細を確認します。

    wf-97

ワークフローインスタンスの休止、再開および終了

  1. ナビゲーションを使用して、ツールワークフロー​を選択します。

  2. インスタンス」を選択して現在進行中のワークフローインスタンスのリストを表示します。

    wf-96-1

  3. 特定の項目を選択してから、適宜「終了」、「休止」、または「再開」を使用します。この際、確認または詳細(あるいはその両方)を求められます。

    wf-97-1

アーカイブされたワークフローの表示

  1. ナビゲーションを使用して、ツールワークフロー​を選択します。

  2. アーカイブ」を選択して正常に完了したワークフローインスタンスのリストを表示します。

    wf-98

    メモ

    中止ステータスはユーザーアクションの結果として発生するので、正常終了と見なされます。例えば、次のような場合が当てはまります。

    • 終了」アクションが使用された場合
    • ワークフローの対象となるページが(強制的に)削除されたことによって、ワークフローが終了した場合
  3. 特定の項目を選択し、「履歴を開く」で詳細を確認します。

    wf-99

ワークフローインスタンスのエラーの修正

ワークフローが失敗した場合、AEM の​エラー​コンソールを使用してエラーの原因を調べ、特定された原因に応じて適切なアクションを取ることができます。

  • 失敗の詳細:ウィンドウを開き、
    失敗メッセージステップ失敗スタック​を表示します。

  • 履歴を開く​ワークフローの履歴の詳細を表示します。

  • ステップを再試行​スクリプトステップコンポーネントのインスタンスをもう一度実行します。発生したエラーの原因を修正した後に「ステップを再試行」コマンドを使用します。例えば、プロセスステップが実行するスクリプトのバグを修正した後にステップを再試行します。

  • 終了 エラーが原因で解決できない問題がワークフローに発生した場合にワークフローを終了します。例えば、ワークフローインスタンスで無効になった環境条件(リポジトリ内の情報など)にワークフローが依存している可能性がある場合などです。

  • 終了して再試行​元のペイロード、タイトルおよび説明を使用して新しいワークフローインスタンスが開始される点を除き、終了​と同様です。

エラーを調査し、その後ワークフローを再開または停止するには、次のステップに従います。

  1. ナビゲーションを使用して、ツールワークフロー​を選択します。

  2. エラー」を選択して正常に完了しなかったワークフローインスタンスのリストを表示します。

  3. 特定の項目を選択し、その後適切なアクションを選択します。

    wf-47

ワークフローインスタンスの定期的なパージ

ワークフローインスタンスの数を最小限に抑えるとワークフローエンジンのパフォーマンスが向上します。このため、完了したまたは実行中のワークフローインスタンスをリポジトリーから定期的に削除できます。

有効期間とステータスに応じてワークフローインスタンスをパージするように Adobe Granite のワークフローのパージ設定​を設定します。また、すべてのモデルまたは特定のモデルのワークフローインスタンスをパージすることもできます。

また、様々な条件を満たすワークフローインスタンスをパージするために、サービスの設定を複数作成することもできます。例えば、予想していた時間よりも大幅に実行時間の長い特定のワークフローモデルのインスタンスをパージする設定を作成します。さらに、リポジトリのサイズを最小限に抑えるために、特定の日数が経過した後に完了したワークフローをすべてパージするもう 1 つの設定を作成します。

サービスを設定するには、Web コンソールを使用するか、リポジトリに OSGi 設定を追加します。次の表では、どちらの方法でも必要になるプロパティについて説明しています。

メモ

リポジトリーに設定を追加する場合のサービス PID は次のとおりです。

com.adobe.granite.workflow.purge.Scheduler

このサービスはファクトリサービスなので、sling:OsgiConfig ノードの名前には次のような ID サフィックスが必要です。

com.adobe.granite.workflow.purge.Scheduler-myidentifier

プロパティ名(Web コンソール) OSGi のプロパティ名 説明
Job Name scheduledpurge.name スケジュール設定されたパージのわかりやすい名前。
Workflow Status scheduledpurge.workflowStatus

パージするワークフローインスタンスのステータス。有効な値は次のとおりです。

  • COMPLETED:完了したワークフローインスタンスがパージされます。
  • RUNNING:実行中のワークフローインスタンスがパージされます。
Models To Purge scheduledpurge.modelIds

パージするワークフローモデルの ID。この ID はモデルノードのパスです(例:
/conf/global/settings/workflow/models/dam/update_asset/jcr:content/model
)。すべてのワークフローモデルのインスタンスをパージする場合は、値を指定しません。

複数のモデルを指定するには、Web コンソールの + ボタンをクリックします。

Workflow Age scheduledpurge.daysold パージするワークフローインスタンスの有効期間(日数)。

インボックスの最大サイズの設定

Webコンソールまたはを使用して​AdobeGranite Workflow Service​を設定し、インボックスの最大サイズを設定して、リポジトリにOSGi設定を追加します。 次の表では、どちらの方法でも設定するプロパティについて説明しています。

メモ

リポジトリーに設定を追加する場合のサービス PID は次のとおりです。

com.adobe.granite.workflow.core.WorkflowSessionFactory.

プロパティ名(Web コンソール) OSGi のプロパティ名
Max Inbox Query Size granite.workflow.inboxQuerySize

このページ