UiPath Blog
こんにちは、UiPath プリセールスの長田です。
2020FTSからリリースされた、よりユーザーに易しいシンプルStudioこと StudioX は既に試してみていただいているでしょうか。 本記事では、RPA開発の際に考慮が不可欠な「実行ログ」について、StudioXの利用観点をふまえた参考情報をご紹介いたします。是非、StudioXを利用するにあたって活用していただければと思います。
StudioXとは
これまでのStudioと比べると、ビジネスユーザーが自身の業務を自身で自動化することにフォーカスしたシンプルで直感的に扱うことのできる開発ツールです。Studioではアクティビティの中でVB.netのメソッドを記述する必要も時にはありましたが、StudioXではそういった要素を廃し、プログラミング要素に詳しくない方でも直感的に操作が可能となっています。また、StudioXで作成したワークフローをStudioで改修することも可能なため、ビジネスユーザーとプロ開発ユーザーのコラボレーションによりさらに自動化業務の幅を広げることができます。
実行ログ出力の仕様について
プロセスを実行すると、それにまつわるログデータが出力されます。処理の内容によって 'メッセージをログ (Log Message)' アクティビティ等を使用し、適切なログを保持することで、エラーが起こった際の原因究明や監査データとして活用できます。
ログの仕様(共通)
StudioやRobot/AssistantでWF・プロセスを実行すると、ローカル(下記ディレクトリ)にログが保存されます。
<%localappdata%\UiPath\Logs\<shortdate>_Execution.log>
Orchestratorに接続している場合は、上記ファイルのログをOrchestratorに連携することが可能です。
実行ログのうち、プロセス実行元がRobot/Assistantの場合は
ロボットログ・Studioの場合は開発ログという扱いになり、Orchestratorへの連携設定方法などがそれぞれ異なります(後述)。 ※プロセス実行元の情報は Execution Startログ(プロセス開始時のログ)における initiatedBy プロパティで確認可能です。
プロセスの開始・終了やエラーでの終了などは、Informationレベルのログとしてデフォルト出力されます。それ以外のログを出力したい場合は、'メッセージをログ (Log Message)' アクティビティまたは '1 行を書き込み' アクティビティを使用することで可能です。 デフォルトで出力されるログの種類については、下記ガイドを参照ください。https://docs.uipath.com/studio/lang-ja/docs/logging-levels#section-default-logs
ログの仕様(StudioX特有)
StudioXで作成されたプロセスでは、上記ログの仕様に加え、各アクティビティが扱うデータを監査ログとして記録するようになっています。
監査ログのログレベルはInformationで、ログの接頭に'Audit(監査)'がついています。
StudioXでは、'メッセージをログ (Log Message)' アクティビティはデフォルトのアクティビティ一覧として含まれません。'1 行を書き込み' アクティビティは含まれています。
StudioXの監査ログ一覧(例)
※StudioXプロセスにおける監査ログの一覧は下記ガイドを参照ください。 https://docs.uipath.com/studiox/lang-ja/docs/audit-logging
StudioXプロセスで記録される監査ログの特徴
メリット
StudioXユーザーがどんなデータを扱っているのか、開発者やユーザが意識することなく自動でログ保存されます。StudioXを使う場合、個人的な処理を本人が自動化するケースが想定され、管理者にとっては野良ロボ・危険なロボとならないよう利用状況をチェックする必要があるため、監査ログが有用な情報をなり得ます。
デメリット(注意点)
扱うExcelファイルの名前やメールの宛先などが共有されるべきでない場合、他者(Orchestrator管理者)がログとして閲覧可能となってしまうため対応が必要です。
出力されるログについて設定するには
StudioやRobot/Assistantでプロセスを実行した際のログについて、出力有無やOrchestratorへの連携有無について設定したい場合は、ログの種類によって以下の方法があります。
ロボットログ(Robot/Assistantからのプロセス実行)における設定
Robot/Assistantの「Orchestrator設定」より、連携するログレベルを設定可能です。例えばここで 'Error' と設定した場合、Errorレベル以上のログのみログ出力&Orchestratorへの連携がなされます。
また、Orchestratorのロボット編集画面からも出力ログレベルの設定が可能です。 ロボット一覧>対象のロボットを選び「編集」をクリック>「設定」タブより、下記トグルをONにした上で設定してください。
※Robot/Assistantでの設定と、Orchestratorでの設定をどちらも行った場合、Orchestratorでの設定が優先されます。
※実行ログの設定は、ローカルへのログファイル出力とOrchestratorへの連携双方に対して適用されます。つまり、ログレベルをError以上にした場合は、ローカルに保存される実行ログもErrorレベル以上となります。
開発ログ(Studioからのプロセス実行)における設定
Orchestratorのロボット編集画面から、ログの出力有無の設定が可能です。 下記画面にてトグルをONにし、開発ログを許可するか否か(ログ出力するか否か)を設定してください。
※開発ログについては、ログレベルの設定はできません。
※開発ログの設定は、Orchestratorへの連携にのみ適用されます。つまり、ローカルに保存される開発ログはデフォルトのままとなります。
StudioXにおける実行ログの扱い
StudioXを使用する場合の実行ログについては、管理者側の目的とユーザーの実行形態に応じて対応を検討する必要があります。下記はログに関する目的と対応策の例です。
監査ログをOrchestratorに連携したくない
Robot/Assistantから実行する場合:ロボットログをInformationより上のレベルに設定する。
StudioXから実行する場合:開発ログを連携しないように設定する。
監査ログをOrchestratorには連携したくないが、実行者のローカルにはログを保存したい
Robot/Assistantから実行する場合:ロボットログをInformationより上のレベルに設定する。別途Excel(プロジェクトノートブックなど)にログ出力用シートを用意し、必要なログを残すようにWFを設計する。
StudioXから実行する場合:開発ログを連携しないように設定する。
StudioXでも任意の情報をログとして記録したい
Robot/Assistantから実行する場合:'1行を書き込み (WriteLine)' アクティビティを使用する。また、ロボットログをTraceレベルに設定する。
StudioXから実行する場合:'1行を書き込み (WriteLine)' アクティビティを使用する。
※'1行を書き込み (WriteLine)' アクティビティについては、v20.10より、出力されるログレベルが Traceに変更となっています。そのため、ロボットログとして出力させたい場合はログレベル設定をTraceにする必要があります。
詳しくは下記ガイドを参照ください。 https://docs.uipath.com/activities/lang-ja/docs/write-line
Topics:
StudioXSales Engineer, UiPath