(57)【要約】      （修正有）【課題】アプリケーションシステムから独立した、汎用的な処理履歴記録装置を提供する。【解決手段】処理履歴を記録媒体に記録するジャーナル記録システム３は、アプリケーションシステム１から、受け付けた処理履歴の書き込みリクエストに基づいて、出力オブジェクトを生成する複数のエディタ３５と、受け付けたリクエストのリクエストタイプを判別し、複数のエディタ３５の中から、リクエストタイプに対応付けられているエディタ３５を選択するエディタ検索部３３と、選択されたエディタ３５が生成した出力オブジェクトに基づくジャーナルファイルを、記録媒体５に格納する出力部３０と、を備える。【選択図】図１
2006259787.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションシステムの処理履歴を記録媒体に記録する装置であって、
前記アプリケーションシステムから、処理履歴の書き込みリクエストを受け付ける手段と、
前記受付手段が受け付けた書き込みリクエストに基づいて、処理履歴データを生成する複数の処理履歴データ生成手段と、
前記受付手段が受け付けた書き込みリクエストのリクエストタイプを判別し、前記複数の処理履歴データ生成手段の中から、前記リクエストタイプに対応付けられている処理履歴データ生成手段を選択する手段と、
前記選択手段により選択された処理履歴データ生成手段が生成した処理履歴データに基づく処理履歴ファイルを、前記記録媒体に格納する格納手段と、を備える処理履歴記録装置。
【請求項２】
前記複数の処理履歴データ生成手段は、それぞれ、対応付けられているリクエストタイプに応じた所定の様式で、前記処理履歴データを生成することを特徴とする請求項１記載の処理履歴記録装置。
【請求項３】
前記処理履歴記録装置には、複数種類の記録媒体が接続可能であり、
前記格納手段は、それぞれ異なる種類の記録媒体に前記処理履歴ファイルを格納するための複数の媒体種類別格納手段を備える請求項１記載の処理履歴記録装置。
【請求項４】
前記受付手段は、オブジェクトとして前記書き込みリクエストを受信し、
前記リクエストタイプは、オブジェクトの型であることを特徴とする請求項１記載の処理履歴記録装置。
【請求項５】
前記書き込みリクエストは、前記アプリケーションシステムでの所定のイベントの発生または終了に関する情報を処理履歴として記録するためのリクエストであることを特徴とする請求項１記載の処理履歴記録装置。
【請求項６】
アプリケーションシステムの処理履歴を記録媒体に記録する方法であって、
前記アプリケーションシステムから、処理履歴の書き込みリクエストを受け付けるステップと、
前記受け付けた書き込みリクエストのリクエストタイプを判別するステップと、
前記判別されたリクエストタイプに基づいて、処理履歴データを生成するステップと、
前記生成された処理履歴データに基づく処理履歴ファイルを記録媒体に格納するステップと、を有する処理履歴記録方法。
【請求項７】
コンピュータに実行されると、
前記アプリケーションシステムから、処理履歴の書き込みリクエストを受け付けるステップと、
前記受け付けた書き込みリクエストのリクエストタイプを判別するステップと、
前記判別されたリクエストタイプに基づいて、処理履歴データを生成するステップと、
前記生成された処理履歴データに基づく処理履歴ファイルを記録媒体に格納するステップと、が行われるアプリケーションシステムの処理履歴を記録媒体に記録するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションシステムの処理履歴を記録媒体に格納する技術に関し、特に処理履歴の記録をアプリケーションシステムから独立させるための技術に関する。
【背景技術】
【０００２】
コンピュータシステムの多くは、ジャーナルと呼ばれる処理履歴を記録している。例えば、様々な業務処理を行うアプリケーションシステムでは、システムでの処理結果を後で検証可能なように、個別の業務処理の開始時刻、終了時刻、その他キーとなるような情報をジャーナルファイルに出力する。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来、アプリケーションシステムにおいてジャーナルファイルを出力する場合、どのタイミングで、どの情報を、どういうフォーマットで出力するかについて、アプリケーションシステムの設計時に定め、ジャーナル出力のための処理をアプリケーションシステム内で実装していた。
【０００４】
しかしながら、一般的なシステム構築おいては、ジャーナルに関する設計は後回しになったり、頻繁に設計変更されたりすることが多い。このため、従来のようにアプリケーションシステム内でジャーナル出力まで実装する場合には、アプリケーションシステムの設計がいつまでも終わらなかったり、後で設計変更されたりするようなことになり、好ましくない。
【０００５】
そこで、本発明の目的は、アプリケーションシステムの設計時に、処理履歴の記録に関する処理により受ける影響を小さくすることである。
【０００６】
本発明の別の目的は、アプリケーションシステムから独立した、汎用的な処理履歴記録を行う装置を提供することである。
【課題を解決するための手段】
【０００７】
本発明の一実施態様に従うアプリケーションシステムの処理履歴を記録媒体に記録する装置は、前記アプリケーションシステムから、処理履歴の書き込みリクエストを受け付ける手段と、前記受付手段が受け付けた書き込みリクエストに基づいて、処理履歴データを生成する複数の処理履歴データ生成手段と、前記受付手段が受け付けた書き込みリクエストのリクエストタイプを判別し、前記複数の処理履歴データ生成手段の中から、前記リクエストタイプに対応付けられている処理履歴データ生成手段を選択する手段と、前記選択手段により選択された処理履歴データ生成手段が生成した処理履歴データに基づく処理履歴ファイルを、前記記録媒体に格納する格納手段と、を備える。
【０００８】
好適な実施形態では、前記複数の処理履歴データ生成手段は、それぞれ、対応付けられているリクエストタイプに応じた所定の様式で、前記処理履歴データを生成するようにしてもよい。
【０００９】
好適な実施形態では、前記処理履歴記録装置には、複数種類の記録媒体が接続可能である。そして、前記格納手段は、それぞれ異なる種類の記録媒体に前記処理履歴ファイルを格納するための複数の媒体種類別格納手段を備えるようにしてもよい。
【００１０】
好適な実施形態では、前記受付手段は、オブジェクトとして前記書き込みリクエストを受信する。そして、前記リクエストタイプは、オブジェクトの型であってもよい。
【００１１】
好適な実施形態では、前記書き込みリクエストは、前記アプリケーションシステムでの所定のイベントの発生または終了に関する情報を処理履歴として記録するためのリクエストであってもよい。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の一実施形態について、図面を参照して説明する。
【００１３】
図１は、本発明の一実施形態に係るアプリケーションシステム１及びそのアプリケーションシステム１の処理履歴ファイルであるジャーナルファイルを記録するジャーナル記録システム３を示す。
【００１４】
アプリケーションシステム１およびジャーナル記録システム３は、いずれも例えば汎用的なコンピュータシステムにより構成され、以下に説明する各システム１，３内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。アプリケーションシステム１およびジャーナル記録システム３は、一つのコンピュータマシン上で実現してもよいし、それぞれ別のコンピュータマシン上で実現してもよい。
【００１５】
アプリケーションシステム１は、外部のシステムからの処理要求を受け付けて、それに応じた所定の処理を実行する。さらに、アプリケーションシステム１は、イベントの発生、終了など、内部の処理状況に応じて、ジャーナル記録システム３に対しジャーナルとして記録するよう、ジャーナル記録リクエストを通知する。ここで、ジャーナル記録リクエストの通知は、例えば以下の実施形態に示すように、オブジェクト（以下、リクエストオブジェクトという）の受け渡しによって行ってもよい。
【００１６】
なお、このリクエストオブジェクトには所定の型がある。例えば、汎用のオブジェクト型、日付型、クラス型、ＨＴＴＰリクエスト型、ＨＴＴＰレスポンス型などである。リクエストオブジェクトをどの型のオブジェクトとするかは、アプリケーションシステム１の設計者が自由に決めることができる。ジャーナル記録システム３では、このリクエストオブジェクトの型に応じて、それぞれ異なる処理が行われる。
【００１７】
アプリケーションシステム１は、内部機能として、フィルタ１１と、入力処理部１３と、業務処理部１５と、出力処理部１７とを備える。
【００１８】
フィルタ１１は、外部からの処理要求を受け付けると、アプリケーションシステム１がこの処理要求に基づいて処理を開始することをジャーナルに記録するために、リクエストオブジェクトをジャーナル記録システム３へ送る（Ａ）。このリクエストオブジェクトには、これから処理を開始する外部からの処理要求の識別情報を含んでもよい。これ以降にアプリケーションシステム１が出力するリクエストオブジェクトについても、同様に外部からの処理要求の識別情報を含んでもよい。
【００１９】
また、出力処理部１７での処理が終了すると、フィルタ１１は、アプリケーションシステム１での処理終了を通知するためのリクエストオブジェクトを、ジャーナル記録システム３へ送る（Ｊ）。
【００２０】
入力処理部１３は、外部からの処理要求に基づいて、所定の入力処理を実行する。この入力処理は、例えば、処理要求に含まれるデータの桁数や属性チェックなどの判定処理でもよい。そして、入力処理部１３は、入力処理の開始時に、入力処理の開始をジャーナルに記録するためのリクエストオブジェクト（Ｂ）をジャーナル記録システム３へ送る。そして、入力処理が終了すると、その処理結果をジャーナルに記録するためのリクエストオブジェクト（Ｃ）をジャーナル記録システム３へ送り、さらに、入力処理の終了をジャーナルに記録するためのリクエストオブジェクト（Ｄ）をジャーナル記録システム３へ送る。
【００２１】
業務処理部１５は、入力処理部１３の処理結果に基づいて、所定の業務処理を実行する。そして、業務処理部１５は、業務処理の開始時に、業務処理の開始をジャーナルに記録するためのリクエストオブジェクト（Ｅ）をジャーナル記録システム３へ送る。そして、業務処理が終了すると、その処理結果をジャーナルに記録するためのリクエストオブジェクト（Ｆ）をジャーナル記録システム３へ送り、さらに、業務処理の終了をジャーナルに記録するためのリクエストオブジェクト（Ｇ）をジャーナル記録システム３へ送る。
【００２２】
出力処理部１７は、業務処理部１５の処理結果に基づいて、所定の出力処理を実行する。この出力処理は、例えば、業務処理部１５の処理結果を表示するための画面を生成する処理などである。そして、出力処理部１７は、出力処理の開始及び終了をジャーナルに記録するために、出力処理の開始時及び終了時にそれぞれのリクエストオブジェクト（Ｈ，Ｉ）をジャーナル記録システム３へ送る。
【００２３】
次に、ジャーナル記録システム３について説明する。
【００２４】
ジャーナル記録システム３は、アプリケーションシステム１からジャーナル記録リクエストとして送られたリクエストオブジェクトを受信すると、このリクエストオブジェクトに基づいてジャーナルの生成及び編集を行い、記録媒体５に出力する。ここで、ジャーナル記録システム３には複数種類の記録媒体５が接続可能であり、複数種類の記録媒体５のいずれかにジャーナルを格納することができる。
【００２５】
ジャーナル記録システム３は、内部機能として、ジャーナル記録システム３を制御する制御部３１と、エディタ検索部３３と、複数のエディタ３５と、媒体管理部３７と、媒体別編集部３９と、記録媒体への書き込みを行う出力部３０とを備える。
【００２６】
制御部３１は、ジャーナル記録システム３全体の処理を制御する。例えば、アプリケーションシステム１からリクエストオブジェクトが送られてくると、制御部３１はエディタ検索部３３に対し、リクエストオブジェクトのオブジェクト型に対応するエディタ３５の検索を依頼する。
【００２７】
そして、エディタ検索部３３から、リクエストオブジェクトに対応する型のエディタ３５の通知を受けると、制御部３１は、そのエディタ３５にリクエストオブジェクトを渡し、後述するように出力オブジェクトを生成させる。さらに、エディタ３５から出力オブジェクトの通知を受け付けると、それを媒体管理部３７へ渡し、記録媒体５にジャーナルとして記録させる。
【００２８】
なお、アプリケーションシステム１とジャーナル記録システム３とを非同期化するために、制御部３１は受信したリクエストオブジェクトをキューイングするようにしてもよい。
【００２９】
複数のエディタ３５は、それぞれ、リクエストオブジェクトの型のいずれかと予め対応付けられている。そして、各エディタ３５は、対応付けられているオブジェクト型のリクエストオブジェクトを受け付けて、処理履歴データとして、予め定められた様式の出力オブジェクトを生成する。例えば、各エディタ３５は、独自のフォーマットのバイナリデータまたはテキストデータに変換するエディタ、ＣＳＶ形式の文字列に変換するエディタ、さらには、入れ子構造のマップに変換するエディタなどでもよい。
【００３０】
エディタ検索部３３は、制御部３１からリクエストオブジェクトのオブジェクト型の通知を受けると、そのオブジェクト型に対応するエディタ３５を検索する。受信したリクエストオブジェクトのオブジェクト型に対応するエディタ３５が存在しないときは、汎用の型であるオブジェクト型のエディタ３５を選択する。そして、ここで選択されたエディタ３５を制御部３１へ通知する。
【００３１】
ここで、ジャーナル記録システム３には、複数種類の記録媒体５が接続可能である。そして、複数の出力部３０は、それぞれ各記録媒体５に対応付けられている。各出力部３０は、出力オブジェクトに基づく媒体管理部３７の指示に従って、予め対応付けられている記録媒体５へジャーナルファイルを書き込む。記録媒体５に記録されるジャーナルファイルは、テキスト形式でもバイナリ形式でもよい。
【００３２】
媒体管理部３７は、接続されている記録媒体５の中からジャーナルファイルを格納する記録媒体５を選択する。記録媒体の選択の仕方は、例えば、アプリケーションシステム１が指定し、リクエストオブジェクト内に記述するようにしてもよいし、リクエストオブジェクトの型に応じて予め定められていてもよいし、記録媒体の種類に応じて優先順位が定められていて、それに従って選択してもよい。
【００３３】
媒体管理部３７は、さらに、選択された記録媒体５に固有の処理を媒体別編集処理部３９へ依頼する。そして、媒体管理部３７は、媒体別の編集処理がされた出力オブジェクトに基づいて、選択された記録媒体５へ格納するジャーナルファイルの最終的な出力フォーマットを決定し、選択された記録媒体５と対応する出力部３０にジャーナルファイルの書き込みを実行させる。
【００３４】
媒体別編集部３９は、媒体管理部３７が選択した記録媒体５にジャーナルファイルを書き込むための固有の処理を実行する。例えば、出力オブジェクトが入れ子構造のマップであるときは、媒体別編集部３９は、その入れ子構造の変換を行う。
【００３５】
次に、図２のフローチャートを参照して、ジャーナル記録システム３の処理手順について説明する。
【００３６】
まず、ジャーナル記録システム３は、アプリケーションシステム１からリクエストオブジェクトを受信する（Ｓ１）。
【００３７】
制御部３１は、受信したリクエストオブジェクトの型をエディタ検索部３３へ通知して、この型の編集を行うエディタ３５の検索を依頼する（Ｓ２）。
【００３８】
受信したリクエストオブジェクトに適合するエディタ３５の通知を受けると、このエディタ３５にリクエストオブジェクトを渡す。これにより、エディタ３５がこのリクエストオブジェクト基づいて出力オブジェクトを生成する（Ｓ３）。
【００３９】
媒体管理部３７は、エディタ３５により生成された出力オブジェクトを、制御部３１から取得し、ジャーナルファイルを出力する記録媒体５の種類を選択する（Ｓ４）。
【００４０】
ここで選択された記録媒体５の種類に応じて、媒体別編集部３９がその記録媒体に固有の媒体別編集を行う（Ｓ５）。
【００４１】
媒体管理部３７は、ジャーナルファイルの最終的なフォーマットを整えて、出力する記録媒体５の種類に対応した出力部３０を選択し、ジャーナルファイルを記録媒体５に書き込む（Ｓ６）。
【００４２】
本実施形態によれば、アプリケーションシステムをジャーナルの記録とは切り離して実装することが可能である。ジャーナルファイルの様式などの具体的な構造は、ジャーナル記録システムにおいて決定される。つまり、アプリケーションシステムは、ジャーナルとして記録したい内容を、リクエストオブジェクトとしてジャーナル記録システムに対して出力すればよい。この結果、従来のようにアプリケーションシステムでジャーナルファイルの生成、出力を行う必要がなくなり、ジャーナル出力に関する仕様変更に容易に対応することができる。
【００４３】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【図面の簡単な説明】
【００４４】
【図１】本発明の一実施形態に係るアプリケーションシステム及びジャーナル記録システムの構成図である。
【図２】ジャーナル記録システムの処理手順を示すフローチャートである。
【符号の説明】
【００４５】
１    アプリケーションシステム
３    ジャーナル記録システム
５    記録媒体
１１    フィルタ
１３    入力処理部
１５    業務処理部
１７    出力処理部
３０    出力部
３１    制御部
３３    エディタ検索部
３５    エディタ
３７    媒体管理部
３９    媒体別編集部
【図１】
2006259787.tif 000003
【図２】
2006259787.tif 000004