1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Logic Designer 開発でのライフハック - ログ出力やデバッグのテクニック

Posted at

Logic Designerにはログを出力する方法が用意されていますが、Logic Designerのログ出力タスクは system.log に出力されるのでAPサーバにログインしないとログが確認できないという問題があります(適当に作った環境だとログフォルダ参照権限設定してなかったり)

そういった場合、ストレージファイルにログを出力するフローを作成しておくと便利です

00フロー.PNG

入出力設定

in_out.PNG

変数定義

variable.PNG

定数

定数ID 定数値 説明
DATA_REP1_DATETIME <DATETIME> ログ出力 置換文字1
DATA_REP2_HEADER <HEADER> ログ出力 置換文字2
DATA_REP3_DATA <DATA> ログ出力 置換文字3
DATA_TEMPLATE <DATETIME> <HEADER>:<DATA> ログ出力フォーマット ※末尾改行すること
LOG_FILE_NAME debug.log ログのファイル名
LOG_OUT_PATH /00_test_data/log/ ログの出力先
TIME_FORMAT yyyy/MM/dd HH:m m:ss ※mmの間のスペースは絵文字:flag_mm:回避なのでいらないです

出力先パス設定(変数操作)タスク

01_1.PNG

現在時刻取得(変数操作)タスク

01_2.PNG

パブリックストレージ取得 タスク

02_1.PNG

ストレージ追記(文字列) タスク

ログ出力フォーマットの置換文字を対応する変数で置換してストレージに書き込んでいます。
02_2.PNG

使い方

入力引数の headerStr に特定用の文字列、dataJsonStr に(String型の)変数指定すればストレージ上の指定した(ログの出力先+ログのファイル名)場所にファイルが出力されますのでintra-martのテナント管理 - ファイル操作 などから参照してください。
また、このフローは各種フローの最初で呼び出すと便利です。

こんな雑な感じで
sample_01.PNG

セッション情報の flowId を headerStr に
入力<object>を toJSON して dataJsonStr に設定
sample_02.PNG

しておくと、個別でフローをデバッグしたいときにログから対象のフローIDでログを検索して JSON部分を取得するとそのままデバッグのJSON入力に利用できる ので便利です。

※日付型とかは そのままJSON入力として利用できないみたいなのでnullとかに修正してみてください。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?