(57)【要約】【課題】アプリケーションからのログデータの出力条件の設定を簡単に行うことができるロギング装置を提供する。【解決手段】ロギング装置１０は、出力判断部１１、出力実行部１２を含んでおり、アプリケーション２０からのログ要求２０１を受けて、表示装置３０あるいは外部記憶装置４０にログデータ１０２を出力する。出力判断部１１は、ログデータの種別に対応した出力設定情報、及びログデータの種別に依存しない共通の出力設定情報を参照し、ログ要求のログデータの種別に応じて、ログデータを出力の要否及び出力先を判断する。そして出力実行部１２は、出力判断部１１からの指示に基づき、表示装置３０又は外部記憶装置４０に、アプリケーションからのログデータを出力する。【選択図】図１
2004046717.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションからのログ要求に基づくログデータを出力するロギング装置であって、
予め、ログデータの種別に対応した出力設定情報、及びログデータの種別に依存しない共通の出力設定情報を記憶した出力設定情報記憶部と、
前記アプリケーションからのログデータの出力を制御する出力制御部とを有し、
前記出力制御部は、前記ログ要求における前記種別に応じて、前記出力設定情報記憶部を参照し、前記ログ要求に基づくログデータを出力するものであるロギング装置。
【請求項２】
請求項１記載のロギング装置であって、
前記出力設定情報は、前記ログデータの出力の要否を示す出力要否情報と前記ログデータの出力先を示す出力先情報を含むものであるロギング装置。
【請求項３】
請求項２記載のロギング装置であって、
前記出力先情報は、前記ログデータが記憶されるファイル名の指定、及び表示手段の指定を含むものであるロギング装置。
【請求項４】
請求項１ないし３のいずれか１項記載のロギング装置であって、前記出力設定部は、前記ログ要求から前記種別を特定できないときは、前記共通の出力設定情報を利用して前記ログデータを出力するものであるロギング装置。
【請求項５】
請求項１ないし４のいずれか１項記載のロギング装置であって、前記出力制御部は、前記ログ要求における前記種別に対応する出力設定情報を、前記出力設定情報記憶部から取得できないときは、前記共通の出力設定情報を利用して前記ログデータを出力するものであるロギング装置。
【請求項６】
請求項１ないし５のいずれか１項記載のロギング装置であって、さらに、ログデータの出力処理自体の要否を示すロギング要否設定情報を記憶するロギング要否設定情報記憶部を有し、
前記出力制御部は、前記ロギング要否設定情報が否のときは、前記ログ要求に基づくログデータの出力をすべて停止するものであるロギング装置。
【請求項７】
アプリケーションのログデータを出力するロギング方法であって、
アプリケーションからのログ要求を受信するログ要求受信ステップと、
前記ログ要求受信ステップで受信した前記ログ要求における、出力すべきログデータの種別を把握する種別把握ステップと、
前記把握した種別に対応した出力設定情報を取得する出力設定情報取得ステップと、
前記出力設定情報取得ステップで取得した前記出力設定情報に基づいて、前記ログ要求に基づくログデータの出力を制御するログデータ出力ステップとを含み、
前記出力設定情報取得ステップは、前記ログデータの種別に対応した出力設定情報を取得できない場合には、ログデータの種別に依存しない共通の出力設定情報を、前記ログ要求に対応する出力設定情報とするものであるロギング方法。
【請求項８】
請求項７記載のロギング方法であって、
前記出力設定情報は、前記ログデータの出力の要否を示す出力要否情報と前記ログデータの出力先を示す出力先情報を含むものであるロギング方法。
【請求項９】
請求項８記載のロギング方法であって、
前記出力先情報は、前記ログデータが記憶されるファイル名の指定、及び表示手段の指定を含むものであるロギング方法。
【請求項１０】
コンピュータによって、請求項１ないし６のいずれか１項記載のロギング装置を実現するためのロギングプログラム。
【請求項１１】
コンピュータによって、請求項７ないし９のいずれか１項記載のロギング方法における各ステップを実行させるためのロギングプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アプリケーションプログラムの実行中のログデータを出力するロギング装置、ロギング方法、及びロギングプログラムに関する。
【０００２】
【従来の技術】
アプリケーションの開発中や運用時には、内部の動作状況の確認を必要とする場合がある。内部の動作状況を確認する方法として、デバッガによるトレースを行う方法、プログラムの処理状況を示すログデータを出力する方法がある。このうち、ログデータの出力は、運用時等、デバッガでプログラムの実行を停止できない場合や、不定期現象の解析をする場合に有効である。
【０００３】
このような課題を解決する他の手段として、特開２００１−３１８８０９公報に記載されたロギング装置がある。上記ロギング装置は、アプリケーションがログデータを出力するときに、ログデータに、区分、データ長、日時、プロセス名、プログラム名の１つ以上を、キー属性として付与し、ロギング装置は、付与されたキー属性と管理テーブルの内容に応じてアプリケーションからのログデータの出力を制御するものである。管理テーブルには、キー属性に対応して、ログデータの出力の要否を示す情報、及び出力先ファイルに関する情報が記憶され、適宜設定可能となっているため、必要なログデータのみを指定したファイルに出力することができる。
【０００４】
しかし、上記公報に記載されたロギング装置は、ロギング処理に先立って、アプリケーションからのログデータに付加される属性キーに対応する情報を情報管理テーブルに設定しておく必要があり、この設定作業は必ずしも簡単でない。すなわち、アプリケーションの運用時に、そのアプリケーションからのログデータに付加される属性キーを確認し、それぞれについて、ログデータの出力の要否情報と、出力する際の出力先情報を設定するのは、簡単でない。
【０００５】
また、ログデータの出力の要否及び出力先を属性キーに対応して詳細に設定するのは、エラー発生時等の特別な場合であって、通常運用時は、最低限のログデータを、１つのファイルあるいは少数のファイルに、まとめて出力することで充分である。このような運用時にも、それぞれの属性キーに対応して管理テーブルを作成するのは、煩わしいものである。
【０００６】
さらに、運用するアプリケーションによっては、ログデータに属性キーが付加されていないものもあり、そのようなアプリケーションのログデータを取得するためには、別なロギング装置を必要とする。
【０００７】
【発明が解決しようとする課題】
本発明は、上記事情に鑑みなされたもので、アプリケーションからのログデータの出力条件の設定を簡単に行うことができるロギング装置、ロギング方法、及びロギングプログラムを提供することを目的とする。また、アプリケーションのログデータ処理機能に応じたロギングを可能とするロギング装置、ロギング方法、及びロギングプログラムを提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明のロギング装置は、アプリケーションからのログ要求に基づくログデータを出力するものであって、ログデータの種別に対応した出力設定情報、及びログデータの種別に依存しない共通の出力設定情報を記憶した出力設定情報記憶部と、前記アプリケーションからのログデータの出力を制御する出力制御部とを有し、前記出力制御部は、前記ログ要求における前記種別に応じて、前記出力設定情報記憶部を参照し、前記ログ要求に基づくログデータを出力するものである。したがって、アプリケーションからのログデータの出力条件の設定を簡単に行うことができる。
【０００９】
本発明のロギング装置における前記出力設定情報は、前記ログデータの出力の要否を示す出力要否情報と前記ログデータの出力先を示す出力先情報を含むものである。こうすると、ログの種別に応じて異なる出力先を設定できる。
【００１０】
本発明のロギング装置における前記出力先情報は、前記ログデータが記憶されるファイル名の指定、及び表示手段の指定を含むものである。こうすると、ログの種別に応じて異なる出力先をさらに詳細に設定できる。
【００１１】
本発明のロギング装置における前記出力設定部は、前記ログ要求から前記種別を特定できないときは、前記共通の出力設定情報を利用して前記ログデータを出力するものである。こうすると、ログの種別情報を出力できないアプリケーションのログの出力も可能となる。
【００１２】
本発明のロギング装置における前記出力制御部は、前記ログ要求における前記種別に対応する出力設定情報を、前記出力設定情報記憶部から取得できないときは、前記共通の出力設定情報を利用して前記ログデータを出力するものである。こうすると、ログの出力設定情報の設定を必要なもののみ行うことで、運用が可能となる。
【００１３】
本発明のロギング装置は、さらに、ログデータの出力処理自体の要否を示すロギング要否設定情報を記憶するロギング要否設定情報記憶部を有し、前記出力制御部は、前記ロギング要否設定情報が否のときは、前記ログ要求に基づくログデータの出力をすべて停止するものである。
【００１４】
本発明のロギング方法は、アプリケーションのログデータを出力するものであって、アプリケーションからのログ要求を受信するログ要求受信ステップと、　前記ログ要求受信ステップで受信した前記ログ要求における、出力すべきログデータの種別を把握する種別把握ステップと、前記把握した種別に対応した出力設定情報を取得する出力設定情報取得ステップと、前記出力設定情報取得ステップで取得した前記出力設定情報に基づいて、前記ログ要求に基づくログデータの出力を制御するログデータ出力ステップとを含み、前記出力設定情報取得ステップは、前記ログデータの種別に対応した出力設定情報を取得できない場合には、ログデータの種別に依存しない共通の出力設定情報を、前記ログ要求に対応する出力設定情報とするものである。
【００１５】
本発明のロギング方法における前記出力設定情報は、前記ログデータの出力の要否を示す出力要否情報と前記ログデータの出力先を示す出力先情報を含むものである。
【００１６】
本発明のロギング方法における前記出力先情報は、前記ログデータが記憶されるファイル名の指定、及び表示手段の指定を含むものである。
【００１７】
本発明のプログラムは、上記したロギング装置をコンピュータによって、実現するためのものである
【００１８】
本発明のプログラムは、上記したロギング方法における各ステップを、コンピュータによって実行させるためのものである。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を用いて説明する。図１は、本発明の実施の形態のロギング装置の概略構成を示す図である。図１のロギング装置１０は、出力判断部１１、出力実行部１２を含んでおり、アプリケーション２０からのログ要求２０１を受けて、表示装置３０あるいは外部記憶装置４０にログデータ１０２を出力するものである。
【００２０】
アプリケーション２０は、チェックポイント等において、動作状況を示すログデータを出力するものであり、ロギング装置１０に、ログデータの種別情報を付加したログ要求２０１を送信する。種別情報として、エラー情報、デバッグ情報等を用いることができるが、任意のものが設定可能である。
【００２１】
ロギング装置１０の出力判断部１１は、ログ要求２０１を受信して、ログデータの出力の要否を判断するものである。すなわち、ロギング要否フラグ１３の状態、ログ要求２０１に含まれるログデータの種別情報の内容と出力設定情報１４の設定状態に基づいて、ログ要求２０１に含まれるログデータの出力の要否情報、出力先ＩＤを取得する。そして、出力の必要がある場合は、受信したログデータと出力先ＩＤを出力実行部１２に送る。出力が不要である場合は、受信したログデータを破棄する。
【００２２】
出力実行部１２は、出力制御部１１から送られる出力先ＩＤに基づいて出力設定情報１４を参照して出力先詳細情報を取得し、取得した出力先にログデータ１０１を送る。出力実行部１２は、出力制御部１１と共に出力制御部を構成する。
【００２３】
ログデータの出力先としては、表示装置３０と外部記憶装置４０が設定可能であり、外部記憶相値４０に出力する場合は、記憶すべきログファイル４１が指定される。
【００２４】
ロギング要否フラグ１３は、ログデータの出力処理自体の要否を示す情報であり、このフラグがオンのときは、アプリケーションからのログ要求があっても、ログデータの出力をしないようにするためのものである。出力設定情報１４は、ログデータの出力の要否を示す出力要否情報とログデータの出力先を示す出力先情報を示すもので、ログデータの種別に対応した出力設定情報と、ログデータの種別に依存しない共通の出力設定情報を含む。
【００２５】
図２及び図３に、出力設定情報の一例を示す。図２は、ログデータの種別を示す種別キーに出力要否フラグと出力先ＩＤを対応させた出力設定テーブル１４１の一例であり、図３は、出力先ＩＤにファイル名、ファイル形式等を対応させた出力先詳細テーブル１４２の一例である。
【００２６】
図２の例では、ログデータの種別に依存しない共通の出力設定情報に対応させた種別キー「０」と、任意に設定可能な種別キー「１」〜「５」とが、登録されている。種別キー「０」自体は、出力先ＩＤ「Ａ」（「Ａ」は、出力先が表示装置を示す。）と共にデフォルトで登録され、出力要否フラグ及び他の出力先ＩＤは、任意に設定可能である。種別キー「０」以外の種別キーについては、出力要否フラグ及び出力先ＩＤの登録が任意である。例えば、図２の例では、種別キー「４」のように、出力先ＩＤを「未設定」（ブランクは未設定を示す。）であり、種別キー「５」は、出力要否フラグと出力先ＩＤが共に「未設定」である。なお、図２の例では、出力先の数にかかわらず出力要否フラグを種別キーに対応させて設定しているが、種別キー毎出力先毎に出力要否フラグを設定するものとすることも可能である。
【００２７】
出力先詳細テーブル１４２は、出力先として外部記憶装置４０を設定する（「Ｂｎ」は、出力先が外部記憶装置を示す。）場合のファイルに関する情報を、出力先ＩＤに対応させて記憶する。図３の例では、ファイルに関する情報として、「ファイル名」（単に、ファイル名だけでなく、パスも合わせて記憶してもよい。）、「ファイル形式」（「０」は追記型ファイル、「１」はリングバッファ型ファイルを示す。）、リングバッファ型ファイルに出力する場合の、ファイル桁数及びファイル行数が設定される。
【００２８】
図２及び図３に示されるような出力設定情報１４が設定され、ロギング要否フラグ１３が「オン」に設定されている場合のロギング処理の一例を説明する。例えば、アプリケーションから、種別キー「１」をログデータのログ要求があると、ログ判断部１１は、出力設定テーブル１４１を参照して、ログデータに出力先ＩＤ「Ｂ１」を付加して出力実行部１２に送る。出力実行部１２は、出力先テーブル１４２を参照して外部記憶装置４０のファイル名「ｌｏｇｆｉｌｅ１．ｔｘｔ」にログデータを記憶する。
【００２９】
以上説明したように、出力設定情報１４は、ロギング要否フラグ１３がオンの場合にログ要求に基づくログデータを出力すべきかどうか、出力する場合どの出力先に出力するかを設定するものであるが、図２に示すように、すべての項目を完全に登録しなくてもよい。未設定の場合は、ログデータの種別に依存しない共通の出力設定情報に対応させた種別キー「０」に対応して登録された情報を利用して判断する。
【００３０】
図１のロギング装置１０において、ロギング要否フラグの設定及び出力設定情報の設定は、アプリケーション２０からの設定指示２０２に基づき、設定情報管理部１５が行う。設定処理は任意の時点で任意の方法（オペレータの設定、アプリケーション実行時の動的設定等）で行うことが可能である。また、設定項目を個別に設定することも、予め複数の設定項目を作成した設定ファイル４２を読み込んでまとめて設定することも可能である。
【００３１】
なお、所定のプログラムによってロギング装置を実現するためのコンピュータは、アプリケーションを実行するコンピュータと同じものでも異なるものでもよい。また、ログデータを出力する表示装置及び外部記憶装置も、アプリケーション用のものと兼用しても、別のものを用いてもよい。
【００３２】
次に、図１のロギング装置のロギング動作を、図４の概略フロー図を用いて説明する。アプリケーション２０からロギング要求２０１を受信すると、まず、ロギング要否フラグ１３を参照し（ステップＳ４０１）、ロギングが必要化どうかを判断する（ステップＳ４０２）。そして、ロギング要否フラグ１３がオフの場合は、ログ要求２０１に含まれるログデータを破棄して終了する。
【００３３】
ロギング要否フラグ１３がオフの場合は、出力設定情報１４を参照し（ステップＳ４０３）、ログ要求に種別キーが含まれているかどうかを判断する（ステップＳ４０４）。種別キーが含まれている場合は、その種別キーが出力設定テーブルに登録されているかどうかを判断し（ステップＳ４０５）、登録されている場合は、出力要否フラグを参照し（ステップＳ４０６）、オフの場合は、ログデータを破棄して終了する。なお、出力要否フラグが未設定の場合は、オンと判断する。
【００３４】
出力要否フラグがオンの場合は、種別キーに対応する出力先が設定されているか（出力先ＩＤが登録されているか）を判断し（ステップＳ４０７）、設定されている場合は、設定出力先にログ要求２０１に基づくログデータを出力する（Ｓ４０８）。種別キーに対応する出力先が設定されていない場合は、共通出力の出力先（種別キー「０」の出力先）が設定されているかを判断し（ステップＳ４０９）、設定されている場合は、設定された出力先にログ要求２０１に基づくログデータを出力する（Ｓ４１０）。種別キー「０」の出力先が設定されていない場合は、表示装置３０にログ要求２０１に基づくログデータを出力する（Ｓ４１１）。
【００３５】
ステップＳ４０４で、ログ要求に種別キーが含まれていないと判断された場合、及びステップＳ４０５で、ログ要求に付加された種別キーが出力設定テーブルに登録されていない場合は、ステップＳ４０９に移行し、共通の出力設定情報に基づいて出力制御を行う。このような制御を行うと、出力設定情報が完全に設定されていない場合でも共通のデフォルト出力が行われることになり、出力設定情報の設定負担を軽減することができる。なお、この例では、種別キー「０」の出力要否フラグのオン／オフにかかわらずでも一律にデフォルト出力するものとしたが、種別キー「０」の出力要否フラグがオンの場合のみデフォルト出力するようにしてもよい。その場合は、ステップＳ４０９の前に、種別キー「０」の出力要否フラグを判断するステップを付加する。
【００３６】
図１の説明から明らかなように、図４のフローは、ステップＳ４０８，Ｓ４１０、及びＳ４１１は、出力実行部１２で行ない、他のステップは出力判断部１１で行う。
【００３７】
続いて、図１のロギング装置の設定動作を、図５の概略フロー図を用いて説明する。ステップＳ５０１では、ログデータの出力処理自体の要否の設定を判断し、要の場合はロギング要否フラグをオンに設定し（ステップＳ５０２）、不要の場合は、ロギング要否フラグをオフに設定する（ステップＳ５０３）。
【００３８】
ステップＳ５０４では、種別キー毎の設定を判断し、種別キー毎の設定でない（共通の出力設定である）場合は、共通出力先の設定かどうかを判断する（ステップＳ５０５）。そして、共通出力先の設定の場合は、出力先情報（ファイル名、ファイル形式等）を設定する（ステップＳ５０６）。なお、この例では、共通の出力設定情報の出力要否フラグを常にオンとして扱っているが、オフ設定可能な場合は、ステップＳ５０５の前に出力要否フラグの設定を判断するステップを付加する。
【００３９】
ステップＳ５０４で、種別キー毎の設定と判断された場合は、種別キー及び出力要否の設定を行ない（ステップＳ５０７）、さらにステップＳ５０８で出力先の設定を判断し、出力先設定の場合は、出力先情報を設定する（ステップＳ５０９）。
【００４０】
ステップＳ５０７においては、まず、出力設定テーブル１４１から設定（変更、削除を含む。）したい種別キーを検索する。種別キーが出力設定テーブル１４１に登録済の場合は、その要否フラグの設定、出力先の設定を行う。種別キーが登録されていない場合は、新規に出力設定テーブル１４１に追加する。新規追加の場合は、一律出力要否フラグをオンに設定するようにしてもよい。ステップＳ５０９においては、出力先詳細テーブル１４２から設定したい出力先（ファイル名等）を検索する。出力先が出力先詳細テーブル１４２に登録済の場合は、その出力先ＩＤを利用して出力設定テーブル１４１を設定する。また、出力先登録されていない場合は、新規に出力先ＩＤを作成して出力先詳細テーブル１４２に追加し、作成した出力先ＩＤを利用して出力設定テーブル１４１を更新する。
【００４１】
このように設定した出力設定情報は、アプリケーションの状況毎にまとめて設定ファイル４２として外部記憶装置４０に記憶しておくと、同様の設定を行うときの設定動作が簡単になる。
【００４２】
【発明の効果】
以上の説明から明らかなように、本発明によれば、アプリケーションからのログデータの出力条件の設定を簡単に行うことができる。また、アプリケーションのログデータ処理機能に応じたロギングが可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態のロギング装置の概略構成を示す図
【図２】本発明の実施の形態の出力設定テーブルの一例を示す図
【図３】本発明の実施の形態の出力先詳細テーブルの一例を示す図
【図４】本発明の実施の形態のロギング装置のロギング動作の概略フローを示す図
【図５】本発明の実施の形態のロギング装置の設定動作の概略フローを示す図
【符号の説明】
１０・・・ロギング装置
１１・・・出力判断部
１２・・・出力実行部
１３・・・ロギング要否設定フラグ
１４・・・出力設定情報
１４１・・・出力設定テーブル
１４２・・・出力先詳細テーブル
１５・・・設定情報管理部
２０・・・アプリケーション
３０・・・表示装置
４０・・・外部記憶装置
４１・・・ログファイル
４２・・・設定ファイル
【図１】
2004046717.tif 000003
【図２】
2004046717.tif 000004
【図３】
2004046717.tif 000005
【図４】
2004046717.tif 000006
【図５】
2004046717.tif 000007