メインコンテンツまでスキップ

ロジックフローのデバッグ

ここでは、ロジックフローのデバッグ方法について説明します。

基本操作

作成したロジックフローの動作や値の流れを検証するために、デバッグを実行します。ロジックフローのデバッグでは、実行時に渡す入力値や出力値、各エレメントが返す値、さらに事前に定義されている定数や変数の内容まで詳細に確認できます。

ロジックフローのデバッグを実行する

  1. デバッグ]をクリックします。
    └ 「ロジックフロー定義のデバッグ」画面が表示されます。
  2. 実行]をクリックします。
    └ 「デバッグの実行」ダイアログが表示されます。
その他の操作
  • エレメント単位で処理を一時停止しながら確認したい場合は、[ステップ実行]をクリックしてください。
  • ステップ実行中にデバッグを中止したい場合は、[中止]をクリックしてください。

  1. 値を編集]をクリックします。
    └ 「デバッグの実行」ダイアログには、入出力設定の入力値が表示されています。
    └ デバッグで確認したい内容に応じて、入力値の欄に適切な値を入力してください。
その他の操作
  • 入力値をJSON形式で定義したい場合は、[JSON入力]をクリックしてください。JSON入力では、一部対応していないデータ型や異なるデータ型が設定される場合があります。詳細は「IM-LogicDesigner仕様書 - 4.3.14. JSON上でのデータの表現」を参照してください。
  • 入力値を取り消したい場合は、[クリア]をクリックしてください。
  1. 実行]をクリックします。
    └ 「確認」ダイアログで[決定]をクリックします。
    └ 「ロジックフロー定義のデバッグ」画面にデバッグ結果が表示されます。

ツールバーの操作とペイン表示

「ロジックフロー定義のデバッグ」画面では、用途に応じてコンソールペインに情報を出力したり、特定のペインの表示形式を変更したりできます。

セッション情報の出力

セッション情報出力]をクリックすると、デバッグを実行後に、ロジックフロー定義の状態が保存されているセッション情報をコンソールペインに表示できます。セッション情報には、実行中の各エレメントに渡される入出力値や変数などが含まれています。エラーが発生した場合、どの時点でどの値が設定されていたかを確認できます。

たとえば、セッション情報の一部を抜粋すると、以下の内容が記載されています。

{
"type": "sessionData",
"editable": false,
"value": {
"$account_context": {
"type": "jp_co_intra_mart_system_logic_flow_context_AccountContextWrapper",
"editable": false,
"value": {
"authenticated": {
"type": "boolean",
"editable": false,
"value": "true",
"invalid": false
},
...
}
}
}
}

このセクションでは、現在のユーザのアカウント情報を保持しています。authenticatedはユーザが認証済みかどうかを示す真偽値で、この場合はtrueとなっており、ユーザはログイン済みであることが分かります。また、各項目は編集不可editable: falseとなっており、セッション中に値が変更されることはありません。

セッション情報を確認する場合は、[コンソール]をクリックして全画面表示にすると便利です。

コンソールペインの表示・非表示

コンソールペインには、デバッグ画面での処理情報がログとして出力されます。表示される主な内容は以下のとおりです。

  • デバッグ実行時に設定した入力値
  • デバッグ対象のフローに関する内部情報(フローIDやバージョン情報など)
  • 実行中のエレメントに関する内部情報(実行IDやタスクIDなど)
  • エラー発生時のスタックトレース
  • セッション情報の内容

プロパティペインの表示・非表示

プロパティペインには、フローの定義情報やエレメントの基本設定などが表示されます。[プロパティ]をクリックすると、表示・非表示を切り替えることが可能です。フローを大きく表示したい場合は、プロパティペインを非表示にしてください。

変数情報ペインの表示・非表示

変数情報ペインには、ロジックフローを実行した際にフロー定義上で扱われた変数名や値が一覧で表示されます。[変数情報]をクリックすると、全画面表示→非表示→表示という順番で切り替えることが可能です。変数の値を編集したい場合は、全画面表示にすると便利です。


次のステップへ:新規ロジックフロー定義の保存

ロジックフローのデバッグが完了したら、ロジックフロー全体を保存しましょう。「新規ロジックフロー定義の保存」では、これまで作成してきたフローにIDと名称を設定し、指定したフローカテゴリ内に保存します。この操作によって、ロジックフローとして登録され、他のアプリや処理からも参照可能になります。

応用操作

ロジックフローのデバッグには基本的な操作に加えて、次のような応用的な操作も可能です。必要に応じて確認してください。

ステップごとにデバッグを実行する

エレメント単位で処理を一時停止しながら確認したい場合は、ステップ実行によるデバッグを利用します。これにより、各エレメントの入出力値や分岐の動作を細かく追跡でき、期待通りに処理が進んでいるかを1つずつ確認できます。

  1. ステップ実行]をクリックします。
    └ 「デバッグの実行」ダイアログが表示されます。
  2. 値を編集]をクリックします。
    └ 「デバッグの実行」ダイアログには、入出力設定の入力値が表示されています。
    └ デバッグで確認したい内容に応じて、入力値の欄に適切な値を入力してください。
  3. 実行]をクリックします。
    └ 「確認」ダイアログで[決定]をクリックします。
    └ デバッグのステップ実行が開始されます。
  4. コンソールペインと変数情報ペインの内容を確認します。
    └ 矢印の位置は、その1つ前のエレメントがデバッグ終了したことを示します。
    └ コンソールペインには現在の実行状況が表示されます。
    └ 変数情報ペインでは、変数の値が確認・編集できます。
  1. コンソールペインと変数情報ペインの内容を確認します。
  2. 問題がなければ、[ステップ実行]をクリックします。
    └ 次のエレメントのデバッグが実行されます。

(手順5・6の操作を繰り返し行います)

その他の操作

ステップ実行によるデバッグを中止したい場合は、[中止]をクリックしてください。

デバッグ実行中に変数を操作する

ステップ実行によるデバッグで処理を一時停止している間に変数の値を変更すると、その変更内容が即時に反映され、不具合の原因切り分けや動作検証を行うことができます。特に、複雑なフローの場合では、デバッグを最初からやり直す必要がないため、効率的にデバッグを進めることができて便利です。

コラム

デバッグ中に変数の値を変更しても、実際のソースコードや本番環境のデータには影響しません。変更内容は、デバッグ実行中のみに有効です。

  1. 編集したい変数を選択します。
  2. 値を編集]をクリックします。
    └ 「値の編集」ダイアログが表示されます。
  3. 確認したい内容に合わせて、変数の値を変更します。
    └ 画面に表示される項目はデータ型によって異なります。
  1. 決定]をクリックします。
    └ 変数情報ペインに変更された値が太字で表示されます。
  2. ステップ実行]をクリックします。
    └ 変更された値でデバッグが実行されます。
その他の操作
  • デバッグ実行時に特に注目したい変数がある場合は、変数を選択した状態で[お気に入り切替]をクリックしてください。右側にある[ ]をクリックすると、お気に入りに設定した値のみ表示します。
  • 編集した値を初期状態に戻したい場合は、[全て元に戻す]をクリックしてください。すべての変更がリセットされます。