(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-03
(45)【発行日】2024-10-11
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
G06F 11/34 20060101AFI20241004BHJP
【FI】
G06F11/34 176
(21)【出願番号】P 2021211658
(22)【出願日】2021-12-24
【審査請求日】2024-03-27
(31)【優先権主張番号】P 2021013964
(32)【優先日】2021-01-29
(33)【優先権主張国・地域又は機関】JP
【早期審査対象出願】
(73)【特許権者】
【識別番号】398040527
【氏名又は名称】株式会社オービック
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】河合 優佑
(72)【発明者】
【氏名】矢野 雅之
(72)【発明者】
【氏名】野里 郁文
(72)【発明者】
【氏名】上野 剛光
【審査官】円子 英紀
(56)【参考文献】
【文献】特開2010-039878(JP,A)
【文献】特開2012-118589(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/07
G06F 11/28-11/36
(57)【特許請求の範囲】
【請求項1】
制御部を備えた情報処理装置であって、
前記制御部は、
1又は複数の処理対象の実行ログを粒度毎に階層構造で記録するログ記録手段と、
表示部にビューア画面を表示して、前記階層構造で記録された実行ログを階層化表示するビューア手段と、
を備
え、
前記階層化表示は、ドリルダウンによる表示又はツリー構造による表示を含み、
前記ログ記録手段は、前記実行ログを、日時、正常又はエラーを示すログレベル、処理対象、サマリーキー情報を含むサマリーログと、日時、ログレベル、処理内容、明細キー情報を含む明細ログと、日時、ログレベル、操作内容、詳細キー情報を含む詳細ログとを、階層構造でそれぞれテーブルに記録し、
前記ビューア手段は、前記ビューア画面において、前記サマリーキー情報及び前記明細キー情報を使用して、前記サマリーログから前記明細ログ、前記明細キー情報及び前記詳細キー情報を使用して、前記明細ログから前記詳細ログをドリルダウン又はツリー構造で表示することを特徴とする情報処理装置。
【請求項2】
前記ログ記録手段は、前記明細ログが、型及び/又は列数が異なる場合は、前記サマリーログに異なる実行種別コードを付加し、当該異なる実行種別コード毎にテーブルを分けて記録することを特徴とする請求項
1に記載の情報処理装置。
【請求項3】
前記実行ログは、RPA(Robotic Process Automation)の実行ログを含むことを特徴とする請求項
1又は2に記載の情報処理装置。
【請求項4】
前記明細ログは、RPAフロー定義に従って記録される実行ロボット情報、操作対象情報、ループ回数情報を含み、前記詳細ログは、自動操作命令に応じて記録される操作対象項目情報、入力情報を含むことを特徴とする請求項
3に記載の情報処理装置。
【請求項5】
前記実行ログは、前記処理対象に対するユーザのログインからログアウトまでの処理のログを含むことを特徴とする請求項1~4のいずれか1つに記載の情報処理装置。
【請求項6】
前記制御部は、さらに、ログの粒度毎に削除可能かと削除可能な場合にその保管期間を設定したログポリシーに従って、表示部に表示されるログ削除画面で指定されるログを削除するログ削除手段を備えたことを特徴とする請求項
1~5のいずれか1つに記載の情報処理装置。
【請求項7】
制御部を備えた情報処理装置
が実行する情報処理方法であって、
前記制御部で実行される、
1又は複数の処理対象の実行ログを粒度毎に階層構造で記録するログ記録ステップと、
表示部にビューア画面を表示して、前記階層構造で記録された実行ログを階層化表示するビューアステップと、
を含
み、
前記階層化表示は、ドリルダウンによる表示又はツリー構造による表示を含み、
前記ログ記録ステップでは、前記実行ログを、日時、正常又はエラーを示すログレベル、処理対象、サマリーキー情報を含むサマリーログと、日時、ログレベル、処理内容、明細キー情報を含む明細ログと、日時、ログレベル、操作内容、詳細キー情報を含む詳細ログとを、階層構造でそれぞれテーブルに記録し、
前記ビューアステップでは、前記ビューア画面において、前記サマリーキー情報及び前記明細キー情報を使用して、前記サマリーログから前記明細ログ、前記明細キー情報及び前記詳細キー情報を使用して、前記明細ログから前記詳細ログをドリルダウン又はツリー構造で表示することを特徴とする情報処理方法。
【請求項8】
制御部を備えた情報処理装置に実行させるための情報処理プログラムであって、
前記制御部
に、
1又は複数の処理対象の実行ログを粒度毎に階層構造で記録するログ記録ステップと、
表示部にビューア画面を表示して、前記階層構造で記録された実行ログを階層化表示するビューアステップと、
を実行させるための情報処理プログラム
であり、
前記階層化表示は、ドリルダウンによる表示又はツリー構造による表示を含み、
前記ログ記録ステップでは、前記実行ログを、日時、正常又はエラーを示すログレベル、処理対象、サマリーキー情報を含むサマリーログと、日時、ログレベル、処理内容、明細キー情報を含む明細ログと、日時、ログレベル、操作内容、詳細キー情報を含む詳細ログとを、階層構造でそれぞれテーブルに記録し、
前記ビューアステップでは、前記ビューア画面において、前記サマリーキー情報及び前記明細キー情報を使用して、前記サマリーログから前記明細ログ、前記明細キー情報及び前記詳細キー情報を使用して、前記明細ログから前記詳細ログをドリルダウン又はツリー構造で表示することを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
例えば、既存の一般的なログの保存形式では、ログビューア上で異なる粒度のログが混在して表示されてしまう問題があった。そのためエラーの原因となった操作の特定や、一連の実行に沿ったログの閲覧にコストがかかっていた。従来のログの保存システムとして、例えば、特許文献1がある。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1では、処理対象について、実行ログを利用してエラー原因や操作記録の分析にかかるコストを低減することに関して何ら記載されていない。
【0005】
本発明は、上記に鑑みてなされたものであり、処理対象についての実行ログを利用してエラー原因や操作記録の分析にかかるコストを低減することが可能な情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明は、制御部を備えた情報処理装置であって、前記制御部は、1又は複数の処理対象の実行ログを粒度毎に階層構造で記録するログ記録手段と、表示部にビューア画面を表示して、前記階層構造で記録された実行ログを階層化表示するビューア手段と、を備えたことを特徴とする。
【0007】
また、本発明の一態様によれば、前記階層化表示は、ドリルダウンによる表示又はツリー構造による表示を含むことにしてもよい。
【0008】
また、本発明の一態様によれば、前記ログ記録手段は、前記実行ログを、日時、正常又はエラーを示すログレベル、処理対象、サマリーキー情報を含むサマリーログと、日時、ログレベル、処理内容、明細キー情報を含む明細ログと、日時、ログレベル、操作内容、詳細キー情報を含む詳細ログとを、階層構造でそれぞれテーブルに記録し、前記ビューア手段は、前記ビューア画面において、前記サマリーキー情報及び前記明細キー情報を使用して、前記サマリーログから前記明細ログ、前記明細キー情報及び前記詳細キー情報を使用して、前記明細ログから前記詳細ログをドリルダウン又はツリー構造で表示することにしてもよい。
【0009】
また、本発明の一態様によれば、前記ログ記録手段は、前記明細ログは、型及び/又は列数が異なる場合は、前記サマリーログに異なる実行種別コードを付加し、当該異なる実行種別コード毎にテーブルを分けて記録することにしてもよい。
【0010】
また、本発明の一態様によれば、前記実行ログは、RPA(Robotic Process Automation)の実行ログを含むことにしてもよい。
【0011】
また、本発明の一態様によれば、前記明細ログは、RPAフロー定義に従って記録される実行ロボット情報、操作対象情報、ループ回数情報を含み、前記詳細ログは、自動操作命令に応じて記録される操作対象項目情報、入力情報を含むことにしてもよい。
【0012】
また、本発明の一態様によれば、前記制御部は、さらに、ログの粒度毎に削除可能かと削除可能な場合にその保管期間を設定したログポリシーに従って、表示部に表示されるログ削除画面で指定されるログを削除するログ削除手段を備えることにしてもよい。
【0013】
また、本発明の一態様によれば、前記実行ログは、前記処理対象に対するユーザのログインからログアウトまでの処理のログを含むことにしてもよい。
【0014】
また、上述した課題を解決し、目的を達成するために、本発明は、制御部を備えた情報処理装置で実行される情報処理方法であって、前記制御部で実行される、1又は複数の処理対象の実行ログを粒度毎に階層構造で記録するログ記録ステップと、表示部にビューア画面を表示して、前記階層構造で記録された実行ログを階層化表示するビューアステップと、を含むことを特徴とする。
【0015】
また、上述した課題を解決し、目的を達成するために、本発明は、制御部を備えた情報処理装置に実行させるための情報処理プログラムであって、前記制御部において、1又は複数の処理対象の実行ログを粒度毎に階層構造で記録するログ記録ステップと、表示部にビューア画面を表示して、前記階層構造で記録された実行ログを階層化表示するビューアステップと、を実行させるための情報処理プログラムであることを特徴とする。
【発明の効果】
【0016】
本発明によれば、処理対象についての実行ログを利用してエラー原因や操作記録の分析にかかるコストを低減することが可能になるという効果を奏する。
【図面の簡単な説明】
【0017】
【
図1】
図1は、RPAの操作定義の例を示す図である。
【
図2】
図2は、RPA処理のログの例を示す図である。
【
図3】
図3は、従来のログの課題を説明するための図である。
【
図4】
図4は、本実施の形態のログテーブルの構造例を示す図である。
【
図5】
図5は、本実施の形態に係る情報処理装置の構成の一例を示すブロック図である。
【
図6】
図6は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図7】
図7は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図8】
図8は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図9】
図9は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図10】
図10は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図11】
図11は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図12A】
図12Aは、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図12B】
図12Bは、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図13】
図13は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図14】
図14は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図15】
図15は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図16】
図16は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図17】
図17は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図18】
図18は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図19】
図19は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図20】
図20は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図21】
図21は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図22】
図22は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図23】
図23は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図24】
図24は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図25】
図25は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図26】
図26は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図27】
図27は、本実施の形態に係る情報処理装置の処理の具体例を説明するための図である。
【
図28】
図28は、本実施の形態に係る情報処理装置の変形例1を説明するための図である。
【
図29】
図29は、本実施の形態に係る情報処理装置の変形例2を説明するための図である。
【
図30】
図30は、本実施の形態に係る情報処理装置の変形例2を説明するための図である。
【
図31】
図31は、本実施の形態に係る情報処理装置の変形例2を説明するための図である。
【
図32】
図32は、本実施の形態に係る情報処理装置の変形例2を説明するための図である。
【発明を実施するための形態】
【0018】
以下に、本発明に係る情報処理装置、情報処理方法、及び情報処理プログラムの実施の形態を、図面に基づいて詳細に説明する。なお、本実施形態によりこの発明が限定されるものではない。
【0019】
[1.概要]
近時、例えば、RPA(Robotic Process Automation)と呼ばれるアプリケーション自動操作の需要が高まっている。これは、働き方改革などの動きもあり、定型作業の自動化を促進することが望まれているという背景がある。
【0020】
かかるRPAは、操作を自動化するための自動化ツールがある。具体的には、ユーザによる複数の操作を登録(定義)しておき、その登録した操作を実行することにより、定形化された2回目以降の操作を簡単に実行することができるようにしている。
【0021】
かかるRPAでは、アプリケーションの自動操作に定義が必要となり、その定義作成のし易さや、想定しない際の調査のし易さが求められている。
【0022】
図1は、RPAの操作定義の例を示す図である。
図1に操作定義の例では、業務システムに対して、(1)Aに値をセット、(2)Bに値をセット、(3)Cに値をセットという内容になっている。
【0023】
図2を参照して、一般的なログの概要を説明する。
図2は、RPA処理のログの例を示す図である。一般的なログは複数実行者のログが混在した状態かつ時系列順に処理内容が列挙される。RPAは自動で操作を行う都合上、実行中に人が処理内容を把握できないことが多く、ログから情報を得ることが一般的である。
図2に示すログの例では、時系列に、複数実行者の異なる処理対象の処理内容のログが列挙されている。
【0024】
図3を参照して、従来のログの課題を説明する。
図3は、従来のログの課題を説明するための図である。複雑な処理内容が列挙されたログから結果分析を行うことはコストが大きい。特にRPAのように要求によって処理手順が異なる複雑なフローを実行する場合、
別実行の処理内容の混在や、ログの粒度の差からログ自体が煩雑になってしまう。そのため、結果の確認や問題発生箇所の分析を行うには多大な時間が必要であった。
【0025】
例えば、
図3において、従来のログから問題発生箇所を特定し、原因の調査を行うことは、異なる処理対象の処理内容が混在しているため、前後の処理内容などを捉えにくくなっている等の理由からコストがかかってしまう。
【0026】
本実施の形態では、1又は複数の処理対象(例えば、アプリケーション)の実行ログを参照してエラー原因の特定やその分析を行う場合にコストがかかるという課題を解決するために、実行ログを階層構造で管理する。具体的には、複雑な定義ベースの処理フローで発生する正常/エラーログを、粒度毎に構造化して階層構造で複数のテーブルに分けて記録し、ログビューア上からも階層表示(例えば、ドリルダウンやツリー構造で表示)で閲覧可能とすることで、ログの閲覧性を向上させる。
【0027】
図4は、本実施の形態のログテーブルの構造例を示す図である。本実施の形態では、実行ログを、サマリーログ、明細ログ、詳細ログの3段階の階層構造で記録する。
【0028】
ところで、一般的に、ログに主に2通りの保存目的がある。1つ目は、操作の詳細を記録したもので、主にエラー原因の特定のためなどに確認する、短期的に必要になるログ(本明細書の明細ログ、詳細ログが該当)の保存である。2つ目は、監査要件を満たすうえで必要になる、長期的に保存する必要があるログ(本明細書のサマリーログが該当)の保存である。
【0029】
しかしながら、明細、詳細ログが肥大化する懸念がある。ログの粒度が細かくなるにつれて記録する件数が増える傾向がある。そのため、粒度の細かいログにおいては、記録する際のファイル容量が肥大化する懸念がある。
【0030】
そこで、本実施の形態では、(1)任意の期間に記録されたログを、粒度ごとに選択して削除可能にし、(2)ログの粒度毎に削除できない期間を設定可能にし、必要なログが誤って削除されることを防ぐ機能を実装した。
【0031】
これにより、(1)容量の肥大化要因となる明細ログ・詳細ログを選択的に削除でき、(2)監査要件上で必要なログ(サマリーログなど)は長期的に保管又は削除不可と設定でき、誤操作によるログの削除を防ぐことが可能となる。
【0032】
以下の説明では、RPAの自動操作の実行ログについて説明するが、本発明は、RPAに限られるものではなく、一般的な業務システム全般や定義やタスクを組み合わせて、フローを作成できるシステム等の実行ログについても適用可能である。
【0033】
[2.構成]
本実施の形態に係る情報処理装置100の構成について、
図5を参照して説明する。
図5は、本実施の形態に係る情報処理装置100の構成の一例を示すブロック図である。
【0034】
情報処理装置100は、市販のデスクトップ型パーソナルコンピュータである。なお、情報処理装置100は、デスクトップ型パーソナルコンピュータのような据置型情報処理装置に限らず、市販されているノート型パーソナルコンピュータ、PDA(Personal Digital Assistants)、スマートフォン、タブレット型パーソナルコンピュータなどの携帯型情報処理装置であってもよい。
【0035】
情報処理装置100は、
図5に示すように、制御部102と通信インターフェース部104と記憶部106と入出力インターフェース部108と、を備えている。情報処理装置100が備えている各部は、任意の通信路を介して通信可能に接続されている。
【0036】
通信インターフェース部104は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、情報処理装置100をネットワーク300に通信可能に接続する。通信インターフェース部104は、他の装置と通信回線を介してデータを通信する機能を有する。ここで、ネットワーク300は、情報処理装置100とサーバ200とを相互に通信可能に接続する機能を有し、例えばインターネットやLAN(Local Area Network)等である。なお、後述する記憶部106に格納されるデータは、サーバに格納されてもよい。
【0037】
入出力インターフェース部108には、入力装置112および出力装置114が接続されている。出力装置114には、モニタ(家庭用テレビを含む)の他、スピーカやプリンタを用いることができる。入力装置112には、キーボード、マウス、およびマイクの他、マウスと協働してポインティングデバイス機能を実現するモニタを用いることができる。なお、以下では、出力装置114をモニタ114とし、入力装置112をキーボード112またはマウス112として記載する場合がある。また、ユーザが出力装置(モニタ)114の画面(GUI等)に対して入力装置112で操作することを、単に「ユーザ操作」と記載する場合がある。
【0038】
記憶部106には、各種のデータベース、テーブル、およびファイルなどが格納される。記憶部106には、OS(Operating System)と協働してCPU(Central Processing Unit)に命令を与えて各種処理を行うためのコンピュータプログラムが記録される。記憶部106として、例えば、RAM(Random Access Memory)・ROM(Read Only Memory)等のメモリ装置、ハードディスクのような固定ディスク装置、フレキシブルディスク、および光ディスク等を用いることができる。
【0039】
記憶部106は、定義ファイル106a、ログテーブル106b、ログポリシーファイル106c等を備えている。
【0040】
定義ファイル106aは、自動操作部(RPAシステム)102aが、1又は複数の処理対象を自動操作するための一連の操作命令を規定した定義(「RPAロボット実行定義」ともいう)を格納するためのファイルである。処理対象のアプリケーション毎に定義する、1回の処理実行(1ループ)に必要な一連の操作命令を定義したまとまりの単位を「ロボット又はRPAロボット」とする。「RPAロボット実行定義」の詳細は後述する。
【0041】
ログテーブル106bには、自動操作部(RPAシステム)102aのログ記録部102a1で作成される実行ログを格納するためのテーブルであり、実行ログは、サマリーログ、明細ログ、詳細ログの3段階の階層構造でそれぞれサマリーログテーブル、明細ログテーブル、詳細ログテーブルに格納される。
【0042】
ログポリシーファイル106cは、ログポリシー設定画面で設定される、ログの粒度毎に削除可能かと削除可能な場合にその保管期間(削除できない期間)を規定したログポリシーを格納するためのファイルである。
【0043】
制御部102は、情報処理装置100を統括的に制御するCPU等である。制御部102は、OS等の制御プログラム・各種の処理手順等を規定したプログラム・所要データなどを格納するための内部メモリを有し、格納されているこれらのプログラムに基づいて種々の情報処理を実行する。
【0044】
制御部102は、記憶部106に格納されている、定義ファイル106a、ログテーブル106b等にアクセス可能に構成されている。なお、定義ファイル106a及びログテーブル106bは、他の場所(例えば、サーバ200)に設けられていてもよく、制御部102がアクセス可能な構成であればよい。
【0045】
制御部102は、機能概念的に、自動操作部(RPAシステム)102aと、アプリケーション102bと、を備えている。
【0046】
自動操作部(RPAシステム)102aは、定義ファイル106aに登録されている、アプリケーション102bに対する一連の操作を規定した定義に従って、アプリケーション102bに対する自動操作を実行する。
【0047】
自動操作部(RPAシステム)102aは、機能概念的に、ログ記録部102a1と、ビューア部102a2と、ログ削除部102a3と、を備えている。自動操作部102aは、前述したRPAに組み込まれている。また、RPAに組み込むことの他に、RDA(Robotic Desktop Automation)等の他の自動操作ツールに組み込んでもよい。
【0048】
ログ記録部102a1は、複数の処理対象(アプリケーション102b)の実行ログを生成してログテーブル106bに粒度毎に階層構造で記録する。
【0049】
ログ記録部102a1は、実行ログを、日時、正常又はエラーを示すログレベル、処理対象、サマリーキー情報を含むサマリーログと、日時、ログレベル、処理内容、明細キー情報を含む明細ログと、日時、ログレベル、操作内容、詳細キー情報を含む詳細ログとを、階層構造でそれぞれログテーブル106bに記録してもよい。
【0050】
ログ記録部102a1は、明細ログが、型及び/又は列数が異なる場合は、サマリーログに異なる実行種別コードを付加し、当該異なる実行種別コード毎にテーブルを分けて記録することにしてもよい。
【0051】
ビューア部102a2は、モニタ114にビューア画面を表示して、ログテーブル106bに階層構造で記録された実行ログを階層化表示する。
【0052】
階層化表示は、ドリルダウンによる表示又はツリー構造による表示を含むことにしてもよい。ビューア部102a2は、ビューア画面において、サマリーキー情報及び明細キー情報を使用して、サマリーログから明細ログ、明細キー情報及び詳細キー情報を使用して、明細ログから詳細ログをドリルダウン又はツリー構造で表示することにしてもよい。
【0053】
ログ削除部102a3は、ログポリシーファイル106cのログポリシーに従って、モニタ114に表示されるログ削除画面で指定されるログをログテーブル106bから削除する。
【0054】
アプリケーション102bは、1又は複数の処理対象であるアプリケーションであり、例えば、受注、仕入、発注、出荷、売上等の業務用アプリケーションやブラウザ等の各種アプリケーションを含む。本発明は、これ以外のアプリケーションにも適用可能である。アプリケーションは、記憶部106に格納されているが、制御部102が実行する、記憶部106に格納されているアプリケーションを、機能概念的に制御部102のアプリケーション102bと表現している。
【0055】
[3.処理の具体例]
図6~
図20を参照して、本実施の形態における情報処理装置100の制御部102の処理の具体例を説明する。
図6~
図20は、本実施の形態における情報処理装置100の制御部102の処理の具体例を説明するための図である。
【0056】
制御部102の自動操作部(RPAシステム)102aは、定義ファイル106aに格納されているRPAロボット実行定義(プログラム及びデータ)に従って、以下に示すような処理(フロー)を実行する。以下に示す処理(フロー)は、自動操作部102aがRPA実行定義に従って実行する処理を示しているが、説明の簡単のため、RPA実行定義を動作主体として説明する場合がある。
【0057】
(3-1.共通(基本)定義)
図6~
図11を参照して、RPAロボット実行定義の共通定義を説明する。まず、基礎となる共通定義を説明する。
【0058】
(RPAフローの定義)
図6は、RPAロボット実行の前後の処理を含めた実行フローを示す図である。ロボットに入力させたいデータをExcelなどで用意して、それを繰り返し入力するような処理を想定している。
【0059】
図6において、RPAフローを開始すると(ステップS1)、RPAデータソースを読み込む(ステップS2)。ここでは、例えば、Excelなどで用意されたデータソースを読み込む。
【0060】
RPAデータソースループを実行する(ステップS3)。ここでは、読み込んだデータの件数分、ループ処理を行う。
【0061】
ループを開始すると(ステップS4)、RPAロボットを実行する(ステップS7)。ロボットにどのような動きをさせるか、という細かい設定を別途行う。実行結果の成功・失敗を判定する。実行結果が成功した場合は(ステップS8)、次のループを実行する(ステップS10)。実行結果が失敗した場合(ステップS9)は、運用に応じてハンドリングのパターンを選択する。(1)エラー時続行型(エラー発生後も処理を続行する)の場合は(ステップS11)、次のループを実行する(ステップS10)。(2)エラー時停止型(エラー発生した時点で処理を停止する)の場合は(ステップS12)、RPAシナリオを終了する(ステップS13)。
【0062】
ループが終了すると(ステップS5)、RPAフローを終了する(ステップS6)。
【0063】
(RPAロボット実行定義)
「RPAロボット実行」における詳細な定義を説明する。処理の部品を組み合わせてロボットの挙動を定義する。RPAロボット実行定義は、(1)レイヤー1(L1):RPAフロー定義、(2)レイヤー2(L2):ロボット実行定義、(3)レイヤー3(L3):画面操作処理の内部実装で構成されている。
【0064】
(1)レイヤー1(L1):RPAフロー定義
前述した「RPAフロー定義」である。RPA実行設定者が設定するレイヤーになる。
【0065】
(2)レイヤー2(L2):ロボット実行定義
ロボットの詳細な実行定義である。RPA実行設定者が設定するレイヤーになる。画面項目に応じた操作処理が部品として用意されており、それを組み合わせてロボットの挙動を定義する。一般的なRPAツールでは、画面操作処理以外に様々な処理の部品が用意されている。
【0066】
例えば、画面ショット撮影処理は、任意のタイミングで画面ショットを撮影したいときに組み込む処理である。待機処理は、画面遷移や登録処理など、時間のかかる処理を待機する処理である。設定時に待機時間を設定するのが一般的である。画面項目の値取得処理は、画面にどのような値が入力されているかを取得する処理である。分岐処理は、画面項目の値などを条件にして、ロボットの挙動を分岐させる処理である。ループ処理は、明細項目など、繰り返し入力が必要な場合に使用する処理である。
【0067】
(3)レイヤー3(L3):画面操作処理の内部実装
ロボット実行定義に組み込む「画面操作処理部品」の内部実装である。RPA実行設定者が意識することのないレイヤーである。このレイヤーに共通処理を組み込むことによって、RPAの設定を簡略化しつつ、高機能なものにすることできる。
【0068】
図7は、(1)レイヤー1(L1):RPAフロー定義、(2)レイヤー2(L2):ロボット実行定義、(3)レイヤー3(L3):画面操作処理の内部実装の処理フローの一例を示す図である。
【0069】
図7において、L1:RPAフロー定義では、RPAフローを開始すると(ステップS21)、一連の前処理を実行した後(ステップS22)、RPAロボット実行を行い(ステップS23)、一連の後処理を実行した後(ステップS24)、RPAフローを終了する(ステップS25)。
【0070】
L2:ロボット実行定義では、RPAロボット実行を開始すると(ステップS31)、例えば、テキストボックスを入力(ステップS32)、チェックボックスを入力(ステップS33)、ラジオボタンを入力し(ステップS34)、一連の処理を実行し(ステップS35)、登録ボタンを押下して(ステップS36)、RPAロボット実行を終了する(ステップS37)。
【0071】
L3:画面操作処理の内部実装では、操作処理を開始すると(ステップS41)、操作対象項目の特定を行う(ステップS42)。例えば、IDや座標をもとに操作対象項目を特定する。操作対象項目の特定に失敗した場合は(ステップS44)、すなわち、操作対象項目が存在しなかった場合、エラーとして、「RPAロボット実行」を即時中断する。
【0072】
操作対象項目の特定に成功した場合は(ステップS43)、入力データを取得する(ステップS45)。具体的には、「RPAデータソース読込」で読み込んだデータの中から、対象項目に入力するデータを取得する。
【0073】
入力データの取得に失敗した場合は(ステップS47)、エラーとして、「RPAロボット実行」を即時中断する。
【0074】
入力データの取得に成功した場合は(ステップS46)、一連の前処理を実行し(ステップS48)、操作処理を実行し(ステップS49)、一連の後処理を実行し(ステップS50)、実行ログの出力を行って、ログテーブル106bに格納し(ステップS51)、操作処理を終了する(ステップS52)。
【0075】
(実行ログ)
実行ログとして、サマリーログ、明細ログ、詳細ログの3段階のログを想定している。
サマリーログは、RPAフローの実行指示単位で作成されるログである。明細ログは、RPAフローの一実行における、各処理単位(L1:RPAフローの定義の各ステップ単位)で出力されるログである。詳細ログは、RPAロボット実行定義における、各処理単位(L2:RPAロボット実行定義の各ステップ単位)で出力されるログである。実行結果の成功、エラーのデータを含むことにしてもよい。
【0076】
図8は、サマリーログの例を示す図である。サマリーログは、SEQ、実行結果の成功又は失敗を示すログレベル、実行定義名、実行開始日時、実行終了日時、実行ID、実行種別CDのデータを含んでいてもよい。
【0077】
図9は、明細ログの例を示す図である。明細ログは、実行ID、SEQ、ログレベル、実行内容、実行ロボット名、操作対象アプリ名、ループSEQ、実行開始日時、実行終了日時のデータを含んでいてもよい。
【0078】
図10は、詳細ログの例を示す図である。詳細ログは、実行ID、明細SEQ、SEQ、ログレベル、実行内容、操作対象項目名、入力情報、実行日時のデータを含んでいてもよい。
【0079】
図11は、画面ショットログの例を示す図である。画面ショットログは、実行ID、明細SEQ、詳細SEQ、画面データを含んでいてもよい。
【0080】
(3-2.ログ記録部の実装及び処理)
図12A及び
図12Bを参照して、ログ処理(ログ記録部102a1の自動操作を規定する定義)の実装を説明する。ログ記録部102a1は、実行ログを、日時、ログレベル、処理対象、キー情報を含むサマリーログと、日時、ログレベル、処理内容、キー情報を含む明細ログと、日時、ログレベル、操作内容、キー情報を含む詳細ログとを、階層構造でそれぞれログテーブル106bに記録する。ログ記録部102a1は、明細ログ及び/又は詳細ログは、型及び/又は列数が異なる場合は、テーブルを分けて記録することにしてもよい。
【0081】
【0082】
明細ログ出力、サマリーログ出力は、ロボットの実行定義(L2)に実装し、詳細ログ出力は、画面操作処理の内部実装(L3)に実装する。RPAフロー定義上の処理内で明細ログの出力処理は共通して存在している。
【0083】
図12A及び
図12Bにおいて、RPAフローの開始、読込処理、ループ開始処理を実行する毎に、それぞれ、明細ログを出力してログテーブル106bに格納し(T1~T3)、1ループ目のRPAロボット実行(A)で、各処理内容(RAPロボット実行開始、テキストボックス入力、チェックボックス入力、ラジオボタン入力、・・・、登録ボタン押下、RPAロボット実行終了)の詳細ログを出力して、ログテーブル106bに格納し(T10)、1ループ目のRPAロボット実行(A)の終了で、明細ログを出力してログテーブル106bに格納する(T4)。
【0084】
同様に、1ループ目のRPAロボット実行(B)で、各処理内容の詳細ログを出力してログテーブル106bに格納し、1ループ目のRPAロボット実行(B)が終了すると、明細ログを出力して、ログテーブル106bに格納する(T5)。これをループ分実行する。続いて、ループ終了処理の明細ログを出力して、ログテーブル106bに格納し(T7)、RPAフロー終了処理の明細ログを出力して、ログテーブル106bに格納する(T8)。最後に、サマリーログを出力して、ログテーブル106bに格納する(T9)。
【0085】
L2の共通変数部は、明細ログ出力の開始時に、実行ID「XXXX-XXXX」、明細ログSEQ「1」を生成し、明細ログ出力毎に、明細ログSEQをカウントアップし、また、ループ開始時に、ループSEQ「1」を発行し、ループ毎に、ループSEQをカウントアップする。また、RPAロボット実行の開始時に、詳細ログSEQ「1」を発行し、RPAロボット実行の処理(例えば、テキストボックス入力、チェックボックス入力、ラジオボタン入力)毎に、詳細ログSEQをカウントアップし、RPAロボット実行の終了でリセットする。次のRPAロボットの実行が開始されると、同様に詳細ログSEQのカウントを開始する。
【0086】
(具体例1)
図13及び
図14を参照して、ログ記録部102a1及びビューア部102a2の処理の具体例1を説明する。ログ記録部102a1は、実行ログを、日時、ログレベル、処理対象、サマリーキー情報を含むサマリーログと、日時、ログレベル、処理内容、明細キー情報を含む明細ログと、日時、ログレベル、操作内容、詳細キー情報を含む詳細ログとを、階層構造でそれぞれログテーブル106bに記録する。ビューア部102a2は、モニタ114にビューア画面を表示して、ログテーブル106bに階層構造で記録された実行ログを階層化表示し、具体的には、階層化表示は、ドリルダウンによる表示としてもよく、例えば、ビューア画面において、サマリーキー情報及び明細キー情報を使用して、サマリーログから明細ログ、明細キー情報及び詳細キー情報を使用して、明細ログから詳細ログをドリルダウンで表示する。
【0087】
図13は、ログテーブル106bに格納されるサマリーログ、明細ログ、詳細ログの例を示す図である。ログテーブル106b上でサマリーログ、明細ログ、詳細ログに階層化して分割して格納し、その際、それぞれを紐づけるためのキー情報を生成して、サマリーログ、明細ログ、詳細ログに付加することで階層的にサマリーログ、明細ログ、詳細ログをドリルダウンして閲覧が可能な構造にする。なお、キー情報は、以下の例に限られるものではなく、サマリーログ、明細ログ、詳細ログを紐付けることが可能な情報であれば、如何なる情報としてもよい。なお、後述するように、明細ログ、詳細ログはその操作に適した専用のログテーブルを用意し、個別に管理することにしてもよい。
【0088】
図13において、サマリーログは、日時、ログレベル、処理対象、サマリーキー情報(親Key)を含んでいる。ログレベルは、Errorが失敗、それ以外のInfo等は成功を示している。
図13に示す例では、1行目は、日時「2020/3/6 16:41」、ログレベル「Error」、処理対象「受注・出荷RPA」、サマリーキー情報(親Key)「A001」となっている。
【0089】
明細ログは、日時、ログレベル、処理内容、明細キー情報(子key)を含んでいる。明細キー情報の子Keyは、例えば、親Key+SEQ番号として、親Keyと紐付けることにしてもよい。同図に示す例では、1行目は、日時「2020/3/6 16:41」、ログレベル「info」、処理内容「受注システム起動」、明細キー情報(子Key「A001_001」)、3行目は、日時「2020/3/6 16:44」、ログレベル「Error」、処理内容「出荷システム起動」、明細キー情報(子Key「A001_002」)となっている。
【0090】
詳細ログは、日時、ログレベル、操作内容、詳細キー情報(孫キー)を含んでいる。詳細キー情報(孫キー)は、子Key+SEQ番号としてもよい。同図に示す例では、1行目は、日時「2020/3/6 16:41」、ログレベル「info」、操作内容「受注数=10」、詳細キー情報(孫Key「A001_001_001」)、3行目は、日時「2020/3/6 16:45」、ログレベル「info」、操作内容「出荷日に「2020/3/6」入力」、詳細キー情報(孫Key「A001_002_001」)となっている。
【0091】
4行目は、日時「2020/3/6 16:46」、ログレベル「info」、操作内容「出荷数に「10」入力」、詳細キー情報(孫Key「A001_002_002」)、5行目は、日時「2020/3/6 16:47」、ログレベル「Error」、操作内容「エラー表示:在庫数が足りません」入力」、詳細キー情報(孫Key「A001_002_003」)となっている。
【0092】
図14は、ビューア画面の表示例を示す図である。
図14では、説明の簡単のため、
図13のデータを一部省略して表示している。ビューア部102a2は、ログテーブル106bに格納されるサマリーログ、明細ログ、詳細ログを、キー情報に基づいて、階層的にドリルダウンして閲覧が可能な構成となっている。処理単位のサマリーログから、必要に応じて詳細ログまでドリルダウンすることで、俯瞰した結果の把握と問題調査のための分析を効率的に行うことができる。
【0093】
図14において、ビューア部102a2は、ログテーブル106bのサマリーログを読み出して、サマリーログビューア(
図14(A))の画面を表示する。サマリーログビューアでは、日時やログレベルをフィルタで選択して表示対象を絞り込むことができる。サマリーログビューアで閲覧したい行を選択すると、選択した行の親Keyを含む子Keyを有する明細ログを明細ログビューア(
図14(B))を表示する。続いて、明細ログビューで、行を選択すると、選択した行の子Keyを含む孫Keyを有する詳細ログを明細ログビューア(
図14(C))に表示する。
【0094】
図14に示す例では、サマリーログビューアで例えば、エラーとなっている1行目(日時「2020/3/6 16:41」、ログレベル「Error」、処理対象「受注・出荷RPA」、キー情報(親Key)「A001」)を選択すると、当該1行目の親Key「A001」を含む子Key「A001_001、A001_002」を有する明細ログ(1行目の日時「2020/3/6 16:41」、ログレベル「info」、処理内容「受注システム起動」、キー情報(子Key「A001_001」)と、2行目の日時「2020/3/6 16:44」、ログレベル「Error」、処理内容「出荷システム起動」、キー情報(子Key「A001_002」)が明細ログビューア(
図14(B))に表示される。
【0095】
明細ログビューアで、例えば、エラーとなっている2行目を選択すると、選択した2行目の子Key「A001_002」を含む孫Keyを有する詳細ログ(1行目の日時「2020/3/6 16:45」、ログレベル「info」、操作内容「出荷日に「2020/3/6」入力」、キー情報(孫Key「A001_002_001」)と、2行目の日時「2020/3/6 16:46」、ログレベル「info」、操作内容「出荷数に「10」入力」、キー情報(孫Key「A001_002_002)、3行目の日時「2020/3/6 16:47」、ログレベル「Erroe」、操作内容「エラー表示:在庫数が足りません」、キー情報(子Key「A001_002_003」))が詳細ログビューア(
図14(C))に表示される。
【0096】
このようにして、効率的にエラーの原因特定に必要なログを表示することができる。
【0097】
(具体例2)
図15~
図20を参照して、ログ記録部102a1及びビューア部102a2の処理の具体例2を説明する。ログ記録部102a1は、明細ログ及び/又は詳細ログは、型及び/又は列数が異なる場合は、テーブルを分けて記録することにしてもよい。
【0098】
ログテーブル106bにおいて、型、列数、処理対象等が異なる明細ログや詳細ログのテーブルを分けて管理することが可能である。各処理に適した形式のログテーブルを用意することで、必要最小限の情報のみで効率的に管理することができる。ここでは、列数が異なる明細ログを分けて管理する場合を説明する。
【0099】
図15は、サマリーログの例を示す図である。サマリーログは、SEQ、ログレベル、実行定義名、実行開始日時、実行終了日時、実行ID、実行種別CDのデータを含んでいてもよい。
図15に示す例では、1行目は、SEQ「1」、ログレベル「Info」、実行定義名「受注RPAフロー」、実行開始日時「2020/1/3 9:40:00」、実行終了日時「2020/1/3 9:45:00」、実行ID「A000001」、実行種別CD「AAA」、4行目は、SEQ「4」、ログレベル「Info」、実行定義名「発注RPAフロー」、実行開始日時「2020/1/3 9:47:00」、実行終了日時「2020/1/3 9:51:00」、実行ID「B000001」、実行種別CD「BBB」となっている。実行IDはサマリーキー情報となる。実行種別CDは、実行種別を示すCDであり、この実行種別CDで明細ログを分けることができる。本例では、実行種別CD「AAA」に対応する明細ログAと、実行種別CD「BBB」に対応する明細ログBが作成される。
【0100】
図16は、明細ログAの例を示す図である。明細ログAは、実行ID、SEQ、ログレベル、実行内容、実行ロボット名、操作対象アプリ名、ループSEQ、実行開始日時、実行終了日時、XXXのデータを含んでいてもよい。実行ID、SEQが明細キー情報となる。
【0101】
図17は、明細ログBの例を示す図である。明細ログBは、実行ID、SEQ、ログレベル、実行内容、実行ロボット名、操作対象URL、ループSEQ、実行開始日時、実行終了日時、YYY、ZZZのデータを含んでいてもよい。実行ID、SEQが明細キー情報となる。
【0102】
図18は、詳細ログの例を示す図である。詳細ログは、実行ID、明細SEQ、SEQ、ログレベル、実行内容、操作対象項目名、入力情報、実行日時のデータを含んでいてもよい。実行ID、明細SEQ、SEQが詳細キー情報となる。
図19は、画面ショットの例を示す図である。
【0103】
図15~
図19の例では、ビューア部102a2は、
図15のサマリーログを読み出して、サマリーログビューアの画面を表示する。そして、サマリーログビューアで、例えば、3行目(SEQ「3」、ログレベル「Error」、実行定義名「仕訳RPAフロー」、・・・、実行ID「A000003」、実行種別CD「AAA」)が選択されると、ビューア部102a2は、明細ログAから選択された実行ID「A000003」のレコードを読み出して明細ログAのビューアに表示する。明細ログAのビューアで、行が選択されると、ビューア部102a2は、詳細ログAから選択された行の実行ID及びSEQのレコードを読み出して詳細ログビューアに表示する。
【0104】
また、ビューア部102a2は、サマリーログビューアで、例えば、5行目(SEQ「5」、ログレベル「Error」、実行定義名「仕訳RPAフロー」、・・・、実行ID「B000002」、実行種別CD「BBB」)が選択されると、ビューア部102a2は、明細ログBから選択された実行ID「B000002」のレコードを読み出して明細ログBのビューアに表示する。明細ログBのビューアで、行が選択されると、ビューア部102a2は、詳細ログから選択された行の実行ID及びSEQのレコードを読み出して詳細ログビューアに表示する。
【0105】
図20は、ビューアの例を説明するための図である。
図20において、説明の簡単のため、キー情報等の表示を省略している。以下の説明では、
図20に示すビューアを表示するためのサマリーログ、明細ログ、詳細ログのデータがログテーブル106bに格納されているものとして説明する。
【0106】
サマリーログの「アプリ用RPA」、実行方法CD「1」について、業務アプリ操作RPA明細ログのテーブルを用意し、サマリーログの「Web用RPA」、実行方法CD「2」について、ブラウザ操作RPA明細ログのテーブルを用意して、それぞれ必要な情報に適した構造のテーブルに分割して保存する。業務アプリ操作RPA明細ログとブラウザ操作RPA明細ログは、列情報の構成が異なっており、テーブル構造に応じて列情報を切り換える。
【0107】
図20(A)において、サマリーログビューアで、1行目のログレベル「Error」、「アプリ用RPA」、実行方法CD「1」の行が選択されると、業務アプリ用RPA明細ログから対象のレコードを読み出して、
図20(B)に示すような、業務アプリ操作RPA明細ログのビューアを表示する。業務アプリ操作RPA明細ログのビューアで行が選択されると、詳細ログから対象のレコードを読み出して、詳細ログビューアに表示する(
図20(D))。
【0108】
また、
図20(A)において、サマリーログビューアで、3行目のログレベル「Info」、「Webアプリ用RPA」、実行方法CD「2」の行が選択されると、ブラウザ操作RPA明細ログから対象のレコードを読み出して、
図20(C)に示すような、ブラウザ操作用RPA明細ログのビューアを表示する。ブラウザ操作RPA明細ログのビューアで行が選択されると、詳細ログから対象のレコードを読み出して、詳細ログビューアに表示する(
図20(D))。
【0109】
詳細ログは、2パターンの呼出によって抽出・表示されるログは異なるが、ログビューアの画面やテーブルは同一のものを利用可能である。
【0110】
(具体例3)
図21~
図27を参照して、ログ削除部102a3の処理の具体例3を説明する。ログ削除部102a3は、ログの粒度毎に削除可能かと削除可能な場合にその保管期間(削除できない期間)を設定したログポリシーに従って、ログ削除画面で指定されるログをログテーブル106bから削除する。ログ削除部102a3は、ログポリシー設定画面とログ削除画面の表示・データ受付を制御する。
【0111】
より具体的には、ログ削除部102a3は、オペレータの操作に応じてログポリシー設定画面をモニタ114に表示し、ログポリシー設定画面上でのオペレータの操作に応じて、ログの粒度(サマリーログ、明細ログ、詳細ログ)毎に削除の可否と削除可能な場合はどれだけの期間保持するかのログポリシーを設定して、ログポリシーファイル106cに登録する。また、ログ削除部102a3は、オペレータの操作に応じてログ削除画面をモニタ114に表示し、ログポリシーファイル106cのログポリシーに従って、ログ削除画面上でのオペレータの操作に応じて、指定されるログをログテーブル106bから削除する。
【0112】
図21は、ログポリシー設定画面の表示例を示す図である。ログポリシー設定画面では、ログの粒度毎に削除の可否と削除可能な場合はどれだけの期間保持するかのログポリシーを設定することができる。
【0113】
図21に示すログポリシー設定画面の例では、サマリーログ、明細ログ、詳細ログのそれぞれについて、削除可能かを指定するチェックボックス(チェック有り:削除可能、チェック無し:削除不可)と、保管期間を指定する欄と、ログポリシー設定画面で設定されたログポリシーを保存するための保存ボタンを備えている。ログポリシー設定画面では、システム使用者の監査要件に合わせて任意にログポリシーを設定できる。
【0114】
図21に示す例では、サマリーログは削除不可、明細ログは削除可能で保管期間「4ヶ月」、詳細ログは削除可能で保管期間「2ヶ月」が設定されている。
【0115】
図22は、ログ削除画面の表示例を示す図である。
図23は、ログ削除画面での削除対象のログの選択方法を説明するための図である。
図24は、ログ削除画面の他の表示例を示す図である。
【0116】
図22に示すログ削除画面では、ログの粒度に応じてログを選択的に削除することができる。
図22に示すログ削除画面は、ログの抽出条件を指定する抽出条件指定エリアと、指定される抽出条件に該当するログ(サマリーログ(
図15参照)、明細ログ(
図16,
図17参照)、詳細ログ(
図18参照)の件数を表示して削除するログを指定する削除エリアと、指定したログの削除を実行するための削除ボタンと、を備えている。
【0117】
抽出条件指定エリアでは、実行年月で表示するデータの範囲を指定する。
【0118】
削除エリアには、実行年月と、サマリーログ、明細ログ、及び詳細ログの削除チェックボックス及び件数が表示される。ログテーブル106bを参照して、抽出条件指定エリアで指定される実行年月の期間について、サマリーログ、明細ログ、及び詳細ログの件数を実行年月毎にそれぞれ集計して表示する。表示されたデータから、削除対象のログを削除チェックボックスでチェックして選択することができる。
【0119】
図23(A)に示すように、選択した箇所の子に当たるログがあればまとめて選択することができる。紐づく親ログがない状態で子ログが残らないようにするためである。例えば、実行年月「2021/07」について、明細ログの件数「125」の削除チェックボックスをチェックすると、この明細ログの子に当たる詳細ログの件数「6250」の削除チェックボックスを自動でチェックする。
【0120】
図23(B)に示すように、同様の理由で子ログのチェックを外す場合は親ログのチェックも外れる。例えば、実行年月「2021/07」について、詳細ログの件数「6250」の削除チェックボックスのチェックを外すと、この詳細ログの親に当たる明細ログの件数「125」の削除チェックボックスを自動で外す。
【0121】
また、
図22に示すログ削除画面において、ログポリシーで削除不可に設定されているログ、削除可能に設定されているが保管期間中のログは、削除できないように制御する。削除対象のログを削除チェックボックスでチェックして、削除ボタンが押下されると、ログテーブル106bから削除対象のログが削除される。
【0122】
図22に示す例では、抽出条件指定エリアでは、実行年月「2021/04~2021/12」が指定されており、実行年月「2021/04~2021/12」の各月のサマリーログ、明細ログ、及び詳細ログの件数が表示されている。現在月は、2021/12である。
図21に示すログポリシー設定画面の例では、サマリーログは削除不可、明細ログは当月と保管期間「4ヶ月」、詳細ログは当月と保管期間「2ヶ月」は削除ができないように制御し、例えば、削除できないログを異なる色で識別表示してもよい。
【0123】
この
図22のログ削除画面において、図に示すように削除対象のログの削除チェックボックスがチェックされて、実行ボタンが押されると、ログテーブル106bから削除対象のログが削除されて、
図24に示すような画面に更新される。
【0124】
上記の説明では、実行ログを、サマリーログ、明細ログ、詳細ログで構成する例を説明したが、本発明はこれに限られるものではなく、他の種別や別の粒度でログを管理することにしてもよい。
図25は、実行ログの他の構成例を示す図である。
図25において、ログの親子関係イメージ(上が親、下が子)を示しており、実行ログは、サマリーログと、サマリーログの子となる明細ログと、明細ログの子となる詳細ログ及び受入ファイルログと、詳細ログの子となる画面ショットログで構成されている。
【0125】
画面ショットログは、RPA操作対象の画面を撮影したログである(
図19参照)。受入ファイルログは、RPAを実行する際に受け入れた、操作対象画面への入力値が記載されたファイル情報を退避したログである(
図12Aにおいて、RPAデータソース読込で読み込んだファイルのログである)。
【0126】
4種別の異なるログの親子関係は、ログを保存する際の処理がどのレイヤーの処理なのかによって決まる。ログを保存する処理があるレイヤーと同じ粒度のログが親になる。受入ファイルログの記録処理はL2層の処理になる(
図12Aにおける明細ログ出力処理T2に紐づく処理)ため、親は明細ログになる。画面ショットログの記録処理はL3層の処理になる(
図12Aにおける詳細ログ出力処理T10に紐づく処理)ため、親は詳細ログになる。
【0127】
図26及び
図27は、実行ログをサマリーログ、明細ログ、詳細ログ、受入ファイルログ、画面ショットログで構成した場合のログポリシー設定画面の表示例及びログ削除画面の表示例を示す図である。
【0128】
図26に示すログポリシー設定画面の例では、サマリーログは削除不可、明細ログは削除可能で保管期間「4ヶ月」、受入ファイルログは削除可能で保管期間「2ヶ月」、詳細ログは削除可能で保管期間「2ヶ月」、画面ショットログは削除可能で保管期間「1ヶ月」が設定されている。この場合、
図27に示すログ削除画面の例では、サマリーログは削除不可、明細ログは当月と保管期間「4ヶ月」、受入ファイルログは、当月と保管期間「2ヶ月」、詳細ログは当月と保管期間「2ヶ月」、画面ショットログは、当月と保管期間「1ヶ月」は削除ができないように制御される。
【0129】
[4.変形例]
(変形例1)
上述のログビューアでは、ログをドリルダウンで階層化表示することにしたが、本発明は、これに限られるものではなく、ビューア部102a2は、例えば、1画面内でログをツリー形式で表示することで、階層化表示を行うことにしてもよい。
図28は、変形例1のログビューアの表示例を示す図である。
図28に示すサマリーログビューアにおいて、サマリーログの所望の行に例えばマウスカーソルを合わせて選択すると、選択された行に対応する明細ログのレコードのポップアップを表示し、さらに、明細ログの所望の行にマウスカーソルを合わせて選択すると、選択された行に対応する詳細ログのレコードのポップアップを表示する(不図示)ことで、ツリー形式でログの階層化表示を行う。
【0130】
(変形例2)
上記説明では、RPAのログに関して説明したが、本発明は、これに限られるものではなく、RPA以外のログについても階層化してテーブルに保存し、保存したログを階層化表示してもよい。例えば、RPAと同様に、タスクを組み合わせてフロー定義を行うようなシステムに適用可能である。
【0131】
また、一般的なアプリケーションのログも階層化して保存し、保存したログを階層化表示してもよい。
【0132】
例えば、ログ記録部102a1は、ユーザのログインからログアウトまでの処理のログを階層化して保存し、ビューア部102a2は、保存したログをビューア画面で階層化表示してもよい。これにより、ユーザのログインからログアウトまでの処理の一連を簡単に確認することができる。
【0133】
図29~
図32は、ユーザのログインからログアウトまでの処理のログを保存し、プレビューで確認する場合を説明するための図である。
図29は、ビューア画面の表示例を示している。ユーザがログインして、アプリケーションのジョブを起動して、各種操作を行った場合には、例えば、
図30~
図32に示すようなサマリーログ、明細ログ、詳細ログが作成されてログテーブルに保存され、保存されたログテーブルのログに基づいて
図22に示すようなビューア画面が表示される。
【0134】
図29は、ビューア画面の表示例を示している。
図30は、サマリーログ(ログイン情報ログ)の例を示す図である。同図に示すサマリーログは、SEQ、ユーザ、日時、内容、ログインGUID等のデータを含んでいてもよい。ログインGUIDは、ユーザがログイン時に発行されるユニークなIDであり、サマリーキー情報となる。
【0135】
図31は、明細ログの例を示す図である。同図に示す明細ログの例では、ログインGUID、SEQ、ログレベル、日時、操作、ジョブ名等のデータを含んでいてもよい。ログインGUID、SEQは、明細キー情報となる。
【0136】
図32は、詳細ログの例を示す図である。同図に示す詳細ログの例では、ログインGUID、明細SEQ、SEQ、ログレベル、日時、内容、操作等のデータを含んでいてもよい。ログインGUID、明細SEQ、SEQは、詳細キー情報となる。
【0137】
例えば、
図29において、ビューア画面で、例えば、サマリーログの1行目のユーザ「XXX」のレコードが選択されると、明細ログからログインGUID「XXXX・・・・」を含むレコードを読み出して、処理シーケンスとして、ジョブ起動、操作記録のデータを表示する。処理シーケンスにおいて、例えば、操作記録の「印刷実行」が選択されると、操作記録の「印刷実行」のレコードのログインGUID「XXXX・・・・」、SEQ「12」を含むレコードを詳細ログから読み出して、詳細レビューとして、No、日時、内容、操作のデータを表示する。このようにして、ログが階層化表示される。
【0138】
以上説明したように、本実施の形態によれば、1又は複数の処理対象の実行ログを粒度毎に階層構造で記録するログ記録部102a1と、モニタ114にビューア画面を表示して、前記階層構造で記録された実行ログを階層化表示するビューア部102a2と、を備えているので、処理対象について、実行ログを利用してエラー原因や操作記録の分析にかかるコストを低減することが可能となる。
【0139】
[5.国連が主導する持続可能な開発目標(SDGs)への貢献]
本実施形態により、業務効率化や企業の適切な経営判断を推進することに寄与することができるので、SDGsの目標8及び9に貢献することが可能となる。
【0140】
また、本実施形態により、廃棄ロス削減や、ペーパレス・電子化を推進することに寄与することができるので、SDGsの目標12、13及び15に貢献することが可能となる。
【0141】
また、本実施形態により、統制、ガバナンス強化に寄与することができるので、SDGsの目標16に貢献することが可能となる。
【0142】
[6.他の実施形態]
本発明は、上述した実施形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態にて実施されてよいものである。
【0143】
例えば、実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
【0144】
また、本明細書中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
【0145】
また、情報処理装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
【0146】
例えば、情報処理装置100が備える処理機能、特に制御部102にて行われる各処理機能については、その全部または任意の一部を、CPUおよび当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。尚、プログラムは、本実施形態で説明した処理を情報処理装置に実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じて情報処理装置100に機械的に読み取られる。すなわち、ROMまたはHDD(Hard Disk Drive)などの記憶部106などには、OSと協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部102を構成する。
【0147】
また、このコンピュータプログラムは、情報処理装置100に対して任意のネットワークを介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
【0148】
また、本実施形態で説明した処理を実行するためのプログラムを、一時的でないコンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、フレキシブルディスク、光磁気ディスク、ROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable and Programmable Read Only Memory)、CD-ROM(Compact Disk Read Only Memory)、MO(Magneto-Optical disk)、DVD(Digital Versatile Disk)、および、Blu-ray(登録商標) Disc等の任意の「可搬用の物理媒体」を含むものとする。
【0149】
また、「プログラム」とは、任意の言語または記述方法にて記述されたデータ処理方法であり、ソースコードまたはバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施形態に示した各装置において記録媒体を読み取るための具体的な構成および読み取り手順ならびに読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
【0150】
記憶部106に格納される各種のデータベース等は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、および、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、および、ウェブページ用ファイル等を格納する。
【0151】
また、情報処理装置100は、既知のパーソナルコンピュータまたはワークステーション等の情報処理装置として構成してもよく、また、任意の周辺装置が接続された当該情報処理装置として構成してもよい。また、情報処理装置100は、当該情報処理装置に本実施形態で説明した処理を実現させるソフトウェア(プログラムまたはデータ等を含む)を実装することにより実現してもよい。
【0152】
更に、装置の分散・統合の具体的形態は図示するものに限られず、その全部または一部を、各種の付加等に応じてまたは機能付加に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。
【符号の説明】
【0153】
100 情報処理装置
102 制御部
102a 自動操作部(RPAシステム)
102a1 ログ記録部
102a2 ビューア部
102a3 ログ削除部
102b アプリケーション
104 通信インターフェース部
106 記憶部
106a 定義ファイル
106b ログテーブル
106c ログポリシーファイル
108 入出力インターフェース部
112 入力装置
114 出力装置
200 サーバ
300 ネットワーク