(57)【要約】【課題】組込み機器などにおいて、限られたログ用メモリ内に効率的にログ情報を記録して、エラー原因究明の可能性を高める。【解決手段】ログ情報の重要度に関する重要度情報を、重要度情報保持手段６に保持しておく。ログ用メモリ３の満杯を満杯検出手段４で検出すると、重要度情報に基づいて重要度の最も低いログ情報を抽出して削除し、新しいログ情報を追記する。重要度は、例えば、デバッグ（DEBUG）、情報（INFO）、エラー（ERROR）の順とする。ログ用メモリ３に新しいログ情報を追加するため、最古のDEBUGイベントのログ情報を削除する。DEBUGイベントのログ情報が、古い順に次々に消されていく。消すべきDEBUGイベントのログ情報がなくなったら、INFOイベントのログ情報が古い順に消されていく。【選択図】図１
2007241540.tif 000002
【特許請求の範囲】
【請求項１】
ログ情報を格納するためのログ用メモリと、ログ情報の重要度に関する重要度情報を保持する重要度情報保持手段と、前記ログ用メモリが満杯になったことを検出する満杯検出手段と、前記ログ用メモリの満杯を検出したことに応じて前記重要度情報に基づいて重要度の最も低いログ情報のうちの最も古いものを抽出する抽出手段と、抽出したログ情報を削除する削除手段と、前記ログ用メモリに新しいログ情報を追記する追記手段とを具備することを特徴とするログ情報管理方式。
【請求項２】
ログ情報を格納するためのログ用メモリと、前記ログ用メモリが満杯になったことを検出する満杯検出手段と、前記ログ用メモリの満杯を検出したことに応じて成功終了イベントのログ情報にリンクするログ情報のうちの最も古いものを抽出する抽出手段と、抽出したログ情報を削除する削除手段と、前記ログ用メモリに新しいログ情報を追記する追記手段とを具備することを特徴とするログ情報管理方式。
【請求項３】
ログ情報を格納するためのログ用メモリと、イベントが成功終了したことに応じて成功終了イベントのログ情報にリンクするログ情報を抽出する抽出手段と、抽出したログ情報を削除する削除手段と、前記ログ用メモリに新しいログ情報を追記する追記手段とを具備することを特徴とするログ情報管理方式。
【請求項４】
ログ情報の重要度に関する重要度情報を保持しておき、ログ情報を格納するためのログ用メモリが満杯になったことを検出すると、前記重要度情報に基づいて重要度の最も低いログ情報のうちの最も古いものを抽出して削除し、前記ログ用メモリに新しいログ情報を追記することを特徴とするログ情報管理方法。
【請求項５】
ログ情報を格納するためのログ用メモリが満杯になったことを検出すると、成功終了イベントのログ情報にリンクするログ情報のうちの最も古いものを抽出して削除し、前記ログ用メモリに新しいログ情報を追記することを特徴とするログ情報管理方法。
【請求項６】
イベントが成功終了したことに応じて成功終了イベントのログ情報にリンクするログ情報を抽出して削除し、前記ログ用メモリに新しいログ情報を追記することを特徴とするログ情報管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログ情報管理方式に関し、特に、コンピュータ組込み機器におけるログ情報管理方式に関する。
【背景技術】
【０００２】
コンピュータやコンピュータで制御される機器では、障害発生時に障害原因を調査するために、動作履歴情報（ログ情報）を記録している。ログ情報は大量に発生するために、限られたメモリ内にすべてを記録することはできない。限られたログ用メモリにログ情報を保存するために、ログ用メモリが満杯になったときに、古いログ情報の上に新しいログ情報を上書きする方法（リングバッファ方式）や、外部のログサーバーに転送して保存する方法などがある。以下に、これに関連する従来技術の例をあげる。
【０００３】
特許文献１に開示された「ログ記録方法」は、ログファイルの記憶量が無制限に増大することがなく、且つ、過去の重要なログ情報が上書きによって消去されることなく、必要なログ情報を記録可能なログ記録方法である。ログ情報を記憶する複数の部分ログ情報記憶部を備える。複数の部分ログ情報記憶部に最後のログ情報の記録実行日時を記憶させる。ログ情報を記録する際、部分ログ情報記憶部に空き領域がない場合は、最終ログ日時を参照し、最古最終ログ日時からの経過期間を求める。保存期間が予め設定した期間を経過している場合、このログ情報を削除し、新たなログ情報を記録する。期間を経過したものが存在しない場合は、新しい部分ログ情報記憶部を生成して、それに発生したログ情報を記録する。
【０００４】
特許文献２に開示された「障害情報ロギング装置」は、バッファのオーバフローを起こりにくくすることによって、障害の根本原因となる障害情報を破棄しないようにすることができる障害情報ロギング装置である。稼働中の装置に発生した障害を検出する。この障害内容に対応する障害ID及び発生時刻を含む障害情報を生成する。新規障害情報の発生時刻と、新規障害情報と同障害IDのバッファに格納された障害情報の発生時刻とを比較する。双方の発生時刻差が規定値内の場合に、新規障害情報を破棄する。
【０００５】
特許文献３に開示された「画像形成システム」は、動作のログ情報を常に確実に記憶できるようにするものである。ログ情報取得の対象となるログ取得対象プロセスが動作すると、その動作のログ情報を、リングバッファ形式のファイルシステム（リングファイルシステム）に書き込んで記憶する。記憶したログ情報は、ログ情報読出プロセスによって読み出し、表示部に表示する。転写シートに画像形成して出力したり、ネットワークを介して接続したPCクライアントに表示させたりする。
【０００６】
特許文献４に開示された「情報処理装置」は、障害発生後に出力される実行履歴情報により障害発生時の実行履歴情報が上書きされてしまう不都合を回避して、障害発生の解析に必要とされる一定期間の実行履歴情報をトレースログ情報として、記憶容量の冗長化を招くことなく、かつシステム性能の劣化を招くことなく、確実に外部記憶装置に保存することのできる情報処理装置である。実行プログラム本体に設けられたトレース情報蓄積機能部は、プログラム実行中に、実行履歴とその処理状態をトレース情報として逐次、内部メモリ内のトレース情報格納領域に格納する。実行プログラム本体に設けられたトレース情報出力機能部は、システム監視機構から障害発生のイベント通知を受けると、内部メモリ内のトレース情報格納領域に蓄積されたトレース情報を、外部記憶装置に置かれたトレース情報ファイルの一つに出力する。
【特許文献１】特開平10-11330号公報
【特許文献２】特開平10-301815号公報
【特許文献３】特開2002-140210号公報
【特許文献４】特開2002-215431号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、従来のログ情報管理技術には、次のような問題がある。多くのメモリを搭載していないコンピュータ組込み機器では、ログ情報を保存するためのメモリが十分でなく、限られたメモリ内にログ情報を保存する必要がある。ログ用メモリが満杯になったときに、外部ログサーバーがない限り、重要な情報が記録できない。すべてのコンピュータ組込み機器に外部ログサーバーを用意することは、コスト的に不可能である。リングバッファ方式でログ情報を記録すると、どうしても重要なログ情報が消されてしまう。発生した障害に関係するログ情報のうち、最近のログ情報しか保存できない。根本原因がかなり以前に発生している障害の場合は、ログ情報からは原因を突き止められない。
【０００８】
本発明の目的は、上記従来の問題を解決して、コンピュータ組込み機器などにおいて、限られたログ用メモリ内に効率的にログ情報を記録して、エラー原因究明の可能性を高めることである。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明では、ログ情報管理方式を、ログ情報を格納するためのログ用メモリと、ログ情報の重要度に関する重要度情報を保持する重要度情報保持手段と、ログ用メモリが満杯になったことを検出する満杯検出手段と、ログ用メモリの満杯を検出したことに応じて重要度情報に基づいて重要度の最も低いログ情報のうちの最も古いものを抽出する抽出手段と、抽出したログ情報を削除する削除手段と、ログ用メモリに新しいログ情報を追記する追記手段とを具備する構成とした。また、ログ用メモリの満杯を検出したことに応じて、成功終了イベントのログ情報にリンクするログ情報のうちの最も古いものを抽出する抽出手段を設けた。また、イベントが成功終了したことに応じて成功終了したイベントのログ情報にリンクするログ情報を抽出する抽出手段を設けた。
【発明の効果】
【００１０】
上記のように構成したことにより、事前に設定した重要度に従って重要度の低いログ情報を古いものから削除するので、障害解析にさほど必要のないものが削除され、最新の重要なログ情報を蓄積することができる。また、成功終了イベントのログ情報を古いものから削除するので、障害解析にはほとんど関係ないログ情報を削除して、ログ用メモリを一度に広く解放できる。また、成功終了イベントにリンクするログ情報を保存しないことで、メモリ消費を少なくできるとともに、障害解析に関係のあるログ情報のみにより高速に障害解析ができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を実施するための最良の形態について、図１〜図７を参照しながら詳細に説明する。
【実施例１】
【００１２】
本発明の実施例１は、ログ情報の重要度に関する重要度情報を保持しておき、ログ用メモリが満杯になった場合に、重要度情報に基づいて重要度の最も低いログ情報のうちの最も古いものを削除して、新しいログ情報を追記するログ情報管理方式である。
【００１３】
図１は、本発明の実施例１におけるログ情報管理方式の概念図である。本発明の実施例１におけるログ情報管理方式の基本的な構成は、従来のものと同じである。従来のものとは、追記と削除の処理方法が異なる。図１において、イベント検出手段１は、ログ情報を記録すべきイベントを検出する手段である。追記手段２は、新たなログ情報をログ用メモリに追記する手段である。ログ用メモリ３は、ログ情報を格納するメモリである。満杯検出手段４は、ログ用メモリが満杯かどうかを検査する手段である。抽出手段５は、重要度が最も低くて最も古いログ情報を抽出する手段である。重要度情報保持手段６は、ログ情報の重要度情報を保持する手段である。削除手段７は、抽出されたログ情報をログ用メモリから削除する手段である。
【００１４】
図２は、本発明の実施例１におけるログ情報管理方式のログ情報の表である。図２（ａ）の表１は、ログ用メモリが満杯になるまでログ情報を記録した状態を示す表である。図２（ｂ）の表２は、ログ用メモリが満杯になったとき、重要度が最も低くて最も古いログ情報を削除した状態を示す表である。図３は、ログ情報管理方式の処理手順を示す流れ図である。
【００１５】
上記のように構成された本発明の実施例１におけるログ情報管理方式の機能と動作を説明する。最初に、図１を参照しながら、ログ情報管理方式の機能の概要を説明する。イベント検出手段１で、ログ情報を記録すべきイベントを検出する。例えば、イベント発生を割込みなどで通知を受けて、イベントの種類を調べることにより、記録すべきイベントを検出する。記録すべきイベントが検出されると、満杯検出手段４で、ログ用メモリ３が満杯かどうかを検査する。満杯でなければ、ログ用メモリ３に、新しいログ情報を格納する。満杯であれば、抽出手段５は、重要度情報保持手段６を参照して、ログ情報の重要度情報を得て、重要度が最も低くて最も古いログ情報を抽出する。削除手段７で、ログ用メモリから最も重要度の低いログ情報を削除する。その後、追記手段２で、新たなログ情報をログ用メモリに追記する。
【００１６】
次に、図２を参照しながら、ログ情報の追記方法を説明する。事前に、重要度情報保持手段６に、ログ情報の重要度情報を設定しておく。この重要度情報を参照して、ログ用メモリ３が満杯になると、重要度の低いログ情報から削除していく。ログ情報をログ用メモリ３に格納していくと、図２（ａ）の表１に示すようなログになる。簡単のため、ログ用メモリ３として10行分あるとする。この場合、新しいイベントのログ情報を追加するためには、古くて重要度の低いログ情報を削除する必要がある。そこで、最古のDEBUGイベントを削除すると、図２（ｂ）に示す表２のログとなる。ここでは、重要度は、デバッグ（DEBUG）、情報（INFO）、エラー（ERROR）の順に高くなるとする。したがって、DEBUGイベントのログ情報が古い順に次々に消されていくことになる。消すべきDEBUGイベントのログ情報がなくなったら、INFOイベントのログ情報が古い順に消されていく。この情報種別は、イベントのログ情報を追加するときに、それぞれのアプリケーションが明示的に付加する情報である。
【００１７】
次に、図３を参照しながら、ログ情報管理方式の処理手順を説明する。ステップ１において、ログ記録対象のイベントの検出まで待つ。イベントを検出すると、ステップ２において、ログ用メモリ３が満杯かどうか調べる。満杯でなければ、ログ情報をログ用メモリ３に格納する。満杯であれば、ステップ３において、重要度情報を参照して、最も重要度が低くて古いログ情報を抽出する。ステップ４において、抽出したログ情報をログ用メモリ３から削除する。ステップ５において、ログ情報をログ用メモリ３に格納する。ステップ６において、ログ情報管理が終了するまで繰り返す。
【００１８】
上記のように、本発明の実施例１では、ログ情報管理方式を、ログ情報の重要度に関する重要度情報を保持しておき、ログ用メモリが満杯になった場合に、重要度情報に基づいて重要度の最も低いログ情報のうちの最も古いものを削除して、新しいログ情報を追記する構成としたので、障害解析への悪影響を最小限としつつ、最新の重要なログ情報を蓄積できる。
【実施例２】
【００１９】
本発明の実施例２は、ログ用メモリが満杯になった場合に、成功終了イベントのログ情報にリンクするログ情報のうちの最も古いものを削除し、ログ用メモリに新しいログ情報を追記するログ情報管理方式である。
【００２０】
図４は、本発明の実施例２におけるログ情報管理方式の概念図と、ログ情報の表である。本発明の実施例２におけるログ情報管理方式の基本的な構成は、実施例１と同じである。しかし、追記と削除の処理方法が異なる。図４（ａ）において、イベント検出手段１は、ログ情報を記録すべきイベントを検出する手段である。追記手段２は、新たなログ情報をログ用メモリに追記する手段である。ログ用メモリ３は、ログ情報を格納するメモリである。満杯検出手段４は、ログ用メモリが満杯かどうかを検査する手段である。抽出手段５は、成功終了イベントのログ情報にリンクするログ情報の内の最も古いログ情報を抽出する手段である。削除手段７は、抽出されたログ情報をログ用メモリから削除する手段である。図４（ｂ）の表３は、ログ用メモリが満杯になったとき、成功終了イベントのログ情報にリンクするログ情報の内の最も古いログ情報を削除した状態を示す表である。図５は、ログ情報管理方式の処理手順を示す流れ図である。
【００２１】
上記のように構成された本発明の実施例２におけるログ情報管理方式の機能と動作を説明する。最初に、図４（ａ）を参照しながら、ログ情報管理方式の機能の概要を説明する。イベント検出手段１で、ログ情報を記録すべきイベントを検出する。記録すべきイベントが検出されると、満杯検出手段４で、ログ用メモリが満杯かどうかを検査する。満杯でなければ、ログ用メモリ３に、ログ情報を格納する。満杯であれば、抽出手段５で、成功終了イベントのログ情報にリンクするログ情報の内の最も古いログ情報を抽出する。削除手段７で、抽出されたログ情報をログ用メモリから削除する。その後、追記手段２で、新たなログ情報をログ用メモリ３に追記する。
【００２２】
次に、図４（ｂ）を参照しながら、ログ情報の追記方法を説明する。ログ用メモリ３が満杯になると、成功終了イベントのログ情報にリンクする最古のログ情報を消していく方法である。図２の表１において、リンク情報は２カラム目におかれ、メッセージIDとして、どこからどこへという情報が記録されている。簡単のため、メッセージIDは10〜999の値とし、予約IDとして０〜９を使う。予約IDのうち、成功終了を０、エラー終了を９とする。あるひとつのログ情報のシーケンスは、０か９で終了することになる。図１の表１に示すログ内の168->169->０は成功終了しているので、ログ用メモリ３が満杯になった時点で、この２行が消される。その結果、図４（ｂ）の表３に示すようなログになる。
【００２３】
次に、図５を参照しながら、ログ情報管理方式の処理手順を説明する。ステップ11において、ログ記録対象のイベントの検出まで待つ。イベントを検出すると、ステップ12において、ログ用メモリ３が満杯かどうか調べる。満杯でなければ、ログ情報をログ用メモリ３に格納する。満杯であれば、ステップ13において、成功終了イベントのリンク内の最古のログ情報を抽出する。ステップ14において、抽出したログ情報をログ用メモリ３から削除する。ステップ15において、新しいログ情報をログ用メモリ３に格納する。ステップ16において、ログ情報管理が終了するまで繰り返す。
【００２４】
上記のように、本発明の実施例２では、ログ情報管理方式を、ログ用メモリが満杯になった場合に、成功終了イベントのログ情報にリンクするログ情報のうちの最も古いものを削除し、ログ用メモリに新しいログ情報を追記する構成としたので、障害解析への悪影響をほとんど無くしつつ、ログ用メモリを一度に広く解放して最新の重要なログ情報を蓄積できる。
【実施例３】
【００２５】
本発明の実施例３は、イベントが成功終了したときは、それにリンクするログ情報を削除し、成功終了でなければ、ログ用メモリに新しいログ情報を追記するログ情報管理方式である。
【００２６】
図６は、本発明の実施例３におけるログ情報管理方式の概念図とログ情報の表である。実施例３におけるログ情報管理方式の基本的な構成は、実施例１と同じである。しかし、追記と削除の処理方法が異なる。図６（ａ）において、イベント検出手段１は、ログ情報を記録すべきイベントを検出する手段である。追記手段２は、新たなログ情報をログ用メモリに追記する手段である。ログ用メモリ３は、ログ情報を格納するメモリである。抽出手段５は、成功終了イベントにリンクするログ情報を抽出する手段である。削除手段７は、抽出したログ情報をログ用メモリから削除する手段である。図６（ｂ）の表４は、成功終了イベントにリンクするログ情報を削除した状態のログを示す表である。図７は、ログ情報管理方式の処理手順を示す流れ図である。
【００２７】
上記のように構成された本発明の実施例３におけるログ情報管理方式の機能と動作を説明する。最初に、図６（ａ）を参照しながら、ログ情報管理方式の機能の概要を説明する。イベント検出手段１で、ログ情報を記録すべきイベントを検出する。記録すべきイベントが検出されると、成功終了イベントにリンクするログ情報を抽出する。削除手段７で、抽出したログ情報をログ用メモリ３から削除する。追記手段２で、新たなログ情報をログ用メモリ３に追記する。
【００２８】
次に、図６（ｂ）を参照しながら、ログ情報の追記方法を説明する。成功終了したイベントのログ情報は保存しない方法である。図１の表１に示すようなイベントが実際に発生した場合は、メッセージIDが０になった時点で消していく。したがって、最終的には、図６（ｂ）の表４に示すように、エラー終了したイベントのログ情報のみが保存されていくことになる。
【００２９】
次に、図７を参照しながら、ログ情報管理方式の処理手順を説明する。ステップ21において、ログ記録対象のイベントの検出まで待つ。イベントを検出すると、ステップ22において、成功終了したイベントかどうか調べる。成功終了でなければ、ステップ５において、ログ情報をログ用メモリ３に格納する。成功終了であれば、ステップ23において、成功終了したイベントにリンクするログ情報を抽出する。ステップ24において、抽出したログ情報をログ用メモリ３から削除する。ステップ26において、ログ情報管理が終了するまで繰り返す。
【００３０】
上記のように、本発明の実施例３では、ログ情報管理方式を、イベントが成功終了したときは、それにリンクするログ情報を削除し、成功終了でなければ、ログ用メモリに新しいログ情報を追記する構成としたので、ログ用メモリの消費を少なくでき、障害解析をより高速に行える。
【産業上の利用可能性】
【００３１】
本発明のログ情報管理方式は、コンピュータ組込み機器におけるログ情報管理方式として最適である。
【図面の簡単な説明】
【００３２】
【図１】本発明の実施例１におけるログ情報管理方式の概念図である。
【図２】本発明の実施例１におけるログ情報管理方式のログ情報の表である。
【図３】本発明の実施例１におけるログ情報管理方式の処理手順を示す流れ図である。
【図４】本発明の実施例２におけるログ情報管理方式の概念図とログ情報の表である。
【図５】本発明の実施例２におけるログ情報管理方式の処理手順を示す流れ図である。
【図６】本発明の実施例３におけるログ情報管理方式の概念図とログ情報の表である。
【図７】本発明の実施例３におけるログ情報管理方式の処理手順を示す流れ図である。
【符号の説明】
【００３３】
１・・・イベント検出手段、２・・・追記手段、３・・・ログ用メモリ、４・・・満杯検出手段、５・・・抽出手段、６・・・重要度情報保持手段、７・・・削除手段。
【図１】
2007241540.tif 000003
【図２】
2007241540.tif 000004
【図３】
2007241540.tif 000005
【図４】
2007241540.tif 000006
【図５】
2007241540.tif 000007
【図６】
2007241540.tif 000008
【図７】
2007241540.tif 000009