(57)【要約】【課題】ログデータの属性に応じて動的にログデータの出力設定を変更し、効率的にログデータを記録する。【解決手段】ログ出力装置１０は、一定の出力レベル以上のログデータのみをデータ記憶装置３１０への出力対象とする出力設定を初期設定とするとともに、出力設定を変更する出力レベルを変更条件として規定し、ＡＰＰ２０から入力したログデータの出力レベルを確認し、変更条件として規定されている出力レベル以上である場合に、他の出力レベルを出力対象とする出力設定に変更し、当該ログデータをデータ記憶装置３１０に出力するとともに、当該ログデータの前後のログデータが新たな出力設定の出力レベルに合致する場合に前後のログデータもデータ記憶装置３１０に出力する。【選択図】図１
2011013793.tif 000002
【特許請求の範囲】
【請求項１】
データを順次入力するデータ入力部と、
データ記憶装置に接続され、指定された出力設定に従って、前記データ入力部により入力されたデータを前記データ記憶装置へ出力するデータ出力部と、
前記データ入力部により入力されたデータが出力設定の変更条件に合致するか否かを判断し、入力されたデータが前記変更条件に合致する場合に、前記データ出力部の出力設定を変更する出力設定変更部とを有することを特徴とするデータ処理装置。
【請求項２】
前記データ入力部は、
複数レベルの優先度のうちのいずれかのレベルの優先度が指定されているデータを順次入力し、
前記出力設定変更部は、
前記変更条件に合致する条件合致データが入力される前は、第１のレベル以上の優先度が指定されているデータの出力を指示する第１の出力設定を指定し、
前記条件合致データが入力された際に、第１のレベルと異なる第２のレベル以上の優先度が指定されているデータの出力を指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、前記データ入力部により入力されたデータのうち第１のレベル以上の優先度が指定されているデータを選別して前記データ記憶装置へ出力し、
第２の出力設定が指定されている場合は、前記データ入力部により入力されたデータのうち第２のレベル以上の優先度が指定されているデータを選別して前記データ記憶装置へ出力することを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記データ処理装置は、更に、
前記データ入力部により入力されたデータであって前記データ出力部による出力が未実施のデータを格納するデータ格納部を有し、
前記出力設定変更部は、
前記条件合致データが入力された際に、第１のレベルよりも低いレベルの第２のレベルを指示する第２の出力設定に変更し、
前記データ出力部は、
前記出力設定変更部により出力設定が第２の出力設定に変更された際に前記条件合致データの入力に先行して入力され前記データ格納部に格納されている格納データの優先度が第２のレベル以上である場合に、前記格納データを前記データ記憶装置へ出力することを特徴とする請求項２に記載のデータ処理装置。
【請求項４】
前記データ出力部は、
前記条件合致データの優先度が第２のレベル以上である場合に、前記格納データを出力した後に前記条件合致データを前記データ記憶装置へ出力することを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記出力設定変更部は、
第２の出力設定への変更後に優先度が第２のレベル以上のデータが所定個数分前記データ出力部から出力された際及び第２の出力設定への変更から所定時間が経過した際の少なくともいずれかにおいて、出力設定を第１の出力設定に戻すことを特徴とする請求項２〜４のいずれかに記載のデータ処理装置。
【請求項６】
前記データ出力部は、
所定のデータ容量のファイルを単位にしてデータを記憶するデータ記憶装置に接続され、ファイルの空き容量が無くなった場合に、古いデータから順に上書きして新しいデータを記憶させる制御を行いながら前記データ記憶装置にデータを出力し、
前記出力設定変更部は、
前記変更条件に合致する条件合致データが入力される前は、ファイルの個数として第１の値を指示する第１の出力設定を指定し、
前記条件合致データが入力された際に、ファイルの個数として第１の値と異なる値の第２の値を指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、第１の値に相当する個数のファイルに基づいて前記データ記憶装置へのデータ出力を行い、第１の値に相当する個数のファイルに空き容量が無くなった場合に、古いデータから順に上書きして新しいデータを記憶させる制御を行い、
第２の出力設定が指定されている場合は、第２の値に相当する個数のファイルに基づいて前記データ記憶装置へのデータ出力を行い、第２の値に相当する個数のファイルに空き容量が無くなった場合に、古いデータから順に上書きして新しいデータを記憶させる制御を行うことを特徴とする請求項１〜５のいずれかに記載のデータ処理装置。
【請求項７】
前記出力設定変更部は、
前記条件合致データが入力された際に、第１の値よりも値が多い第２の値を指示する第２の出力設定に変更することを特徴とする請求項６に記載のデータ処理装置。
【請求項８】
前記データ出力部は、
それぞれに少なくとも１つのファイルが含まれる複数個のファイル系統を設けてデータを記憶するデータ記憶装置に接続され、
前記出力設定変更部は、
前記条件合致データが入力される前は、第１のファイル系統をデータ出力先として指示する第１の出力設定を指定し、
前記条件合致データが入力された際に、第１のファイル系統と異なる第２のファイル系統をデータ出力先として指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、第１のファイル系統を出力先にして前記データ記憶装置へのデータ出力を行い、
第２の出力設定が指定されている場合は、第２のファイル系統を出力先にして前記データ記憶装置へのデータ出力を行うことを特徴とする請求項６又は７に記載のデータ処理装置。
【請求項９】
前記出力設定変更部は、
前記変更条件に合致する条件合致データが入力される前は、暗号化処理及び認証値生成処理のいずれも行わないことを指示する第１の出力設定を指定し、
前記条件合致データが入力された際に、暗号化処理及び認証値生成処理の少なくともいずれかを行うことを指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、暗号化処理及び認証値生成処理のいずれも行われていないデータを前記データ記憶装置へ出力し、
第２の出力設定が指定されている場合は、暗号化処理及び認証値生成処理の少なくともいずれかが行われたデータを前記データ記憶装置へ出力することを特徴とする請求項１〜８のいずれかに記載のデータ処理装置。
【請求項１０】
前記データ入力部は、
複数レベルの優先度のうちのいずれかのレベルの優先度が指定されているデータを順次入力し、
前記出力設定変更部は、
特定レベル以上の優先度が指定されていることを変更条件とし、
前記特定レベル以上の優先度が指定されているデータが入力された際に出力設定を変更することを特徴とする請求項１〜９のいずれかに記載のデータ処理装置。
【請求項１１】
前記出力設定変更部は、
特定のソースからのデータであることを変更条件とし、
前記特定のソースからのデータが入力された際に出力設定を変更すること特徴とする請求項１〜１０のいずれかに記載のデータ処理装置。
【請求項１２】
前記データ入力部は、
複数レベルの優先度のうちのいずれかのレベルの優先度が指定されているデータを順次入力し、
前記出力設定変更部は、
前記特定のソースからのデータが入力される前は、第１のレベル以上の優先度が指定されているデータの出力を指示する第１の出力設定を指定し、
前記特定のソースからのデータが入力された際に、前記特定のソースからのデータについては第１のレベルと異なる第２のレベル以上の優先度が指定されているデータの出力を指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、前記データ入力部により入力されたデータのうち第１のレベル以上の優先度が指定されているデータを選別して前記データ記憶装置へ出力し、
第２の出力設定が指定されている場合は、前記特定のソースからのデータについては、第２のレベル以上の優先度が指定されているデータを選別して前記データ記憶装置へ出力することを特徴とする請求項１１に記載のデータ処理装置。
【請求項１３】
前記出力設定変更部は、
前記特定のソースからのデータが入力される前は、暗号化処理及び認証値生成処理のいずれも行わないことを指示する第１の出力設定を指定し、
前記特定のソースからのデータが入力された際に、前記特定のソースからのデータについては暗号化処理及び認証値生成処理の少なくともいずれかを行うことを指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、暗号化処理及び認証値生成処理のいずれも行われていないデータを前記データ記憶装置へ出力し、
第２の出力設定が指定されている場合は、前記特定のソースからのデータについては、暗号化処理及び認証値生成処理の少なくともいずれかが行われたデータを前記データ記憶装置へ出力することを特徴とする請求項１１又は１２に記載のデータ処理装置。
【請求項１４】
前記出力設定変更部は、
データに特定の識別子が含まれていることを変更条件とし、
前記特定の識別子が含まれているデータが入力された際に出力設定を変更することを特徴とする請求項１〜１３のいずれかに記載のデータ処理装置。
【請求項１５】
前記データ入力部は、
複数レベルの優先度のうちのいずれかのレベルの優先度が指定されているデータを順次入力し、
前記出力設定変更部は、
前記特定の識別子が含まれているデータが入力される前は、第１のレベル以上の優先度が指定されているデータの出力を指示する第１の出力設定を指定し、
前記特定の識別子が含まれているデータが入力された際に、前記特定の識別子が含まれているデータについては、第１のレベルと異なる第２のレベル以上の優先度が指定されているデータの出力を指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、前記データ入力部により入力されたデータのうち第１のレベル以上の優先度が指定されているデータを選別して前記データ記憶装置へ出力し、
第２の出力設定が指定されている場合は、前記特定の識別子が含まれているデータについては、第２のレベル以上の優先度が指定されているデータを選別して前記データ記憶装置へ出力することを特徴とする請求項１４に記載のデータ処理装置。
【請求項１６】
前記出力設定変更部は、
前記特定の識別子が含まれているデータが入力される前は、暗号化処理及び認証値生成処理のいずれも行わないことを指示する第１の出力設定を指定し、
前記特定の識別子が含まれているデータが入力された際に、前記特定の識別子が含まれているデータに暗号化処理及び認証値生成処理の少なくともいずれかを行うことを指示する第２の出力設定に変更し、
前記データ出力部は、
第１の出力設定が指定されている場合は、暗号化処理及び認証値生成処理のいずれも行われていないデータを前記データ記憶装置へ出力し、
第２の出力設定が指定されている場合は、前記特定の識別子が含まれているデータについては、暗号化処理及び認証値生成処理の少なくともいずれかが行われたデータを前記データ記憶装置へ出力することを特徴とする請求項１４又は１５に記載のデータ処理装置。
【請求項１７】
前記出力設定変更部は、
前記データ入力部により入力されるデータの傾向において特定の傾向が観測されることを変更条件とし、
特定の傾向が観測された際に出力設定を変更することを特徴とする請求項１〜１６のいずれかに記載のデータ処理装置。
【請求項１８】
前記データ処理装置は、更に、
前記データ処理装置に含まれるハードウェアの状態を監視する状態監視部を有し、
前記出力設定変更部は、
前記状態監視部がハードウェアの特定の状態を検知したことを変更条件とし、
前記状態監視部がハードウェアの特定の状態を検知した場合に出力設定を変更することを特徴とする請求項１〜１７のいずれかに記載のデータ処理装置。
【請求項１９】
前記データ入力部は、
ログデータを順次入力することを特徴とする請求項１〜１８のいずれかに記載のデータ処理装置。
【請求項２０】
データ記憶装置に接続されているコンピュータに、
データを順次入力するデータ入力処理と、
指定された出力設定に従って、前記データ入力処理により入力されたデータを前記データ記憶装置へ出力するデータ出力処理と、
前記データ入力処理により入力されたデータが出力設定の変更条件に合致するか否かを判断し、入力されたデータが前記変更条件に合致する場合に、前記データ出力処理の出力設定を変更する出力設定変更処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、システムの障害発生時の解析や、内部統制に利用されるログの出力方式に関し、特に、ログの出力設定を動的に変更するシステムに関する。
【背景技術】
【０００２】
従来のログ出力方式では、ログの出力先および世代の指定、レベル指定（最低〜最高）、フォーマットの指定などを行うことが可能であり、出力先に関しては、ディスク残容量を監視し閾値を下回った場合に出力先を切り替えるといった仕組みがある（例えば、特許文献１）。
【０００３】
また、発生するエラー情報を分類し、各エラーの発生回数を閾値で持って管理し、条件に合致する場合には、通報などのアクションを実行するといった仕組みがある（例えば、特許文献２）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−３４４１６号公報
【特許文献２】特開平０７−２６２０５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のログ管理方式においては、予め定めた容量のファイル、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）領域をログ出力用に使いまわすため、実際にシステム障害が発生した場合に、障害発生時からの時間経過が大きいときに、障害時の情報が、新しいログデータに上書きされて消えているといった課題がある。
また、ログの出力レベルとして全てのログデータをＨＤＤに出力する設定にすると、ファイルへの書き込み処理などの時間がシステム性能に影響を及ぼすという課題がある。
一方で、最重要のログデータのみをＨＤＤに出力する設定にすると、障害発生した際に、最重要のログデータ以外のログデータが解析に必要であっても、最重要のログデータしか残っていないため、解析が困難であるという課題がある。
例えば、最重要のログデータしか残っていないため、全ログデータを用いて発生事象を再現することができないという課題がある。
【０００６】
本発明は、上記のような課題を解決することを主な目的の一つとしており、データの属性に応じて動的にデータの出力設定を変更し、効率的にデータを記録することを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るデータ処理装置は、
データを順次入力するデータ入力部と、
データ記憶装置に接続され、指定された出力設定に従って、前記データ入力部により入力されたデータを前記データ記憶装置へ出力するデータ出力部と、
前記データ入力部により入力されたデータが出力設定の変更条件に合致するか否かを判断し、入力されたデータが前記変更条件に合致する場合に、前記データ出力部の出力設定を変更する出力設定変更部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、データの属性に応じて動的にデータの出力設定を変更するため、出力対象を重要度の高いデータに制限して書き込み処理時間の短縮及び書き込み先となる記憶領域の有効利用を図りながら、重要度の高いデータの入力を契機に重要度の高いデータとの関連性が強いデータも出力する出力設定に変更することができ、障害時等の解析処理及び再現処理に有用なデータを確保することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１〜７に係るログ出力装置の構成例を示す図。
【図２】実施の形態１に係るログデータの例を示す図。
【図３】実施の形態１に係る初期設定の例を示す図。
【図４】実施の形態１に係るログ出力の例を示す図。
【図５】実施の形態１に係る変更条件と変更設定の例を示す図。
【図６】実施の形態１に係る変更条件と変更設定の例を示す図。
【図７】実施の形態１に係るログ出力装置の動作例を示すフローチャート図。
【図８】実施の形態１に係るログ出力装置の動作例を示すシーケンス図。
【図９】実施の形態１に係るログ出力装置の動作例を示すシーケンス図。
【図１０】実施の形態１に係るログ出力装置の動作例を示すシーケンス図。
【図１１】実施の形態１に係るログ出力装置の動作例を示すシーケンス図。
【図１２】実施の形態１に係るログ出力装置の動作例を示すシーケンス図。
【図１３】実施の形態１に係る出力レベルの設定プログラムの例を示す図。
【図１４】実施の形態２に係る変更条件と変更設定の例を示す図。
【図１５】実施の形態２に係るログ出力装置の動作例を示すシーケンス図。
【図１６】実施の形態３に係る変更条件と変更設定の例を示す図。
【図１７】実施の形態４に係るログデータの例を示す図。
【図１８】実施の形態４に係る抽出条件の例を示す図。
【図１９】実施の形態４に係る変更条件と変更設定の例を示す図。
【図２０】実施の形態４に係る変更条件と変更設定の例を示す図。
【図２１】実施の形態４に係るログ出力装置の動作例を示すシーケンス図。
【図２２】実施の形態１〜７に係るログ出力装置のハードウェア構成例を示す図。
【発明を実施するための形態】
【００１０】
実施の形態１．
本実施の形態及び以降の実施の形態では、ログデータの属性、システム上のアプリケーションの動作や外部要因によりログデータの出力設定を動的に変更することで、障害発生時のログデータを確実に採取・保存するとともに、ログ設定を最適化していくシステムを説明する。
出力設定とは、出力レベルの設定、世代の設定、ログ出力先の設定、署名の有無の設定、暗号化の有無の設定等である。
本実施の形態では、出力設定の変更として、出力レベルの設定を変更する例について説明し、以降の実施の形態において、世代の設定の変更、ログ出力先の設定の変更、署名の有無の設定、暗号化の有無の設定について説明する。
【００１１】
先ず、出力レベルの設定について説明する。
本実施の形態で扱うログデータには出力レベルが指定されている。出力レベルは、優先度と同義であり、例えば、「高」、「低」の２段階のうちのいずれかのレベルが指定されていたり、「高」、「中」、「低」の３段階のうちのいずれかのレベルが指定されている。また、より多段階の出力レベルを用いてもよい。
本実施の形態に係るログ出力装置には、出力レベルの設定がなされている。
例えば、出力レベルが「高」と「低」の２段階の場合に、出力レベル「高」のログデータのみを出力するという設定がなされているときは、ログ出力装置は順次入力したログデータのうち出力レベル「高」が表示されているログデータのみを選択してデータ記憶装置に出力する。
そして、本実施の形態に係るログ出力装置は、入力したログデータの属性を解析して、入力したログデータが出力設定の変更条件に合致するか否かを判断し、入力したログデータが出力設定の変更条件に合致している場合は、例えば、出力レベルの設定を「低」に変更する。出力レベルの設定の変更後は、出力レベル「高」又は「低」のログデータのみを選択してデータ記憶装置に出力する。
【００１２】
図１に、本実施の形態に係るログ出力装置を含むシステム構成例を表すブロック図を示す。
【００１３】
本実施の形態に係るログ出力装置１０（データ処理装置）は、アプリケーションプログラム２０（以下、ＡＰＰ２０と表記する）からログデータを入力し、入力したログデータを出力設定に従ってデータ記憶装置３１０に出力し、データ記憶装置３１０にログデータを記憶させる。
ＡＰＰ２０は、ネットワークによりログ出力装置１０と接続されている別装置で動作するアプリケーションプログラムでもよいし、ログ出力装置１０と同一マシン上で動作するアプリケーションプログラムでもよい。ＡＰＰ２０は単一の実行ファイルから業務システムといった大規模なものを含む。
また、データ記憶装置３１０も、ネットワークによりログ出力装置１０と接続されている記憶装置でもよいし、ログ出力装置１０と同一マシン上で動作する記憶装置でもよい。
【００１４】
ログ出力装置１０には、ログ解析部１００、ログ管理部２００、出力先管理部３００、フォーマット管理部４００、署名／暗号部５００、レベル管理部６００、状況依存ログ設定部７００、外部状況取得部８００、キャッシュ１１０、初期設定情報記憶部２１０、変更設定情報記憶部７１０が含まれる。
【００１５】
ログ解析部１００は、複数段階の出力レベル（優先度）のうちのいずれかの出力レベルが指定されているログデータを順次入力する。ログ解析部１００は、データ入力部の例である。
また、ログ解析部１００は、ログデータの内容からログデータの出力設定の変更に係る情報として、出力レベル／同一処理回数／推移確率／引数情報などを抽出する。
また、ログ解析部１００は、状況依存ログ設定部７００に対して上記設定変更に係る情報の通知を行う。
また、ログ解析部１００は、ログ管理部２００に対する設定変更要求、キャッシュ１１０へのログデータのストア及びキャッシュ１１０からのログデータのロードを行う。
また、ログ解析部１００は、ログ管理部２００へのログ出力要求を行う。
【００１６】
図２は、ログ解析部１００が入力するログデータの例を示す。図２では、１２月１３日に、名古屋において、ユーザ：ＡＢＣＤＥＦがドライブ中であることを通知するログデータを示している。
なお、図２に示すログデータの［ＡＢＣ：ｍａｉｎ：１８］は、呼び出し元のクラス名、メソッド名、行番号を表しており、ＡＢＣクラス、ｍａｉｎメソッド、１８行目を示している。
また、「低」は出力レベルを表しており、図２のログデータの出力レベルは「低」である。
また、図２において、「０００」は正常を表す状況コードを示す。また、エラーを示す状況コードは「１００」とする。
以降、本実施の形態では、出力レベルは「高」と「低」のみをとり、正常時のログデータ（状況コードが「０００」のログデータ）は出力レベルが「低」とし、エラー時のログデータ（状況コードが「１００」のログデータ）は出力レベルが「高」とする例を説明する。
このような例では、ＡＰＰ２０では、例えば、図１３に例示するプログラムにより、正常時のログデータの出力レベルを「低」に指定し、エラー時のログデータの出力レベルを「高」に指定する。
なお、前述したように、出力レベルは、より多段階でもよい。また、どういった状況をどのレベルにマッピングさせるかは、アプリケーション、システムまたはプロジェクトの方針となる。
【００１７】
キャッシュ１１０は、ログ解析部１００により入力されたログデータであってデータ記憶装置３１０への出力が未実施のログデータを格納する。
キャッシュ１１０は、データ格納部の例である。
なお、以降の説明では、キャッシュ１１０は１つのログデータのみを格納可能であるとする。
【００１８】
ログ管理部２００は、ログデータの出力設定の変更条件に合致するログデータ（条件合致データ）が入力される前は、出力設定として所定の出力レベル（第１のレベル以上の優先度）が指定されているログデータの出力を指示する初期設定（第１の出力設定）を指定し、ログデータの出力設定の変更条件に合致するログデータが入力された際に、初期設定と異なる出力レベル（第２のレベル以上の優先度）が指定されているログデータの出力を指示する新たな出力設定（第２の出力設定）に変更する。
そして、初期設定が指定されている場合は、ログ解析部１００により入力されたログデータのうち初期設定で示されている出力レベルが指定されているログデータを選別してデータ記憶装置３１０へ出力し、新たな出力設定が指定された場合に、ログ解析部１００により入力されたログデータのうち新たな出力設定で示されている出力レベルが指定されているログデータを選別してデータ記憶装置３１０へ出力する。
ログ管理部２００は、出力設定変更部及びデータ出力部の例である。
上記の動作を行うに当たり、ログ管理部２００は、初期設定に基づく初期化処理、ログデータの出力設定の変更受付、レベル管理、フォーマット管理、出力先管理の初期設定、ログのレベル確認から出力までの制御を行う。
【００１９】
初期設定情報記憶部２１０は、ログデータの出力設定の初期設定を示す初期設定情報を記憶する。
図３は、初期設定情報記憶部２１０に記憶されている初期設定情報の例を示している。
図３の初期設定では、出力レベル「高」のログデータのみを選択して出力することが示されている。
また、世代は１であり、署名及び暗号化は行われない。世代の意味については、実施の形態２で説明する。
【００２０】
出力先管理部３００は、設定に基づくファイル、コンソールなどへのログ出力制御、出力ファイルの世代管理（ローリング指定など）、出力ファイルの最大サイズの管理を行う。
【００２１】
フォーマット管理部４００は、ログ出力項目の形式（テキスト、ＸＭＬ等）、ログ出力項目の成形（出力順の制御、形式や文字列の連結等の操作を含む）、ログ出力項目の出力可否の制御（日付を出力する／しない等）を行う。
【００２２】
署名／暗号部５００は、ログ出力項目に対して署名の添付（認証値生成処理）、暗号化処理を実施する。なお、対象項目や署名、暗号に基づく鍵については設定に基づく。
なお、署名／暗号部５００の詳細は、実施の形態４において説明する。
【００２３】
レベル管理部６００は、出力するログに指定されたレベル情報と出力許可されたレベルを比較判定する。
【００２４】
状況依存ログ設定部７００は、ログデータの出力設定の変更条件に合致するログデータが入力されたか否かを判断し、ログデータの出力設定の変更条件に合致するログデータが入力された場合に、新たな出力設定を決定する。
状況依存ログ設定部７００は、ログ管理部２００とともに出力設定変更部を構成する。
なお、本実施の形態では、状況依存ログ設定部７００は、ログデータの解析（出力レベルの解析）に基づいて出力設定の変更の有無を判断するが、外部状況取得部８００が得た情報、キャッシュの容量、時間経過および予め設定された変更設定の情報に基づき、ログ出力の設定を変更する／しないの判定（キャッシュの容量、時間経過は基本的に変更した設定を元に状態に戻す場合に用いる）を行うことも可能である。なお、出力レベル析以外の要素を用いる例は、実施の形態６等で説明する。
【００２５】
変更設定情報記憶部７１０は、出力設定の変更条件及び変更後の出力設定を示す変更設定情報を記憶する。
図５は、変更設定情報記憶部７１０に記憶されている変更設定情報の例を示している。
図５では、変更条件が「高」であり、変更設定が「低」である。
この例では、出力レベルが「高」のログデータが入力された場合には、ログ管理部２００及び状況依存ログ設定部７００は、出力レベルが「低」のログデータもデータ記憶装置３１０に出力する旨の出力設定に変更する。
つまり、出力レベルが「低」のログデータが入力されている間は、初期設定のままなので、データ記憶装置３１０にログデータが出力されず、出力レベルが「高」のログデータが入力された段階でログ管理部２００及び状況依存ログ設定部７００が出力設定を変更し、出力レベルが「高」のログデータのみならず、出力レベルが「低」のログデータも出力されることになる。
そして、本実施の形態では、出力レベルが「高」のログデータが入力された時点でキャッシュ１１０に蓄積されている先行するログデータも（出力レベルが「低」であっても）データ記憶装置３１０に出力される。
【００２６】
また、図６は、変更設定情報記憶部７１０に記憶されている他の変更設定情報の例を示している。
図６（ａ）〜（ｃ）は、図５の変更設定情報により出力設定が変更された後に、出力設定を元に戻すための基準が示されている。なお、実際の運用においては、図６（ａ）〜（ｃ）のうちのいずれかが用いられる。
図６（ａ）では、出力レベルが「低」のログデータがキャッシュ１１０で格納可能なログデータの個数＋１個に相当する回数連続して入力されたことを変更条件とし、当該変更条件に合致した場合に出力レベルが「高」のログデータのみの出力を指示する出力設定に変更する。本実施の形態では、キャッシュ１１０は１つのログデータを格納可能なので、出力レベルが「低」のログデータが２回連続して入力された場合に出力設定が初期設定に戻される。
また、図６（ｂ）では、出力レベルが「低」のログデータが５回連続して入力されたことを変更条件とし、当該変更条件に合致した場合に出力レベルが「高」のログデータのみの出力を指示する出力設定に変更する（初期設定に戻す）。
また、図６（ｃ）では、出力レベルが「低」のログデータが１０分間連続して入力されたことを変更条件とし、当該変更条件に合致した場合に出力レベルが「高」のログデータのみの出力を指示する出力設定に変更する（初期設定に戻す）。
【００２７】
外部状況取得部８００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ  ）温度、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）残量など指定のハードウェアの状態の監視および状況依存ログ設定部７００への通知を行う。
外部状況取得部８００は、状態監視部の例である。
なお、外部状況取得部８００を用いる例は、実施の形態６において説明する。
【００２８】
次に、図７のフローチャートを用いて、本実施の形態に係るログ出力装置１０の動作例を説明する。
【００２９】
所定の初期化処理が終了した後、ログ解析部１００がＡＰＰ２０からのログ出力要求を受信する（Ｓ７０１）。
ログ出力要求には、ログデータと当該ログデータのデータ記憶装置３１０への出力を要求するコマンドが含まれる。
【００３０】
次に、ログ解析部１００はログ出力要求に含まれているログデータの出力レベルを状況依存ログ設定部７００に通知し、状況依存ログ設定部７００がログデータを解析し、当該ログデータの属性が変更条件に合致しているか否かを判断する。より具体的には、状況依存ログ設定部７００は、入力されたログデータの出力レベルの解析を行って、入力されたログデータの出力レベルが変更条件に示されている出力レベルに合致するか否かを判断する（Ｓ７０２）。
そして、ログデータが変更条件に合致している場合（Ｓ７０３でＹＥＳ）は、状況依存ログ設定部７００は変更後の出力設定をログ解析部１００を介してログ管理部２００に通知し、ログ管理部２００が出力設定を変更する（Ｓ７０４）。
例えば、初期設定（図３）において運用されている状況において出力レベルが「高」のログデータが入力された場合は、図５に示す変更設定情報の変更条件に合致し、状況依存ログ設定部７００は、出力レベルが「低」のログデータも出力対象とする出力設定への変更をログ管理部２００に通知し、ログ管理部２００が出力設定を変更する。
また、例えば、図５の変更設定情報に従って出力設定が変更されている状況において出力レベルが「低」のログデータが２回続けて入力された場合は、図６（ａ）に示す変更設定情報の変更条件に合致し、状況依存ログ設定部７００は、出力レベルが「高」のログデータのみを出力対象とする出力設定への変更をログ管理部２００に通知し、ログ管理部２００が出力設定を変更する。
一方、変更条件に合致していない場合（Ｓ７０３でＮＯ）は、処理をＳ７０５に進める。
【００３１】
次に、ログ解析部１００がキャッシュ１１０の容量確認を行う（Ｓ７０５）。
容量確認の結果、キャッシュ１１０に空きがあれば（Ｓ７０６でＹＥＳ）、処理をＳ７１２に進め、ログ解析部１００は入力したログデータをキャッシュ１１０に格納する。
一方、キャッシュ１１０に空きがなければ（Ｓ７０６でＮＯ）、処理をＳ７０７に進める。
【００３２】
Ｓ７０７では、ログ解析部１００はキャッシュ１１０からログデータをロードする。
そして、ログ管理部２００が、キャッシュ１１０からロードされたログデータの出力レベルと出力設定で出力対象として指示されている出力レベルとを比較し、キャッシュ１１０からロードされたログデータの出力レベルが出力設定で指示されている出力レベルに合致するか否かを判断する（Ｓ７０８）。
キャッシュ１１０からロードされたログデータの出力レベルが出力設定で指示されている出力レベルに合致する場合は、当該ログデータは出力対象となるので（Ｓ７０９でＹＥＳ）、ログ管理部２００は当該ログデータをデータ記憶装置３１０に出力する（Ｓ７１０）。
一方、キャッシュ１１０からロードされたログデータの出力レベルが出力設定で指示されている出力レベルに合致しない場合は、当該ログデータは出力対象とならないので（Ｓ７０９でＮＯ）、ログ管理部２００は当該ログデータを破棄する（Ｓ７１１）。
【００３３】
最後に、ログ解析部１００は、ステップＳ７０１において入力したログデータをキャッシュ１１０に格納する（Ｓ７１２）。
【００３４】
なお、ステップＳ７０１で入力されたログデータはステップＳ７１２でキャッシュ１１０に格納されるまでの間は、ログ解析部１００に割り当てられているバッファメモリ等に一時的に蓄積しておく。
また、ステップＳ７０７でロードされたログデータはステップＳ７１０でデータ記憶装置３１０に出力されるまで又はステップＳ７１１で破棄されるまでの間は、ログ管理部２００に割り当てられているバッファメモリ等に一時的に蓄積しておく。
【００３５】
以上の動作例を前提して、ログ出力装置１０の動作を図８〜図１２のシーケンス図を用いて具体的に説明する。
図８〜図１２においては、出力レベルが「低」の１つ目のログデータ（低（１）と表記）、出力レベルが「低」の２つ目のログデータ（低（２）と表記）、出力レベルが「高」のログデータ（高（１）と表記）、出力レベルが「低」の３つ目のログデータ（低（３）と表記）、出力レベルが「低」の４つ目のログデータ（低（４）と表記）の順に入力される例を説明する。
【００３６】
先ず、図８に示すように、ＡＰＰ２０は、ログの初期化「１：初期化」を実施し、ＡＰＰ２０用のログのインスタンス（または相当品）を取得する。
ログ解析部１００は、初期化要求「１：初期化」を受けて、接続する各部に対して初期化要求を実施する（１．１：初期化〜１．３：初期化）。
本実施の形態の初期設定では、図３に示すように「高」レベルの出力を指示する出力設定である。なお、世代数、署名の有無、暗号の有無についても初期化処理において設定を行うが、図８では図示を省略している。
【００３７】
次に、図９に示すように、ＡＰＰ２０は、ログ解析部１００に対してログ出力要求を出力する（「３：ログ出力要求（低（１））」）。ここでは、ログデータ（低（１））が含まれるログ出力要求が出力される。
ＡＰＰ２０は、例えばＪａｖａ（登録商標）のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）によりログ解析部１００に対してログ出力要求を行う。
なお、本例ではセッションとログ出力装置１０との対応をＡＰＰ２０側にて管理することを想定している。ログ出力装置１０側で管理する場合には、上記にセッション識別子が加わる。
【００３８】
ログ解析部１００はログ出力要求を受信し、ログ出力要求からログ設定変更に係る情報として出力レベルが示されるレベル情報を抽出する。抽出する項目は複数存在してもよく、予めＱＵＥＲＹ式などで指定を行っておく。ＱＵＥＲＹ式はＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）に対するＸＰＡＴＨ式、またはＳＱＬのＳＥＬＥＣＴ式、またはｓｕｂｓｔｒｉｎｇなどの関数式に相当するものを用いる。
また、ログ解析部１００は、状況依存ログ設定部７００に対してログの設定変更の必要の有無について問い合わせを行うために、ログ情報（レベル情報）を通知する（「３．１：ログ情報（低（１））」）。
【００３９】
状況依存ログ設定部７００は、ログ解析部１００からのログ情報（レベル情報）に示される出力レベルが変更条件に合致するか否かの判断を行うが、入力されたログデータ（低（１））の出力レベルは「低」であるため、図５の変更条件に合致せず、状況依存ログ設定部７００は出力設定の変更を通知しない。
【００４０】
次に、ログ解析部１００は、キャッシュ１１０の容量確認を行い（「３．２：容量確認」）、保存領域の空きがある場合にはログデータをキャッシュ１１０に出力し、キャッシュ１１０がログデータを保存する（「３．３：保存（低（１））」）。入力されたログデータ（低（１））は最初のログデータであるので、キャッシュ１１０は空であり、ログデータ（低（１））はそのままキャッシュ１１０に格納される。
【００４１】
次に、ログデータ（低（２））が含まれるログ出力要求がＡＰＰ２０から出力される（「４：ログ出力要求（低（２））」）。
上記と同様に、ログ解析部１００から状況依存ログ設定部７００にログ情報（レベル情報）が通知され（「４．１：ログ情報（低（２））」）、状況依存ログ設定部７００は出力レベルが「低」であるので、出力設定の変更を指示しない。
また、ログ解析部１００は、キャッシュ１１０の容量確認を行う（「４．２：容量確認」）。
この時点では、キャッシュ１１０にログデータ（低（１））が格納されているので、キャッシュ１１０に空きがない。
この場合には、ログ解析部１００は、キャッシュ１１０から蓄積されているログデータ（低（１））を取得（「４．３：ロード」）して、ログ管理部２００に対してログ出力要求を行う（「４．４：ログ出力（低（１））」））。
前述したように、本例ではキャッシュ１１０に格納できる情報はログデータ１個分としている。
【００４２】
なお、キャッシュ１１０からのログデータの取得は、上記のようにＡＰＰ２０からのログ出力要求の延長で容量確認を行い容量に空きがない場合にロード（ログの取得）するようにしてもよいし、タイマーなどにより定期的に容量確認を行い容量に空きがない場合にロード（ログの取得）するようにしてもよい。また、上記の２つの方法を併用してもよい。
【００４３】
ログ管理部２００では、「４．４：ログ出力（低（１））」により通知されたログデータの出力レベルの指定が「低」であるため、初期設定の出力指示である出力レベル「高」に合致せず（「４．４．１レベル確認」、ＦＡＬＳＥ）、当該ログデータ（低（１））は破棄される。
その後、ログ解析部１００が、入力したログデータ（低（２））をキャッシュ１１０に格納する（「４．５：保存（低（２））」）。
【００４４】
次に、図１０に示すように、ログデータ（高（１））が含まれるログ出力要求がＡＰＰ２０から出力される（「５：ログ出力要求（高（１））」）。
図９の場合と同様に、ログ解析部１００から状況依存ログ設定部７００にログ情報（レベル情報）が通知され（「５．１：ログ情報（高（１））」）、出力レベルが「高」であるので図５の変更条件に合致し、状況依存ログ設定部７００は出力設定の変更を通知する。この場合は、出力レベル「低」のログデータも出力対象とする出力設定に変更するよう通知する（「変更設定（レベル＝低）」）。
ログ解析部１００では、出力レベル「低」の出力を許可する新規のログ設定情報をログ管理部２００に通知し、設定変更要求を行う（「５．２設定変更要求」）。
ログ管理部２００では、出力レベル「低」のログデータも出力対象とする出力設定に変更する（「５．２．１：設定（レベル＝低）」）。
【００４５】
次に、ログ解析部１００は、キャッシュ１１０の容量確認を行う（「５．３：容量確認」）。
この時点では、キャッシュ１１０にログデータ（低（２））が格納されているので、キャッシュ１１０に空きがない。
この場合には、ログ解析部１００は、キャッシュ１１０から蓄積されているログデータ（低（２））を取得（「５．４：ロード」）して、ログ管理部２００に対してログ出力要求を行う（「５．５：ログ出力（低（２））」））。
ログ管理部２００では、新たな出力設定においての出力レベルは「低」として再設定されているため、ログデータ（低（２））は出力の対象となり（「５．５．１レベル確認」、ＴＲＵＥ）、出力先管理部３００にまで渡され、データ記憶装置３１０へ書き出される（「５．５．３：ログ出力（低（２））。
その後、ログ解析部１００が、入力したログデータ（高（１））をキャッシュ１１０に格納する（「５．６：保存（高（１））」）。
【００４６】
次に、図１１に示すように、ログデータ（低（３））が含まれるログ出力要求がＡＰＰ２０から出力される（「６：ログ出力要求（低（３））」）。
図９及び図１０の場合と同様に、ログ解析部１００から状況依存ログ設定部７００にログ情報（レベル情報）が通知される（「６．１：ログ情報（低（３））」）。ここでは、図６（ａ）に示される基準にて出力設定の変更の要否を判断するものとする。図６（ａ）の基準では、キャッシュ１１０のログデータの格納個数＋１個分の「低」レベルのログデータが連続して入力されたこと（つまり、「低」レベルのログデータが２回連続して入力されたこと）を変更条件としている。ログデータ（低（３）が入力された時点では、「低」レベルのログデータは１回しか入力されていないので、変更条件に合致せず、状況依存ログ設定部７００は出力設定の変更を指示しない。
また、ログ解析部１００は、キャッシュ１１０の容量確認を行う（「６．２：容量確認」）。
この時点では、キャッシュ１１０にログデータ（高（１））が格納されているので、キャッシュ１１０に空きがない。
この場合には、ログ解析部１００は、キャッシュ１１０から蓄積されているログデータ（高（１））を取得（「６．３：ロード」）して、ログ管理部２００に対してログ出力要求を行う（「６．４：ログ出力（高（１））」）。
ログ管理部２００では、現在の出力設定における出力レベルは「低」であるため、ログデータ（高（１））は出力の対象となり（「６．４．１レベル確認」、ＴＲＵＥ）、出力先管理部３００にまで渡され、データ記憶装置３１０へ書き出される（「６．４．３：ログ出力（高（１））。
その後、ログ解析部１００が、入力したログデータ（低（３））をキャッシュ１１０に格納する（「６．５：保存（低（３））」）。
【００４７】
次に、図１２に示すように、ログデータ（低（４））が含まれるログ出力要求がＡＰＰ２０から出力される（「７：ログ出力要求（低（４））」）。
図９、図１０及び図１１の場合と同様に、ログ解析部１００から状況依存ログ設定部７００にログ情報（レベル情報）が通知される（「７．１：ログ情報（低（４））」）。図６（ａ）の基準では、「低」レベルのログデータが２回連続して入力されたことを変更条件としており、ログデータ（低（４））が入力された時点で、「低」レベルのログデータが２回連続して入力されたことになるので、図６（ａ）の変更条件に合致し、状況依存ログ設定部７００は出力設定の変更を指示する。
この場合は、出力レベル「高」のログデータのみを出力対象とする出力設定に変更するよう通知する（「変更設定（レベル＝高）」）。
ログ解析部１００では、出力レベル「高」の出力のみを許可するログ設定情報をログ管理部２００に通知し、設定変更要求を行う（「７．２設定変更要求」）。
ログ管理部２００では、出力レベル「高」のログデータのみを出力対象とする出力設定に変更する（「７．２．１：設定（レベル＝高）」）。これにより、出力設定が初期設定に戻されたことになる。
【００４８】
次に、ログ解析部１００が、キャッシュ１１０の容量確認を行う（「７．３：容量確認」）。
この時点では、キャッシュ１１０にログデータ（低（３））が格納されているので、キャッシュ１１０に空きがない。
この場合には、ログ解析部１００は、キャッシュ１１０から蓄積されているログデータ（低（３））を取得（「７．４：ロード」）して、ログ管理部２００に対してログ出力要求を行う（「７．５：ログ出力（低（３））」）。
ログ管理部２００では、「７．５：ログ出力（低（３））」により通知されたログデータの出力レベルの指定が「低」であるため、初期設定の出力指示である出力レベル「高」に合致せず（「７．５．１レベル確認」、ＦＡＬＳＥ）、当該ログデータ（低（３））は破棄される。
その後、ログ解析部１００が、入力したログデータ（低（４））をキャッシュ１１０に格納する（「７．６：保存（低（４））」）。
【００４９】
このように、変更条件に合致するログデータが入力される前は、出力レベル「高」が指定されているログデータのみを出力対象とする初期設定に従い、変更条件に合致するログデータであるログデータ（高（１））が入力された際に出力レベル「低」が指定されているログデータも出力対象に含める出力設定に変更しているので、ログデータ（高（１））の入力前にキャッシュ１１０に格納されているログデータ（低（２））も出力対象となる。
さらに、ログデータ（低（３））、ログデータ（低（４））と２回連続して低レベルのログデータが入力された段階で、出力設定を初期設定に戻しているので、ログデータ（低（３））はデータ記憶装置３１０に出力される。
このため、データ記憶装置３１０には、例えば、図４に示すように、正常（「０００」）を示す「低」レベルのログデータ（ログデータ（低（２））に相当）と、エラー（「００１」）を示す「高」レベルのログデータ（ログデータ（高（１））に相当）と、正常（「０００」）を示す「低」レベルのログデータ（ログデータ（低（３））に相当）が順次出力されることになる。
なお、図４では、図２のログデータに対して時刻情報（２００８−１２−１３  １４：００：００等）が追加されているが、この時刻情報はフォーマット管理部４００で追加される。
【００５０】
このように、本実施の形態によれば、通常は高レベルのログデータのみと出力しているが、エラー等の高レベルのログデータが発生する前後だけ、低レベルのログデータも含め出力することが可能となる。
つまり、本実施の形態では、ログデータの属性に応じて動的にログデータの出力設定を変更するため、出力対象を重要度の高いログデータに制限して書き込み処理時間の短縮及び書き込み先となる記憶領域の有効利用を図りながら、重要度の高いログデータの入力を契機に重要度の高いログデータとの関連性が強いログデータも出力する出力設定に変更することができ、障害時等の解析処理及び再現処理に有用なデータを確保することができる。
また、重要度の高いログデータと重要度の高いログデータとの関連性が強いログデータに限定して記憶するため、上書きにより重要度の高いログデータが消去される可能性を低減することができる。
【００５１】
以上、本実施の形態では、
ログ出力要求の内容を解析するログ解析部、
ログ出力の設定および実行管理を行うログ管理部、
ログの出力先および世代数の管理を行う出力先管理部、
ログを指定のフォーマットに成形するフォーマット管理部、
ログに対して署名／暗号を付与する署名／暗号部、
ログ出力の可否をレベルにて管理するレベル管理部、
ログ出力内容や外部状況による条件に応じてログ設定を変更する状況依存ログ設定部、
外部装置およびシステムの監視および状況変化の通知を行う外部状況取得部
を備え、ログ出力要求や外部状況に応じてログの出力設定を動的に変更するログ出力装置を説明した。
【００５２】
実施の形態２．
実施の形態１においては、低レベルのログを出力する方法であったが、本実施の形態では、変更条件に合致するログデータが入力された際にファイルの世代数を増やす出力設定に変更する例を説明する。
【００５３】
ここで、ファイルの世代数について説明する。
本実施の形態で対象にするデータ記憶装置は、所定のデータ容量のファイルを単位にしてデータを記憶している。
そして、本実施の形態に係るログ出力装置は、ファイルの空き容量が無くなった場合に、古いログデータから順に上書きして新しいデータを記憶させる制御を行いながらデータ記憶装置にログデータを出力する。
ファイルの世代数とは、データ記憶装置で管理しているファイルの個数を意味し、世代数が１の場合は、ログ出力装置は、１つのファイルに空き容量が無くなると当該ファイルを消去して新たなファイルに新たなログデータを書き込む。世代数が３の場合は、３つのファイルにおいて空き容量が無くなった段階で１番古いログファイルを消去して、新たなファイルに新たなログデータを書き込めばよく、世代数が増えると維持できるログデータが増える。
【００５４】
本実施の形態では、例えば、図１４に示す変更設定情報を用いる。
本実施の形態では、世代数が１の出力設定を初期設定とするとともに、出力レベル「高」のログデータが入力された際に、図１４の変更設定情報に従って、世代数が３の出力設定に変更する。
なお、いったん増やした世代数は減少させない。
また、本実施の形態においてもログ出力装置１０の構成例は、図１に示した通りである。
【００５５】
図１５は、本実施の形態に係るログ出力装置１０がファイルの世代数を増やす際の処理例を示す。
前述のように、出力先であるデータ記憶装置３１０では、ファイルをローリング方式（一定サイズを越えるとファイルの先頭から書き直し）にて管理する。また、初期設定での世代数は１である。
図１５では、高レベルのログデータ（高（１））が入力されるまでは、ログ管理部２００は、データ記憶装置３１０において１つのファイルに空き容量がなくなったら、ファイルの先頭に新たなログデータを上書き保存する。
なお、図１５では、「低」レベルのログデータはデータ記憶装置３１０に出力されないこととしているが、「低」レベルのログデータも出力されるようにしてもよい。
図１５では、「高」レベルのログデータ（高（１））が入力された段階で、ログ管理部２００は、世代数を３とする出力設定に変更する（「５．２．１：設定（世代＝３）」）。
これ以降は、ログ管理部２００は、データ記憶装置３１０において３つのファイルに空き容量がなくなるまで、上書き保存を行わない。
【００５６】
「低」レベルのログデータもデータ記憶装置３１０に出力されるような運用では、「高」レベルのログデータが入力されるまでは、「低」レベルのログデータのみが記憶されるが、「低」レベルのログデータであれば比較的早期に以前のログデータが上書き保存により消去されても問題がない。しかし、「高」レベルのログデータが入力されると、「高」レベルのログデータを長時間維持させることが必要であるため、ファイルの世代数を多くして上書き保存までの時間を長くして、「高」レベルのログデータを長時間維持させる。
【００５７】
また、一時的に出力先のファイルを変更し、通常はローリングして上書きされる危険のあるファイルとは別ファイルに保存する場合の処理シーケンスも上記と同様であり、世代数の変わりに出力先のファイル名情報などが渡される。
出力先を変更する場合には、後に初期設定に状態に戻す処理を行う。
つまり、データ記憶装置３１０が複数個のファイル系統を設けてログデータを記憶できる場合に、ログ管理部２００は、変更条件に合致する「高」レベルのログデータが入力される前は、ローリング方式の第１のファイル系統をデータ出力先として指示する初期設定を指定し、「低」レベルのログデータを第１のファイル系統に出力する。
また、ログ管理部２００は、「高」レベルのログデータが入力された際に、第１のファイル系統と異なる第２のファイル系統をデータ出力先として指示する新たな出力設定に変更する。第２のファイル系統は、ローリング方式でなく、「高」レベルのログデータ及び「高」レベルのログデータの前後のログデータのみを第２のファイル系統に出力する。
【００５８】
このように、本実施の形態では、ログデータの属性に応じて動的にファイルの世代数及びファイル系統を変更するため、重要度の低いログデータのみを入力している場合は、記憶領域の有効利用を図る運用を行い、重要度の高いログデータを入力した場合に、重要度の高いログデータが上書き保存により消去される機会を低減する運用を行う。
【００５９】
以上、本実施の形態では、ログ出力要求にて重大エラーなどの高レベルのログ出力がされた場合には、出力先で管理される世代数を増やすことで、ファイルの上書きなどによる情報消失を防止するログ出力装置を説明した。
【００６０】
実施の形態３．
本実施の形態では、特定のソース（要求先）からの出力要求があった場合にだけ、ログ出力設定を変える例を説明する。
【００６１】
図１６は、本実施の形態に係る変更設定情報の例を示す。
本実施の形態に係る変更設定情報では、変更条件としてソース及びメソッドを指定している。
そして、本実施の形態では、ログ管理部２００は、該当するソース及びメソッドの表示が含まれるログデータが入力される前は、図３に示す初期設定で規定される出力レベルのログデータを出力対象として選択し（また、初期設定に示される世代数でファイルを管理し）、該当するソース及びメソッドの表示が含まれるログデータが入力された場合に、図１６の変更設定に示される出力設定に変更し、変更後の出力設定で規定される出力レベルのログデータを出力対象として選択する（また、変更後の出力設定に示される世代数でファイルを管理する）。
他の動作は、実施の形態１及び実施の形態２に示すとおりである。
【００６２】
以上、本実施の形態では、特定のソース、メソッドに関連するログデータを入力した際にログの出力設定を変更するログ出力装置を説明した。
【００６３】
なお、以上では、特定のソースからのログデータに対して出力レベルまたは世代数を変更する例を説明したが、特定のソースからのログデータに対して署名、暗号化の有無の設定を変更するようにしてもよい。
【００６４】
実施の形態４．
本実施の形態では、ログのメッセージ内容に応じてログ出力設定を変更する別の例を説明する。本実施の形態では、ログデータに特定の識別子が含まれていることを変更条件とする例を説明する。具体的には、例えば、特定の識別子として特定のユーザ名がログデータに含まれているときにはそのログデータが低レベルであっても出力するようにする。
また、本実施の形態では、機密文書が含まれる場合にだけ署名、暗号化を実施するなどをログのメッセージ内容に応じて出力変更する例を説明する。
【００６５】
本実施の形態では、例えば、図１７に示す形式のログデータを対象とする。
図１７（ａ）は、本実施の形態に係るログデータの構成要素を示し、図１７（ｂ）は図１７（ａ）の具体例を示している。
本実施の形態に係るログデータは、例えばＣＳＶ形式で作られているとする。
そして、本実施の形態では、ログ解析部１００は、例えば、図１８に示す抽出条件を保持し、図１８の抽出条件に従って、入力したログデータの中からユーザ名に「ＸＹＺａｂｃ」が含まれるログデータ、文書種類に「機密文書」が含まれるログデータを抽出する。
【００６６】
また、本実施の形態では、例えば、図１９及び図２０に示す変更設定情報を用いる。
図１９の変更設定情報では、ユーザ名「ＸＹＺａｂｃ」を特定の識別子の例としている。
この例では、例えば、出力レベル「高」のログデータのみをデータ記憶装置３１０への出力対象とする出力設定を初期設定とするとともに、図１９の変更設定情報に従って、ユーザ名に「ＸＹＺａｂｃ」が含まれるログデータがログ解析部１００により抽出された際には、ログ管理部２００は、当該ログデータに対しては出力設定を変更して、出力レベル「低」のログデータであっても、データ記憶装置３１０に出力する。
また、図２０の変更設定情報では、文書種類「機密文書」を特定の識別子の例としている。
この例では、例えば、ログデータへの電子署名の付与、ログデータの暗号化のいずれも行わない出力設定を初期設定とするとともに、図２０の変更設定情報に従って、文書種類に「機密文書」が含まれるログデータがログ解析部１００により抽出された際には、ログ管理部２００は、当該ログデータに対しては出力設定を変更して、当該ログデータに電子署名を付与し、暗号化を行う。
【００６７】
図２１は、ログデータに署名、暗号化を行う場合の処理例を示す図である。
ログ管理部２００では、ログ解析部１００により文書種類に「機密文書」が含まれるログデータがログ解析部１００により抽出された際に、署名あり、暗号ありの出力設定に変更し（「１：設定（署名、暗号あり）」）、当該ログデータに対して署名／暗号部５００が署名の付与、暗号化を行い、署名、暗号化が行われたログデータがデータ記憶装置３１０に出力される。
なお、署名／暗号部５００は、ソースごとに署名、暗号に用いる鍵を保持しており、入力されたログデータのソース情報をキーにして対応する鍵を抽出し、抽出した鍵を用いて署名、暗号化を行う。
【００６８】
以上、本実施の形態では、特定ユーザに関連するログデータを入力した際にログの出力設定を変更するログ出力装置を説明した。
また、本実施の形態では、機密情報に関するログデータを入力した際にログデータに対する署名／暗号の付与を制御可能とするログ出力装置を説明した。
【００６９】
実施の形態５．
ログ解析部１００は、ログ出力要求に含まれるソース情報をコード化、蓄積し、処理フローのマイニングを行った後、推移確率を算出することが可能である。
推移確率を算出し、ログ情報として渡すことで、推移確率に基づくログ出力設定の変更も可能となる。
つまり、本実施の形態に係るログ出力装置では、ログ解析部１００が、ＡＰＰ２０から入力したログデータの傾向を解析してログデータの推移確率を算出し、ログ管理部２００及び状況依存ログ設定部７００は、推移確率において特定の傾向が観測されることを変更条件とし、特定の傾向が観測された際に出力設定を変更する。
また、各ソース情報に対してカウンタを設定することで、一定回数を経過するまで低レベルのログを出力し、以降は中／高レベルに設定変更を行うこともできる。
【００７０】
本実施の形態では、ログ出力パターンの推移確率を求め、今後のエラー（高レベルのログ出力）発生予測に基づきログの出力設定を変更可能とするログ出力装置を説明した。
【００７１】
実施の形態６．
ログ出力要求の内容だけでなく、ＣＰＵ温度やＨＤＤ残量などの外部状況に応じてログ設定を変更することも可能である。
この場合には、外部状況取得部８００がＣＰＵ温度やＨＤＤ残量等の監視項目を定期的に、または状況変化のイベント通知などにより監視しておき、変更が検出された場合に状況依存ログ設定部７００に対して通知を行う。
このときの通知条件として閾値を用いて実施してもよい。例えば、ＨＤＤ残量が２ＧＢ台から１ＧＢ台に減ったときに通知を行う等である。
状況依存ログ設定部７００は、監視項目に対する変更設定を管理し、例えばＨＤＤ残量が１ＧＢ台になったらログ出力のレベルを高にするといった出力設定の変更を行う。またはＨＤＤ残量がなくなってきたのでログ出力を停止する旨のログ出力設定を実施したのち、ＡＰＰからのログデータの入力を停止するなどの処理を行う。
【００７２】
実施の形態７．
実施の形態１〜６で示した変更条件のうち複数の条件が重って該当する場合には、変更設定を、例えば、以下の基準により算出することができる。
１）変更設定の最大値／平均値／最小値
２）多次元のマトリックスによる指定
３）ｎ次の方程式などの計算式
また、優先度を設定し、特定の条件が該当したらその指定を最優先するなどの設定にしてもよい。
【００７３】
最後に、実施の形態１〜７に示したログ出力装置１０のハードウェア構成例について説明する。
図２２は、実施の形態１〜７に示すログ出力装置１０のハードウェア資源の一例を示す図である。
なお、図２２の構成は、あくまでもログ出力装置１０のハードウェア構成の一例を示すものであり、ログ出力装置１０のハードウェア構成は図２２に記載の構成に限らず、他の構成であってもよい。
【００７４】
図２２において、ログ出力装置１０は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態１〜７で説明した「初期設定情報記憶部２１０」、「変更設定情報記憶部７１０」は、ＲＡＭ９１４、磁気ディスク装置９２０等により実現される。また、「データ記憶装置３１０」は、例えば、磁気ディスク装置９２０により実現される。
通信ボード９１５、キーボード９０２、マウス９０３、スキャナ装置９０７、ＦＤＤ９０４などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【００７５】
通信ボード９１５は、例えば、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）、ＳＡＮ（ストレージエリアネットワーク）などに接続されていても構わない。
【００７６】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
ＡＰＰ２０とログ出力装置１０が同一マシン上にある場合は、ＡＰＰ２０はプログラム群９２３に含まれる。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【００７７】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【００７８】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
ログ出力装置１０の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【００７９】
上記プログラム群９２３には、実施の形態１〜７の説明において「〜部」（「初期設定情報記憶部２１０」、「変更設定情報記憶部７１０」以外）として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００８０】
ファイル群９２４には、実施の形態１〜７の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の確認」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
また、実施の形態１〜７で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００８１】
また、実施の形態１〜７の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、実施の形態１〜７の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態１〜７の「〜部」の手順や方法をコンピュータに実行させるものである。
【００８２】
このように、実施の形態１〜７に示すログ出力装置１０は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【符号の説明】
【００８３】
１０  ログ出力装置、２０  ＡＰＰ、１００  ログ解析部、１１０  キャッシュ、２００  ログ管理部、２１０  初期設定情報記憶部、３００  出力先管理部、３１０  データ記憶装置、４００  フォーマット管理部、５００  署名／暗号部、６００  レベル管理部、７００  状況依存ログ設定部、７１０  変更設定情報記憶部、８００  外部状況取得部。
【図１】
2011013793.tif 000003
【図２】
2011013793.tif 000004
【図３】
2011013793.tif 000005
【図４】
2011013793.tif 000006
【図５】
2011013793.tif 000007
【図６】
2011013793.tif 000008
【図７】
2011013793.tif 000009
【図８】
2011013793.tif 000010
【図９】
2011013793.tif 000011
【図１０】
2011013793.tif 000012
【図１１】
2011013793.tif 000013
【図１２】
2011013793.tif 000014
【図１３】
2011013793.tif 000015
【図１４】
2011013793.tif 000016
【図１５】
2011013793.tif 000017
【図１６】
2011013793.tif 000018
【図１７】
2011013793.tif 000019
【図１８】
2011013793.tif 000020
【図１９】
2011013793.tif 000021
【図２０】
2011013793.tif 000022
【図２１】
2011013793.tif 000023
【図２２】
2011013793.tif 000024