スクリプトタスクのデバッグに、ログ出力を使用する

Ver. 11.6 で新しく追加された、スクリプトタスク/サービスタスク (Add-on) のロギングの機能について、紹介します。

Ver.11.6 リクエストボディをそのまま受信できる HTTP 開始に対応 (2018年3月12日)

スクリプトタスクは、ワークフローエンジンに何らかの自動処理を行わせることのできる工程です。エンジニア向けの機能で、ECMA スクリプトによって、自動処理の内容を記述することができます。

スクリプトタスクのマニュアル

サービスタスク (Add-on) は、このスクリプトタスクで行う自動処理を、モジュール化したものです。モジュール化された定義ファイルをインポートすることで、対応する自動工程アイテムを追加することができるようになります。定義ファイルそのものを、自ら作成することも可能です。

サービスタスク (Add-on) のマニュアル

 

これら、スクリプトタスク/サービスタスク (Add-on) のデバッグを楽にする目的で、ロギングの機能を追加しました。”Google Drive フォルダ作成” のアドオンの中で使用していますので、定義ファイル内のスクリプトを参照してもらえればと思います。

Google ドライブ: フォルダ作成

 

ログ出力の方法は、engine.log() を使用します。メソッドの引数に指定された文字列が、そのままログとして出力されます。

メソッド毎に改行が入りますし、文字列内の改行もそのまま維持されて、ログ出力されます。

engine.log("status:" + status);
engine.log("response:");
engine.log(resText);

 

出力されたログは、プロセス詳細(管理者モード)で確認できるようになっています。
以下は先の “Google Drive フォルダ作成” アドオンで出力されたログのサンプルです。

 

これまでは、スクリプト内の挙動を詳しく調べる場合、文字型データ項目にログを保存する以外に方法がなかったかと思います。

この方法は、スクリプトタスク/サービスタスクを処理失敗させることができない、処理失敗するとデータ項目にログが保存されない、という弱点がありました。

ロギングの機能は、スクリプトタスク/サービスタスクの成功/失敗のいずれでも、ログが保存されるメリットがあります。本来、失敗と記録されるべき工程を、成功させる必要がなくなります。

今後、スクリプトタスク/サービスタスク (Add-on) のデバッグには、ロギングの機能を使ってもらえればと思います。

「スクリプトタスクのデバッグに、ログ出力を使用する」に2件のコメントがあります

  1. ピンバック: ワークフローの途中で、SMS を送信する — スクリプトタスク版 — – Questetra Support

  2. ピンバック: スクリプトタスク – Questetra Support

コメントは受け付けていません。

%d人のブロガーが「いいね」をつけました。