(57)【要約】【課題】既存のメッセージログシステムは、サーバのＯＳの言語に依存してメッセージログを生成するため、サーバ管理者が理解できないメッセージログを生成し、さらに、外部からの不正入力をそのままメッセージログとして保存するため、不正入力によりサーバ処理負荷を増大させるという課題があった。【解決手段】多言語に対応したメッセージログを生成するために、メッセージログ定義情報を有する言語毎のプロパティ・ファイルを用いて、メッセージログシステムが受領する文字列等を変換し、多言語に対応したメッセージログを生成する。また、メッセージログが受領する文字列等を、最大情報に従って変換することで、メッセージログシステムによるサーバ負荷増大を防ぐ。【選択図】図１
2007200183.tif 000002
【特許請求の範囲】
【請求項１】
記録対象プログラムにより伝送されるデータ、及び、該記録対象プログラムを示す識別コードを受領するデータ受領手段と、
前記データを代入するための変数、該変数と共にメッセージログの文章を構成する文字列、及び、前記識別コードを含む複数のメッセージログ定義情報を保存するメッセージログ定義情報保存手段と、
前記メッセージログ定義情報を、前記識別コードにより識別し、該識別されたメッセージログ定義情報に含まれる前記変数に、前記データを代入してメッセージログを生成するメッセージログ生成手段と、を備えるメッセージログシステム。
【請求項２】
前記メッセージログ生成手段が生成したメッセージログを、ログファイルデータテーブルに保存するメッセージログ保存手段を備える請求項１に記載のメッセージログシステム。
【請求項３】
前記データ受領手段が受領したデータを、ログファイルデータテーブルに保存するメッセージログ保存手段を備え、かつ、
前記メッセージログ生成手段は、前記ログファイルデータテーブルから、前記データ受領手段が受領したデータを取得してメッセージログを生成する請求項１に記載のメッセージログシステム。
【請求項４】
前記データは、該データの最大文字数もしくは最大値、最大パラメータ数、識別コードを定義する最大情報に従って変換されたデータである請求項１〜３のいずれか一項に記載のメッセージログシステム。
【請求項５】
コンピュータに、
記録対象プログラムにより伝送されるデータ、及び、該記録対象プログラムを示す識別コードを受領するデータ受領手順と、
前記データを代入するための変数、該変数と共にメッセージログの文章を構成する文字列、及び、前記識別コードを含む複数のメッセージログ定義情報を保存するメッセージログ定義情報保存手順と、
前記メッセージログ定義情報を、前記識別コードにより識別し、該識別されたメッセージログ定義情報に含まれる前記変数に、前記データを代入してメッセージログを生成するメッセージログ生成手順と、を実行させるためのプログラム。
【請求項６】
前記メッセージログ生成手順により生成したメッセージログを、ログファイルデータテーブルに保存するメッセージログ保存手順を実行させる請求項５に記載のプログラム。
【請求項７】
前記データ受領手順により受領したデータを、ログファイルデータテーブルに保存するメッセージログ保存手順と、
前記ログファイルデータテーブルから、前記データ受領手順が受領したデータを取得してメッセージログを生成する手順と、を実行する請求項５に記載のプログラム。
【請求項８】
前記データは、該データの最大文字数もしくは最大値、最大パラメータ数、識別コードを定義する最大情報に従って変換されたデータである請求項５〜７のいずれか一項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メッセージログシステム、及び、メッセージログを生成するプログラムに関し、特に、多言語のメッセージログを生成するメッセージログシステム、及び、プログラムに関する。
【背景技術】
【０００２】
プログラムは、コンピュータに処理される列を記載した命令からなるものである。このプログラムにより構成されるソフトウェアを開発するためには、プログラムに含まれるバグを修正する必要がある。また、バグ修正後、運用が開始されたソフトウェアであっても、開発時に見つけ出すことができなかったバグが発見されたり、予想されていなかった運用による不具合が発生したり、コンピュータ・ハードウェアの不具合が生じたり、コンピュータウィルスによる障害が発生等といった不具合を直し、運用を続行させる必要がある。
【０００３】
開発目的或いは運用目的のために、プログラムは、そのプログラムによるコンピュータ処理が適格に行われたかどうかを監視する必要がある。そのために、頻繁に使用されるのがメッセージログである。メッセージログは、プログラムの実行単位であるプロセスや、スレッド等に対して入出力される伝送データを補助記憶装置等に記憶させておき、問題発生時等にその記憶された伝送データを参照することで、問題の解決を図るために使用されるものである。
【０００４】
上記のプロセスは、コンピュータの演算装置や主記憶装置（メモリ）等を割当てられて実行されるプログラム実行単位であるのに対して、上記のスレッドは、処理の内容を規定するだけでそのような装置は割当てられず、割当処置は、別なプロセスや、オペレーションシステムに委ねるプログラム実行単位である。メッセージログは、開発や運用の目的のために監視対象のプロセスやスレッドを特定し、それらのプログラムへ入力されるデータ、又は、出力されるデータを、監視対象プログラムが行う処理名称や、処理が行われた時間と共に保存することで生成される。伝送データは、文字列や、数値等のデータ型のデータであり、そのデータだけでは、どのような処理が行われたかを開発者や管理者が判断するのが困難であるため、文章を形成するために文字列を付加してメッセージログは生成される。
【０００５】
メッセージログの使用例を、良く知られたアプリケーションを例として以下に述べる。検索エンジンサービスを実行するサーバに保存されるメッセージログでは、検索エンジンサービスを利用するユーザが、ＩＰアドレス２００．２００．１．１０のクライアントコンピュータを用いて、検索文字列として、例えば、「車」を入力した場合、「２００５／１２／０１  ２０：１５：１０  ＪＳＴ  コンピュータ２００．２００．１．１０が、「車」を検索しました。」のように、ユーザが検索した文字列「車」に、文章を構成するための文字列「を検索しました」等の定型文字列を付加し、さらに、処理が行われた時刻を付加してメッセージログを生成する。なお、検索エンジンサービスとは、その検索エンジンサービスを構成する機能の一つであるインデクサにより、ＨＴＭＬ等により他のコンピュータが有する情報から生成されたインデックスデータベースを作成し、そのインデックスデータベースの利用により、クライアント・コンピュータから検索された文字列等の入力を受け付け、その検索を行い、そのコンピュータに上記のＨＴＭＬの検索結果を出力するサービスを言う。
【０００６】
また、電子商取引サービスを実行するサーバに保存されるメッセージログは、電子商取引を行うユーザの氏名、ユーザのメールアドレスなどの登録情報等を、これらの情報と日時等をメッセージログとして保存する。或いは、掲示板サイト等においても、新規の書き込みがあった場合、その時刻と記入内容の一部をログとして保存している。
【０００７】
このようにメッセージログは、記録対象プログラムの伝送データを含めることによって、どのような処理が、いつ、どのコンピュータ処理によって行われたかを記述するものである。また、近年のインターネットの発展、コンピュータの普及及びコンピュータ処理能力の向上等の理由により、メッセージログの量は増大している。従って、サーバ管理者等は、そのように膨大なメッセージログから問題点を発見し、問題を素早く解決することが求められている。そのため、処理内容を適格に表現することで問題判別が容易なメッセージログを生成する必要がある。このようなメッセージログの必要性に伴い、従来は認識されなかった以下のような課題がある。
【０００８】
第１の課題は、コンピュータが、世界各国で利用されるなか、メッセージログが依然として、多数の自然言語に対応していないことである。そのため、メッセージログが基づく言語を理解できないサーバ管理者等には、そのようなメッセージログによるサーバ管理に支障が生じている。
【０００９】
この課題を詳しく説明する。例えば、検索エンジンサービスを実行するサーバに保存されるメッセージログでは、上述した「２００５／１２／０１  ２０：１５：１０  ＪＳＴ  コンピュータ２００．２００．１．１０が、「車」を検索しました。」のように、文章を構成するために必要な定型文字列を付加した形でメッセージログが保存される。英語を理解できるが日本語を理解できないサーバ管理者等は、このメッセージログは理解できない。そのため、上記のような日本語に基づくメッセージログを、「２００５／１２／０１  ２０：１５：１０  ＪＳＴ  Ｃｏｍｐｕｔｅｒ  ２００．２００．１．１０  ｈａｓ  ｓｅａｒｃｈｅｄ  ｔｈｅ  ｔｅｒｍ  ｏｆ  “車”」のように、上記の定型文字列を英語に変換し、かつ、英文法に従う形でメッセージログを生成する必要がある。最近は、日本に存在するサーバを、インターネット等のネットワークを利用して外国人が管理する場合等があり、そのようなサーバ管理者は、所定の言語においては明確であるメッセージログを、理解することが困難な場合がある。
【００１０】
第２の課題は、メッセージログ機能を狙った不正アクセスに対する対処が必要なことである。メッセージログは、連続的に保存する必要性があるため、そのような特徴を利用することで異常処理を生じさせる不正行為が生じている。例えば、上述の検索エンジンの場合、検索文字列が入力された場合、その入力情報をメッセージログとして保存する必要があるが、検索文字列として、不当に長い文字列を入力することで、コンピュータの処理能力を低下させるようなことも可能である。このような、サーバへの不当な入力を行うことで、サーバの処理能力を低下させる不正行為があり、それに対する対処が必要である。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
このように、メッセージログ機能に関しては、上述のように、多言語に対応したメッセージログが保存出来ず、不正入力に対応出来ないという課題がある。しかし、メッセージログ機能に対して、多言語対応機能や、不正入力対応機能等を付加する方法論や、プログラムは、提案されていない。
【００１２】
従来技術として、良く知られた開発言語であるＪＡＶＡ（登録商標）の有する標準機能を用いて、上述のような多言語対応機能や、不正入力対応機能等を簡単に実現することは極めて困難である。ＪＡＶＡ（登録商標）の場合、文字列を外部定義ファイル（＊．ｐｒｏｐｅｒｔｉｅｓ）に保存して、その定義ファイルに保存される文字列を取得することは可能である。この機能を利用すれば、あるエラー（ＵＲＬフォーマットに反するＵＲＬ、ＨＴＴＰと入力するところをＨＴＴＯと入力された）が発生した場合、外部定義ファイル（＊．ｐｒｏｐｅｒｔｉｅｓ）からそのエラー発生時に必要な文字列（例えば、ＵＲＬＥＲＲＯＲ：）を取得して、入力文字列と結合することで「ＵＲＬＥＲＲＯＲ：ＨＴＴＯ」のように表示させることは出来る。
【００１３】
しかし、ＪＡＶＡ（登録商標）の標準機能が提供する機能は、上述のような単純な表示を可能とする機能であるため、「ＨＴＴＯ」が代入されるような変数が、メッセージログ中に複数必要となる場合や、定型文字列を複数付加する必要がある場合に、対処できない。
【００１４】
また、メッセージログは、本来、記録対象プログラムの伝送データを、適格に保存する機能であるため、外部からの不正入力情報を修正してメッセージログに保存する機能は、用意されていない。さらに、このような不正入力に対する対処は、現在、なんら考慮されていないため、特に、インターネット上等で外部から容易に入力可能なサービスを実行するサーバにとっては、深刻な問題となっている。
【課題を解決するための手段】
【００１５】
以上の課題を解決するために、本発明に係るメッセージログシステムは、記録対象プログラムにより伝送されるデータ、及び、記録対象プログラムを示す識別コードを受領するデータ受領手段と、そのデータを代入するための変数、この変数と共にメッセージログの文章を構成する文字列、及び、識別コードを含む複数のメッセージログ定義情報を保存するメッセージログ定義情報保存手段と、メッセージログ定義情報を、識別コードにより識別し、識別されたメッセージログ定義情報に含まれる前記変数に、前記データを代入してメッセージログを生成するメッセージログ生成手段と、を備える。
【００１６】
さらに、本発明に係るメッセージログシステムは、メッセージログ生成手段が生成したメッセージログを、ログファイルデータテーブルに保存するメッセージログ保存手段を備えることで、生成したメッセージログを保存する。
【００１７】
また、本発明に係るメッセージログシステムは、データ受領手段が受領した文字列等を、ログファイルデータテーブルに保存するメッセージログ保存手段を備え、かつ、メッセージログ生成手段は、ログファイルデータテーブルから、データ受領手段が受領した文字列等を取得してメッセージログを生成することで、メッセージログを出力する時に、メッセージログを生成する。
【００１８】
さらに、記録対象プログラムにより伝送されるデータの最大文字数もしくは最大値、最大パラメータ数、識別コードを定義する最大情報に従って、その伝送データを変換し、メッセージログとして記憶することで、不正に膨大な入力等に対応できる。
【発明の効果】
【００１９】
本発明は、言語毎に定義されたメッセージログ定義情報により、多言語に対応したメッセージログの生成を可能にする。
【００２０】
更に、外部からの不正入力に対して、そのような不正入力文字を修正することで、メッセージログ機能によりサーバ処理負荷の増加を防ぐことを可能とする。
【発明を実施するための最良の形態】
【００２１】
本発明によるメッセージログシステムの実施形態について、添付図面を参照して詳述する。
【実施例】
【００２２】
図１は、本発明に係るメッセージログシステムにおける機能の概略構成図を示す。このシステムは、データ受領手段１、データ変換手段２、メッセージログ生成手段３、メッセージログ保存手段４、メッセージログ出力手段５、最大情報定義部６、メッセージログ定義部７、ログファイルデータテーブル８を有する。データ受領手段１、データ変換手段２、メッセージログ生成手段３、メッセージログ保存手段４、メッセージログ出力手段５は、メッセージログシステムの行う処理を示し、最大情報定義部６、メッセージログ定義部７、ログファイルデータテーブル８は、図示されない記憶装置に記憶される情報である。
【００２３】
文字列入力画面ａ、ログ選択情報入力画面ｂ、メッセージログ出力画面ｃは、ネットワークに接続されたメッセージログシステム外部のクライアント・コンピュータ、又は、メッセージログシステムの一部となる図示されない表示部に表示される画面であり、入力文字列、ログ選択情報は、図示されないメッセージログシステムの入力部によって入力される情報である。また、外部処理９は、メッセージログシステムに、メッセージログ生成を依頼する処理である。メッセージログ機能は、文字列入力画面ａからの入力処理に対して必要となる機能ではなく、記録対象プログラムが伝送するデータ全般を記録するものであるためである。外部処理９は、記録対象プログラムが、メッセージログを書き込む処理の例として示される。
【００２４】
データ受領手段１は、文字列入力画面ａからユーザに入力された文字列、数値（以下、文字列等と言う）、及び、その文字列等を出力した処理内容を示す識別コード等を受領する処理を行う。さらに、受領元が、外部処理９の場合は、外部処理９から伝送されたデータと、メッセージログ書込み指示、その外部処理が行った処理内容を示す識別コード等を受領する。なお、ここで言うコードとは、記録対象プログラム毎に定義される情報と必ずしも同じではない。というのは、１つのプロセス又はスレッドは、複数の処理を行い、ここで言うコードは、そのような複数処理の各々について特定されるものであるからである。
【００２５】
データ変換手段２は、データ受領手段１が受領した文字列等を、最大情報定義部６に基づいて変換する処理を行う。また、この処理は、メッセージログ生成機能のコンピュータ装置に対する処理負荷を、意図的に向上させる不正入力に対する対処法である。従って、そのような対処が必要となるのは、不正なユーザからの外部入力を認めるアプリケーション全般があり、例えば、検索エンジンや、電子商取引サイト、掲示板サイト等が挙げられる。以下、そのようなアプリケーションの１つとして検索エンジンを用いて、データ変換手段２が行う変換処理について説明する。
【００２６】
最大情報定義部６は、入力数値の最大値と最大パラメータ数、及び、入力文字列の最大文字数と最大パラメータ数を有する最大情報を定義した情報である。データ変換手段２は、最大情報定義部６から、最大情報を取得して、入力文字列等が最大情報の条件を満たすか否かを判断する。最大情報の条件を満たさない場合は、最大情報の条件を満たす文字列等に変換を行い、最大情報の条件を満たす場合は、変換されない（以下、データ変換手段２において上記の判断処理がされた文字列等を処理文字列等という）。
【００２７】
最大文字数や、最大引数を定義する理由の１つは、メッセージログ処理機能によるコンピュータ装置に対する負荷を増大させるためであり、実際には、最大文字数や、最大引数として１，０００程度の数値が使用される。ここでは、例示のため、最大文字数３と、最大引数２のような小さな数値を用いて、以下に説明する。
【００２８】
例えば、検索エンジンに対して、「車車車車車車車車車車」という文字が入力されたとする。最大情報定義部６に、入力文字列に対する文字数の最大値が３と定義されている場合、データ変換手段２は、上記受領文字列を３文字の「車車車」と変換する。同様に「車  車  車  車  車  車  車  車  車」という文字が入力されたとする。最大情報定義部６に、入力文字列に対する文字の最大引数（引数とは、プロセスやメソッドが伝送するデータの数であって、通常、カンマや、データ毎に間を空けることによって区切られる）が２と定義されている場合、データ変換手段２は、上記受領文字列を文字の引数を「車  車」と変換する。
【００２９】
また、数値が入力された場合でも、非常に大きな数値が入力された場合は、最大情報定義部６の最大値以内になるように、データ変換手段２は、入力数値を変換し、また、非常に大きな引数が入力された場合、最大情報定義部６の最大引数以内になるように、データ変換手段２は、入力数値を変換する。
【００３０】
メッセージログ生成手段３は、データ変換手段２から受領した処理文字列等を受領し、メッセージログ定義部７に保存されたメッセージログ定義情報を、識別コードで識別し、その識別されたメッセージログ定義情報に含まれる変数に対して、受領文字列等を代入する。以下に、このようなメッセージログ定義部７を用いたメッセージログ生成手段３によるメッセージログ生成処理を詳しく説明する。
【００３１】
メッセージログ定義部７は、入力文字列等の伝送データ、変数、定型文字列、及び、識別コードを含むメッセージログ定義情報を複数有するプロパティ・ファイルから構成される。そのプロパティ・ファイルは、言語毎に用意される。各プロパティ・ファイルには、処理を特定するための識別コード毎に複数のメッセージログ定義情報が定義される。日本語プロパティ・ファイルに定義されるメッセージログ定義情報は、「ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ=サーバは  ％１＄ｓ  正常受領した」等のように定義される。ここで「ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ」は、文字列受領処理が正常に行われたことを示す識別コードである。「％１」は、文字列の順番を示す。メッセージログ定義情報内に変数が１つの場合は、「％１」であり、２つある場合は、「％２」が規定される。「＄ｓ」は、ｃｈａｒ型（文字列）のデータ型であることを意味する。メッセージログ定義部７が、英語のプロパティ・ファイルを有する場合は、上述の処理例で説明すると、英語プロパティ・ファイル内に「ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ＝ＳＥＲＶＥＲ  ＨＡＳ  ＲＥＣＥＩＶＥＤ  ％１＄ｓ  ｃｏｒｒｅｃｔｌｙ」のように定義されることになる。
【００３２】
メッセージログ生成手段３は、上述したメッセージログ定義情報の、「％１＄ｓ」部分に実際の受領文字列を代入することによって、メッセージログを生成する。例えば「自動車」という文字列から、日本語のメッセージログを生成する場合は、「２００５／１２／２４  １５：５０：５０  ＪＳＴ  ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ  サーバは  自動車  正常受領した」のように、時間情報等を付加して、メッセージログが生成される。同様に、英語のメッセージログは、「２００５／１２／２４  １５：５０：５０  ＪＳＴ  ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ  ＳＥＲＶＥＲ  ＨＡＳ  ＲＥＣＥＩＶＥＤ  自動車  ｃｏｒｒｅｃｔｌｙ」のように生成される。
【００３３】
なお、プロパティ・ファイルの言語の選定は、本実施例においては、メッセージログシステムが実行するプログラム起動時に、オペレーション・システム（ＯＳ）が基づく言語を、ＯＳから取得することで選定される。一方、サーバ管理者が、必ずしも、ＯＳが基づく言語を理解できるとは限らないため、メッセージログシステム起動時に、ＯＳが基づく言語と異なる言語を選定することとしても良い。
【００３４】
メッセージログ保存手段４は、メッセージログ生成手段３が生成したメッセージログを、ログファイルデータテーブル８に保存する。また、ログファイルデータテーブル８も、言語毎に構成され、日本語のデータテーブル、又は、英語のデータテーブル等、言語毎にデータテーブルが存在し得る。
【００３５】
メッセージログ出力手段５は、ログ選択情報入力画面ｂで入力されるログ選択情報を受領して、メッセージログ出力のための必要な処理を行なう。このログ選択情報は、メッセージログの時間、サーバ名称、識別コード等のメッセージログを選択するための必要な属性情報を含む。これらの属性情報は、ログファイルデータテーブル８内の膨大なメッセージログデータから特定のメッセージログを選択するための属性情報である。上述では、ログ選択情報入力画面ｂからログ選択情報を受領することを説明したが、外部又は内部のソフトウェアからログ選択情報を出力することにより選択しても良い。
【００３６】
メッセージログ出力手段５は、ログ選択情報で選択された情報に従い、ログファイルデータテーブル８から検索対象の処理文字列等を検索する。メッセージログ出力手段５は、検索したメッセージログをメッセージログ出力画面ｂに出力する。
【００３７】
上述の実施例では、ログファイルデータテーブル８に、生成したメッセージログを保存する例を示した。このように、ログファイルデータテーブル８に、メッセージログを生成して保存する場合を、以下、出力前メッセージログ生成処理と言う。一方、その変形例として、ログファイルデータテーブル８に、入力文字列等と、処理時間等の必要な情報を最小限付加して保存し、メッセージログ出力処理の際に、メッセージログを生成する例があり、その処理を出力時メッセージログ生成処理と言う。出力時メッセージログ生成処理では、ログファイルデータテーブルには、「２００５／１２／２４  １５：５０：５０  ＪＳＴ  ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ＝自動車」のように、文章を構成するための定型文字列を除外した形で保存される。
【００３８】
出力時メッセージログ生成処理では、メッセージログ生成手段３は、ログファイルデータテーブル８から、ログ選択情報に従ったメッセージログを選択する。メッセージログ生成手段３は、上述のようにメッセージログ定義部から、ログ選択情報等のように、メッセージログ生成時に規定された言語に基づいてプロパティ・ファイルを選定し、メッセージログ定義情報に、ログファイルデータテーブル８に保存された情報を当てはめて、メッセージログを生成する。例えば、ログファイルデータテーブル８に保存された情報「２００５／１２／２４  １５：５０：５０  ＪＳＴ  ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ=自動車」に、日本語のプロパティ・ファイルに定義されたメッセージログ定義情報である「ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ=サーバは  ％８＄ｓ  正常受領した」を適用し、「２００５／１２／２４  １５：５０：５０  ＪＳＴ  ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ  サーバは  自動車  正常受領した」というメッセージログを生成する。
【００３９】
メッセージログ保存手段４は、メッセージログ生成手段３によって生成されたメッセージログを、メッセージログ出力画面ｂに出力する。このようにして、メッセージログシステムは、入力された文字列等から、選択対象のメッセージログを出力する。
【００４０】
出力前メッセージログ生成処理は、メッセージログ出力の際に、メッセージログ生成処理を行う必要が無いため、出力時メッセージログ生成処理と比較して、メッセージログ出力時のコンピュータ装置に対する処理負荷が少ない分、迅速なメッセージログ出力処理が行えるという長所がある。一方で、ログファイルデータテーブル８の容量が大きくなるという短所がある。
【００４１】
出力時メッセージログ生成処理は、上述した出力前メッセージログ生成処理と比較して、ログファイルデータテーブル容量を相対的に少なくし、かつ、例えばログ選択情報等で言語を選択することにより、メッセージログ出力時にメッセージログを構成する言語を選択できるという長所がある。この長所は、コンピュータのＯＳ等のソフトウェアから離れて、自由にメッセージログ構成言語を選択できるため、日本語ＯＳで動くサーバを、英語しかわからないユーザと、日本語しかわからないユーザが共同して管理する場合、適宜、メッセージログを各ユーザが理解可能な言語で出力できるという効果等がある。
【００４２】
図２に、本発明に係るメッセージログシステムのメッセージログ生成手段３の処理の詳細を示す。図２では、外部処理９から、データ受領手段１がデータを受信し、その受信データをメッセージログ生成手段３に渡し、メッセージログ生成手段３が、メッセージログを生成する処理を示す。なお、上述の出力時メッセージログ生成処理を行う場合、外部処理９が送信する文字列等は、ログファイルデータテーブル８から取得したものであっても良い。
【００４３】
外部処理９の番号１は、文字列「自動車」がパラメータであるｐａｒａｍｅｔｅｒＡ［１］に代入されていることを示す。番号２は、文字列の受領処理プロセスの名称であるＷＯＲＤＧＥＴ、メッセージログ定義情報の識別コードであるＷＯＲＤＧＥＴＣＯＲＲＥＣＴ、そして上記のｐａｒａｍｅｔｅｒＡ［１］を引数として、ログファイルデータテーブル８にメッセージログを書き込むメソッド（なお、メソッドとは、プロセスやスレッドが行う具体的な処理部分を記述したものである。）を実行していることを示す。なお、このメソッドは、ｗｒｉｔｅＬｏｇという名称で示される。
【００４４】
外部処理９の番号３は、ＵＲＬ（ユニフォーム・リソース・ロケータ）「ｈｔｔｐ：／／ｗｗｗ．ａｂｃ．ｃｏｍ」を、パラメータであるｐａｒａｍｅｔｅｒＢ［１］に代入されることを示し、番号４は、ＵＲＬ「ｈｔｔｐ：／／ｗｗｗ．ｅｆｇ．ｃｏｍ」を、パラメータであるｐａｒａｍｅｔｅｒＢ［２］に代入されることを示す。番号５は、特定されたＵＲＬに記載されたＵＲＬリンクを追従する処理プロセスの名称であるＷＥＢＣＲＡＷＬＥＲ、メッセージログ定義情報の識別コードであるＩＧＮＯＲＥＤＤＥＤＬＩＮＫ、そして上記のｐａｒａｍｅｔｅｒＢ［１］及びｐａｒａｍｅｔｅｒＢ［２］を引数として、メッセージログへ書き込むメソッドであるｗｒｉｔｅＬｏｇを実行していることを示す。
【００４５】
メッセージログ生成手段３は、外部処理９の番号２で示された処理を実行するために、メッセージログ定義体７に保存されるメッセージログ定義情報を呼び出す。例えば、外部処理９が、日本語のメッセージログ出力を指示した場合等は、メッセージログ生成手段３は、メッセージログ定義体７の日本語プロパティファイルから番号１０１で示されるメッセージログ定義情報「ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ  ＝  ％１＄ｓ  を正常受領した」を取得し、変数「％１＄ｓ」に、受領文字列「自動車」を代入し、さらに、時間情報等を付加することで、日本語のメッセージログ「２００５／１２／２４  １５：５０：５０  ＷＯＲＤＧＥＴ−ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ  自動車  を正常受領した」を生成する。
【００４６】
外部処理９が、英語のメッセージログ出力を指示した場合等は、メッセージログ生成手段３は、メッセージログ定義体７の英語プロパティファイルから番号２０１で示されるメッセージログ定義情報「ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ  ＝  ％１＄ｓ  ｈａｓ  ｂｅｅｎ  ｒｅｃｅｉｖｅｄ  ｃｏｒｒｅｃｔｌｙ」を取得し、変数「％１＄ｓ」に、受領文字列「自動車」を代入し、さらに、時間情報等を付加することで、英語のメッセージログ「２００５／１２／２４  １５：５０：５０  ＷＯＲＤＧＥＴ−ＷＯＲＤＧＥＴＣＯＲＲＥＣＴ  自動車  ｈａｓ  ｂｅｅｎ  ｒｅｃｅｉｖｅｄ  ｃｏｒｒｅｃｔｌｙ」を生成する。
【００４７】
メッセージログ生成手段３は、外部処理９の番号５で示された処理を実行するために、メッセージログ定義体７に保存されるメッセージログ定義情報を呼び出す。例えば、外部処理９が、日本語のメッセージログ出力を指示した場合等は、メッセージログ生成手段３は、メッセージログ定義体７の日本語プロパティファイルから番号１０２で示されるメッセージログ定義情報「ＩＧＮＯＲＥＤＤＥＤＬＩＮＫ  ＝ＵＲＬ  ％１＄ｓ  からリンクされている  ％２＄ｓ  は存在しない」を取得し、変数「％１＄ｓ」に、受領文字列「ｈｔｔｐ：／／ｗｗｗ．ａｂｃ．ｃｏｍ」を代入し、変数「％２＄ｓ」に、受領文字列「ｈｔｔｐ：／／ｗｗｗ．ｅｆｇ．ｃｏｍ」を代入する。さらに、時間情報等を付加することで、日本語のメッセージログ「２００５／１２／２４  １５：５１：５０  ＷＥＢＣＲＡＷＥＲ−ＩＧＮＯＲＥＤＤＥＤＬＩＮＫ  ＵＲＬ  ｈｔｔｐ：／／ｗｗｗ．ａｂｃ．ｃｏｍ  からリンクされている  ｈｔｔｐ：／／ｗｗｗ．ｅｆｇ．ｃｏｍ  は存在しない」を生成する。
【００４８】
外部処理９が、英語のメッセージログ出力を指示した場合等は、メッセージログ生成手段３は、メッセージログ定義体７の英語プロパティファイルから番号２０２で示されるメッセージログ定義情報「ＩＧＮＯＲＥＤＤＥＤＬＩＮＫ  ＝ＵＲＬ  ％２＄ｓ  ｌｉｎｋｅｄ  ｆｒｏｍ  ％１＄ｓ  ｉｓ  ｍｉｓｓｉｎｇ」を取得し、変数「％１＄ｓ」に、受領文字列「ｈｔｔｐ：／／ｗｗｗ．ａｂｃ．ｃｏｍ」を代入し、変数「％２＄ｓ」に、受領文字列「ｈｔｔｐ：／／ｗｗｗ．ｅｆｇ．ｃｏｍ」を代入する。さらに、時間情報等を付加することで、日本語のメッセージログ「２００５／１２／２４  １５：５１：５０  ＷＥＢＣＲＡＷＥＲ−ＩＧＮＯＲＥＤＤＥＤＬＩＮＫ  ＵＲＬ  ｈｔｔｐ：／／ｗｗｗ．ｅｆｇ．ｃｏｍ  ｌｉｎｋｅｄ  ｆｒｏｍ  ｈｔｔｐ：／／ｗｗｗ．ａｂｃ．ｃｏｍ  ｉｓ  ｍｉｓｓｉｎｇ」を生成する。
【００４９】
このように、日本語と英語のメッセージログ定義情報は、変数「％１＄ｓ」と変数「％２＄ｓ」の位置順序が逆である。このように文法の相違により、変数の位置を変更する必要が場合、本発明に係るメッセージログ定義部のメッセージログ定義情報のように、メッセージログ内に代入される変数を入れ込んでメッセージログ定義情報を構成することにより、容易にメッセージログを生成できる。
【００５０】
図２に示すメッセージログ生成手段３は、図１に示すような出力前メッセージログ生成処理の場合は、生成したメッセージログを、メッセージログ保存手段４に送信して、ログファイルデータテーブル８に保存しても良いし、出力時メッセージログ生成処理の場合は、メッセージログ出力手段５に送信して、メッセージログ出力画面ｃに出力しても良い。
【００５１】
図３に、本発明に係るメッセージログシステムのハードウェア構成例を示す図である。図１のメッセージログシステムは、例えば、図３に示すようなコンピュータ１０により実行される。コンピュータ１０は、必要な処理を実行するＣＰＵ１１、処理された結果を格納するメモリ１２（例えば、ＲＡＭ（Random Access Memory））、ディスプレイ１３、例えば、キーボードやマウスのような入力装置１４、ハードディスク１５等を備える。
【００５２】
メッセージログシステムを実行するプログラム（データ）は、記録媒体に保存され、ＣＤ／ＤＶＤドライブ１７等からローディングされ、もしくは、他のコンピュータ１９からネットワーク１６を介してダウンロードされ、ＣＰＵ１１の制御によって、コンピュータ１０のハードディスク１５に保存される。次に、プログラムを実行するために、ＣＰＵ１１の制御によって、メモリ１２に格納され、更に、ＣＰＵ１１の制御によってＣＰＵ１１に送られ、そこで、プログラムは、ＣＰＵ１１で実行および処理される。また、図１に示される、データ受領手段１、データ変換手段２、メッセージログ生成手段３、メッセージログ保存手段４、メッセージログ出力手段５が示す各処理は、ＣＰＵ１１で実行される。
【００５３】
最大情報定義部６、メッセージログ定義部７、及び、ログファイルデータテーブル８は、ハードディスク１５に保存される。また、処理速度向上する等の目的により、最大情報定義部６、及び、メッセージログ定義部７は、常にメモリ１２に格納されていても良い。
【００５４】
文字列入力画面ａ、ログ選択情報入力画面ｂ、メッセージログ出力画面ｂは、ディスプレイ１３又は、他のコンピュータ１９の画面に表示され、入力文字列やログ選択情報は入力装置１４によって入力される。
【００５５】
ＣＰＵ１１上で実行される文字列等変換処理は、ハードディスク１５や、メモリ１２に格納された最大情報定義部６から最大情報を取得して、上述した変換処理を実行する。
【００５６】
次に、ＣＰＵ１１上で実行されるメッセージログ生成処理は、ハードディスク１５や、メモリ１２に格納されたメッセージログ定義部７からメッセージログ定義情報を取得して、上述したメッセージ変換処理を実行する。
【００５７】
ＣＰＵ１１上で実行されるメッセージログ保存処理は、生成したメッセージログをハードディスク１５に保存されるログファイルデータテーブル８に保存する。
【００５８】
ＣＰＵ１１で実行されるメッセージログ出力処理は、ハードディスク１５上のログファイルデータテーブル８を検索し、ログ選択情報に従って、ハードディスク１５上にその結果を保存したり、ディスプレイ１３等に結果を表示したりする。
【００５９】
以上説明したように、本発明においては、データ変換手段２により不正入力によるメッセージログ処理負荷増加を防ぎ、メッセージログ定義部７と、メッセージログ生成手段３により、多言語対応のメッセージログを生成するメッセージログシステムの提供を可能にしている。また、メッセージログ機能は、コンピュータで実行される他の処理に付随して必要となる機能であり、本発明による処理負荷の低減、ならびに、多言語対応のメッセージログ生成は、コンピュータに関連する多くのユーザにとって極めて有益である。
【図面の簡単な説明】
【００６０】
【図１】本発明に係るメッセージログシステムの機能構成を説明するフロー図である。
【図２】本発明に係るメッセージログシステムのメッセージログ生成手段３の処理の詳細を示す図である。
【図３】本発明に係るメッセージログシステムのハードウェア構成を示す図である。
【符号の説明】
【００６１】
１    データ受領手段
２    データ変換手段
３    メッセージログ生成手段
４    メッセージログ保存手段
５    メッセージログ出力手段
６    最大情報定義部
７    メッセージログ定義部
８    ログファイルデータテーブル
１０    コンピュータ
１３    ディスプレイ
１４    キーボード
１５    ハードディスク
１６    回線
１７    ＣＤ／ＤＶＤドライブ
１９    他のコンピュータ
【図１】
2007200183.tif 000003
【図２】
2007200183.tif 000004
【図３】
2007200183.tif 000005