intra-mart Accel Platform IM-LogicDesigner仕様書 第21版 2022-12-01

4.6. ロギング

IM-LogicDesignerのロギング機能は、ロジックフローの実行ログをデータベースへ出力します。
これにより、特定のロジックフローに関する統計情報の可視化を行うといった事が可能です。

4.6.1. ロギング機能の有効化

ロギング機能はデフォルトで有効化されていません。
ロギング機能を利用するにはシステムプロパティを指定します。
システムプロパティの設定方法はアプリケーションサーバ毎に異なります。
-Dlogicdesigner.logging=true

コラム

Resinにおけるシステムプロパティの指定方法

Resinにおけるシステムプロパティの指定は、<${resin.home}/conf/resin.properties> ファイルに設定内容を追記します。
<resin.properties> ファイル内に jvm_args 項目がある為、その項目に追記を行ってください。

4.6.2. ログ出力先のテーブル構成

IM-LogicDesignerのロギング機能では、 imld_log テーブルに対して実行時のログが出力されます。
imld_log
カラム名 データ型 説明
execution_id 文字列 (主キー) ロジックフローの実行単位毎に採番される一意となるIDです。
execution_no 数値 (主キー) ロジックフロー内のイベント毎に採番される0から始まる連番です。
event_type 文字列 (NOT NULL)
BEGIN_FLOW: フロー開始
END_FLOW: フロー終了
ERROR_FLOW: フローエラー終了
BEGIN_TASK: タスク開始
END_TASK: タスク終了
ERROR_TASK: タスク実行失敗
flow_id 文字列 (NOT NULL) フローID
flow_version 数値 フローバージョン
thread 文字列 実行Javaスレッド名
executor 文字列 実行ユーザコード
parent_flow_id 文字列 親フローID
execute_id 文字列 実行ID (配置されたタスクに割り当てられたID)
task_id 文字列 タスクID (特定のタスクの種類に関して絞り込む際に利用します)
task_version 数値 タスクバージョン (ユーザ定義の場合のみ)
task_type 文字列 タスク種別 (ユーザ定義の判別に利用します)
duration 数値 処理時間 (ミリ秒)
execution_time 日時 実行日時
error_message 文字列 エラーメッセージ (メッセージの文字長により切り捨てられる場合があります)
reserved01 文字列 予約項目01 (タスクにより格納される値が異なります)
reserved02 文字列 予約項目02 (タスクにより格納される値が異なります)
reserved03 文字列 予約項目03 (タスクにより格納される値が異なります)
reserved04 文字列 予約項目04 (タスクにより格納される値が異なります)
reserved05 文字列 予約項目05 (タスクにより格納される値が異なります)
reserved06 文字列 予約項目06 (タスクにより格納される値が異なります)
reserved07 文字列 予約項目07 (タスクにより格納される値が異なります)
reserved08 文字列 予約項目08 (タスクにより格納される値が異なります)
reserved09 文字列 予約項目09 ( タスクにより格納される値が異なります)
create_user_cd 文字列 (NOT NULL) 作成者コード
create_date 日時 (NOT NULL) 作成日時
record_user_cd 文字列 (NOT NULL) 更新者コード
record_date 日時 (NOT NULL) 更新日時

4.6.3. 利用時の注意点

上記の imld_log テーブルはインデックスが用意されていません。
特定のカラムを絞り込み条件とする、集計するといったクエリを発行する場合には適切なインデックスを用意してください。
ロジックフローの実行毎に、そのロジックフロー内に配置されているタスク数 * 2およびフローの開始、終了のレコードが登録されます。
そのため、長期間の運用では大量のレコード数となる場合があります。
適切なタイミングでレコードの削除、退避等を検討ください。