(57)【要約】【課題】保管しているログファイルと、収集対象の複数のログファイルとを比較して、その更新箇所のみを抽出する処理を行う際に、必要となるディスクの容量の増大を抑制すること。【解決手段】ログファイル保存管理情報１１９は、保存対象となるログファイルを管理する保存対象ログ管理情報１２０、ブロック単位で差分比較する保存ログブロック管理情報１２１、及び最終更新ブロック情報１２２の情報を含む。差分ブロック判定機能部１１０は、ブロック管理情報１０７と、ログファイル保存管理情報１１９とを比較し、差分が存在するブロックを差分ブロック情報１１１に記録する。ブロック内差分抽出機能部１１２は、差分ブロック情報１１１に記録されたブロックに対して、ブロック内の差分レコード位置を判定する。ログ保存機能部１１８は、ブロック内差分抽出機能部１１２が取得した差分情報に基づいて、データ圧縮されたログファイルを更新し、保管する。【選択図】図１
2010257330.tif 000002
【特許請求の範囲】
【請求項１】
保存・管理の対象となる所与のカレントログファイルを、管理に適した形態で管理するログファイル管理システムであって、
所与のカレントログファイルのデータを、複数のブロックに分割して保管するブロック分割手段と、
前記カレントログファイルの複数のブロックの各々の誤り検出符号を取得する誤り検出符号取得手段と、
前記カレントログファイルの複数のブロック内の各々のデータを圧縮するデータ圧縮手段と、
前記複数のブロックのブロック番号に対応付けて、前記誤り検出符号取得手段によって得られた前記複数のブロック各々の誤り検出符号と前記データ圧縮手段によってデータ圧縮された前記複数のブロック各々の圧縮後サイズとを格納する一覧情報をカレントログファイルのブロック管理情報として記録するブロック管理情報取得手段と、
データ圧縮された歴代のログファイルを管理するためのログファイル保存管理情報に含まれる保存ログブロック管理情報と、前記カレントログファイルのブロック管理情報とを比較し、前記誤り検出符号または前記圧縮後サイズに相違が有るブロックを差分ブロックとして抽出する差分ブロック判定手段と、
前記差分ブロックの前記圧縮手段によるデータ圧縮を解凍すると共に、前記差分ブロック内で差分を有するレコードのレコード位置を判定するブロック内差分位置取得手段と、
前記ブロック内差分位置取得手段が取得した差分情報に基づいて、前記データ圧縮された歴代のログファイルを更新し、保管するログ保存手段と、
を備えたことを特徴とするログファイル管理システム。
【請求項２】
前記ブロック内差分位置取得手段は、
前回処理終了時にブロック内に未追加のレコード領域を有するとき、
当該前回処理終了時の未追加のレコード領域における先頭の位置を今回処理における前記レコード位置の始点であると判定し、
前記差分ブロックのうち、次ブロックが差分ブックでない差分ブロックのみを解凍し、
当該解凍した差分ブロックにおいて差分を有するレコードの末尾の位置を前記レコード位置の終点であると判定する、
ことを特徴とする請求項１記載のログファイル管理システム。
【請求項３】
前記ブロック内差分位置取得手段は、
ブロック内の全レコードが追加ログレコードであるとき、
前記差分ブロックの解凍を行わず、当該追加ログレコードの先頭の位置から末尾の位置までを前記レコード位置と判定する、
ことを特徴とする請求項１または請求項２の何れか１項に記載のログファイル管理システム。
【請求項４】
前記各手段のうち、前記カレントログファイルを対象とする前記ブロック管理情報取得手段をログ収集対象サーバ装置に配し、前記ブロック管理情報取得手段を除く他の全ての手段をログ管理サーバ装置に配すると共に、前記ログ収集対象サーバ装置から前記ログ収集対象サーバ装置へデータを転送するデータ転送手段を前記両サーバに備えたことを特徴とする請求項１から請求項３の何れか１項に記載のログファイル管理システム。
【請求項５】
保存・管理の対象となる所与のカレントログファイルを、管理に適した形態で管理するログファイル管理方法であって、
所与のカレントログファイルのデータを、複数のブロックに分割して保管するブロック分割ステップと、
前記カレントログファイルの複数のブロックの各々の誤り検出符号を取得する誤り検出符号取得ステップと、
前記カレントログファイルの複数のブロック内の各々のデータを圧縮するデータ圧縮ステップと
前記誤り検出符号取得手段によって得られた前記複数のブロック各々の誤り検出符号、及び前記圧縮手段によってデータ圧縮された前記複数のブロック各々の圧縮後サイズを、前記複数のブロックのブロック番号に対応付けて成る一覧情報をカレントログファイルのブロック管理情報として記録するブロック管理情報取得ステップと、
データ圧縮された歴代のログファイルを管理するためのログファイル保存管理情報に含まれる保存ログブロック管理情報と、前記カレントログファイルのブロック管理情報とを比較し、前記誤り検出符号または前記圧縮後サイズに相違が有るブロックを差分ブロックとして抽出する差分ブロック判定ステップと、
前記差分ブロックの前記圧縮手段によるデータ圧縮を解凍すると共に、前記差分ブロック内で差分を有するレコードのレコード位置を判定するブロック内差分位置取得ステップと、
前記ブロック内差分位置取得手段が取得した差分情報に基づいて、前記データ圧縮された歴代のログファイルを更新し、保管するログ保存ステップと、
を有することを特徴とするログファイル管理方法。
【請求項６】
前回処理終了時にブロック内に未追加のレコード領域を有するとき、
前記ブロック内差分位置取得ステップは、
当該前回処理終了時の未追加のレコード領域における先頭の位置を今回処理における前記レコード位置の始点であると判定し、
前記差分ブロックのうち、次ブロックが差分ブックでない差分ブロックのみを解凍し、
当該解凍した差分ブロックにおいて差分を有するレコードの末尾の位置を前記レコード位置の終点であると判定する、
ことを特徴とする請求項５に記載のログファイル管理方法。
【請求項７】
ブロック内の全レコードが追加ログレコードであるとき、
前記ブロック内差分位置取得ステップは、
前記差分ブロックの解凍を行わず、当該追加ログレコードの先頭の位置から末尾の位置までを前記レコード位置と判定する、
ことを特徴とする請求項５または請求項６の何れか１項に記載のログファイル管理方法。
【請求項８】
前記各ステップのうち、前記カレントログファイルを対象とする前記ブロック管理情報取得ステップをログ収集対象サーバ装置側にて実行し、前記ブロック管理情報取得手段を除く他の全ての手段をログ管理サーバ装置側にて実行すると共に、前記ログ収集対象サーバ装置から前記ログ収集対象サーバ装置へデータを転送するデータ転送ステップを前記両サーバ装置において実行することを特徴とする請求項５から請求項７の何れか１項に記載のログファイル管理方法。
【請求項９】
保存・管理の対象となる所与のカレントログファイルを、管理に適した形態で管理するログファイル管理システムを、
所与のカレントログファイルのデータを、複数のブロックに分割して保管するブロック分割手段、
前記カレントログファイルの複数のブロックの各々の誤り検出符号を取得する誤り検出符号取得手段、
前記カレントログファイルの複数のブロック内の各々のデータを圧縮するデータ圧縮手段、
前記複数のブロックのブロック番号に対応付けて、前記誤り検出符号取得手段によって得られた前記複数のブロック各々の誤り検出符号と前記データ圧縮手段によってデータ圧縮された前記複数のブロック各々の圧縮後サイズとを格納する一覧情報をカレントログファイルのブロック管理情報として記録するブロック管理情報取得手段、
データ圧縮された歴代のログファイルを管理するためのログファイル保存管理情報に含まれる保存ログブロック管理情報と、前記カレントログファイルのブロック管理情報とを比較し、前記誤り検出符号または前記圧縮後サイズに相違が有るブロックを差分ブロックとして抽出する差分ブロック判定手段、
前記差分ブロックの前記圧縮手段によるデータ圧縮を解凍すると共に、前記差分ブロック内で差分を有するレコードのレコード位置を判定するブロック内差分位置取得手段、
前記ブロック内差分位置取得手段が取得した差分情報に基づいて、前記データ圧縮された歴代のログファイルを更新し、保管するログ保存手段、
として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はログファイル管理システム、及びログファイル管理方法に係り、特に、分割された複数のブロックを含むログファイルの管理を行うと共に、ログファイル中の追加レコードを少ないディスク容量で抽出することができるログファイル管理システム、ログファイル管理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、一般的なアプリケーションプログラムの実行システムでは、該実行システムが実行する各種アプリケーションプログラムやオペレーティングシステムのログ（即ちログファイル）を管理することでシステムの運用状況を監視している。
しかしながら、ログファイルを長期間保存して管理する場合、大量のディスク容量を必要とする。このため、従来から、保存のためのディスク容量を最小化することがログ保存を行う場合の課題であり、保存するログファイルを圧縮して保存管理することは勿論のこと、日時差分のみ追加保存していく方式も一般化している。ここで差分を判断する際には圧縮した大容量ファイルを展開する必要があり、一時的ではあるが大容量ディスクを必要とするので、この差分判断の処理を少ない容量で実行することも課題であった。
【０００３】
ログファイル管理システムの一時領域（テンポラリ領域）には、ログファイルをオリジナル形式で保存するため、ログファイル管理システムのオリジナル形式でのファイルサイズ分の容量が必要になり、さらに、差分抽出の対象となるログファイルも同様に一時領域に該オリジナル形式で保存し、両者の比較処理を行う必要がある。このため、ファイル単位に処理する従来方式では、圧縮前のログファイルのサイズ分容量が一時領域の使用容量として必要になる。一般の実行システムでは、複数のログファイルの差分比較処理を並列して実行することになり、よって、同時に処理するログファイルの圧縮前のサイズ分の一時領域が必要になるという問題点があった。
【０００４】
なお、本発明と部分的に関連する技術は、例えば、特許文献１の「データファイル保存方法」、特許文献２の「ストレージ装置、及びストレージシステム」、及び特許文献３の「プログラムのトレース方法」などに開示されているが、これらの技術は、本発明と部分的には同様の概念の構成要素も有るが、いずれも本発明の本質を示すものではない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１００００７号公報
【特許文献２】特開２００７−２００１８２号公報
【特許文献３】特開平０１−３００３４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、上記背景技術で述べた関連するログファイル管理システムにあっては、例えば、一般的なＩＴシステムの場合は、その機能が、多種のアプリケーションソフトウェア（以後「ＡＰ」と略称する）を組み合わせて実現されており、即ち、様々なメーカーのソフトウェアやハードウェアを組み合わせたオープンシステムで構築されている。ここで、個々のＡＰは動作した記録としてログファイルを出力する。
【０００７】
昨今、システムのセキュリティ監視が強化され、不正アクセスが無く、システムが正常に運用されていることを保証するための記録として、システム内のＡＰのログファイルを収集し、一年または半年という一定期間だけ保存・管理し、システム運用の確証にしてシステムのセキュリティ監査に使用するような方法が一般化してきている。前述のとおり、一年といった長期の単位でシステムのログファイルを保管するには、大容量のディスクが必要となるため、長期間保管するデータは圧縮して保存するのが一般的である。
【０００８】
一方、ログファイルは、各ＡＰから逐次出力されるため、システム運用中はログ情報のデータがログファイルに出力され続ける。一般のＡＰは特定のログファイルサイズを設定し、設定されたファイルサイズの範囲内に繰り返しログ情報の書き換えを行いながら、動作しつづける機能を備えている。そのため、ログファイルの保存・管理を行うソフトウェアは、繰り返し書き換えられる各ＡＰが出力するログファイルの更新部分を抽出し、保管しているログファイルに追加保存していく。
オープンシステムでは、ログファイルを保存・管理するソフトウェアと、ログを出力するＡＰとの間で密な情報連携を行うことができないため、更新部分を抽出するための処理は、ＡＰで出力されたログファイルを用いてログファイルを保存・管理するソフトウェア側で行う必要がある。
【０００９】
しかしながら、関連する既成のログファイルの保存・管理を行うソフトウェアは、保管しているログファイルと、収集対象のログファイルとを比較して、追加保存すべき更新部分を判断する方式がとられているが、保管ファイルは圧縮されているため比較を行うためには、一時的に元の形式に復元する必要があった。前述のとおり、ログファイルは多数存在し、日時でログファイルの差分を取り込むような運用を行う場合、多数のログファイルを多重度を上げて処理を行う必要があり、このため、ログファイルを復元するための一時的なディスク容量が大量に必要となるという問題点があり、また、ファイルサイズの大きなログを多数処理する場合は、圧縮保存されたログファイルを復元するための時間が長く掛かるようになるという問題点があった。
【００１０】
本発明は、上記問題点に鑑みてなされたものであって、保管しているログファイルと、収集対象の複数のログファイルとを比較して、その追加保存すべき更新箇所のみを抽出する処理を行う際に、必要となるディスクの容量の増大を抑制することを可能にしたログファイル管理システムを提供することを目的としている。
また、本発明の他の目的は、圧縮保管しているログファイルと、収集対象の複数のログファイルとを比較して、その追加保存すべき更新箇所のみを抽出する処理を行う際に、圧縮保管しているログファイルの復元に必要な復元時間を短縮することができるログファイル管理システムを提供することにある。
【００１１】
また、本発明の他の目的は、保管しているログファイルと、収集対象の多数のログファイルとを比較して、その追加保存すべき更新箇所のみを抽出する処理を行う際に、必要となるディスクの容量の増大を抑制することを可能にしたログファイル管理システム方法を提供することにある。
また、本発明の他の目的は、圧縮保管しているログファイルと、収集対象の多数のログファイルとを比較して、その追加保存すべき更新箇所のみを抽出する処理を行う際に、圧縮保管しているログファイルの復元に必要な復元時間を短縮することができるログファイル管理方法を提供することにある。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明は、ログファイル管理システムとして、保存・管理の対象となる所与のカレントログファイルを、管理に適した形態で管理するログファイル管理システムであって、所与のカレントログファイルのデータを、複数のブロックに分割して保管するブロック分割手段と、前記カレントログファイルの複数のブロックの各々の誤り検出符号を取得する誤り検出符号取得手段と、前記カレントログファイルの複数のブロック内の各々のデータを圧縮するデータ圧縮手段とを有し、前記誤り検出符号取得手段によって得られた前記複数のブロック各々の誤り検出符号、及び前記圧縮手段によってデータ圧縮された前記複数のブロック各々の圧縮後サイズを、前記複数のブロックのブロック番号に対応付けて成る一覧情報をカレントログファイルのブロック管理情報として記録するブロック管理情報取得手段と、データ圧縮された歴代のログファイルを管理するためのログファイル保存管理情報に含まれる保存ログブロック管理情報と、前記カレントログファイルのブロック管理情報とを比較し、前記誤り検出符号または前記圧縮後サイズに相違が有るブロックを差分ブロックとして抽出する差分ブロック判定手段と、前記差分ブロックの前記圧縮手段によるデータ圧縮を解凍すると共に、前記差分ブロック内で差分を有するレコードのレコード位置を判定するブロック内差分位置取得手段と、
前記ブロック内差分位置取得手段が取得した差分情報に基づいて、前記データ圧縮された歴代のログファイルを更新し、保管するログ保存手段と、を備えたことを特徴とするログファイル管理システムを提供するものである。
【００１３】
また、本発明は、ログファイル管理方法として、保存・管理の対象となる所与のカレントログファイルを、管理に適した形態で管理するログファイル管理方法であって、所与のカレントログファイルのデータを、複数のブロックに分割して保管するブロック分割ステップと、前記カレントログファイルの複数のブロックの各々の誤り検出符号を取得する誤り検出符号取得ステップと、前記カレントログファイルの複数のブロック内の各々のデータを圧縮するデータ圧縮ステップとを含み、前記誤り検出符号取得手段によって得られた前記複数のブロック各々の誤り検出符号、及び前記圧縮手段によってデータ圧縮された前記複数のブロック各々の圧縮後サイズを、前記複数のブロックのブロック番号に対応付けて成る一覧情報をカレントログファイルのブロック管理情報として記録するブロック管理情報取得ステップと、データ圧縮された歴代のログファイルを管理するためのログファイル保存管理情報に含まれる保存ログブロック管理情報と、前記カレントログファイルのブロック管理情報とを比較し、前記誤り検出符号値または前記圧縮後サイズに相違が有るブロックを差分ブロックとして抽出する差分ブロック判定ステップと、前記差分ブロックの前記圧縮手段によるデータ圧縮を解凍すると共に、前記差分ブロック内で差分を有するレコードのレコード位置を判定するブロック内差分位置取得手段と、前記ブロック内差分位置取得手段が取得した差分情報に基づいて、前記データ圧縮された歴代のログファイルを更新し、保管するログ保存ステップと、を有することを特徴とするログファイル管理方法を提供するものである。
【発明の効果】
【００１４】
本発明に係るログファイル管理システムは、元のログファイルのサイズが大きい場合でも、事前に定義しておいた固定ブロックサイズの２個分（比較先と比較元の分）の一時領域を用意するだけで差分を有するレコードの抽出が可能であり、また、複数のファイルの比較を多重度を上げて同時処理する場合にも、同時実行する数に比例した領域を確保するだけで処理できることになり、さらに、分割したブロック単位で差分比較を行うため、ファイル全体に対してレコード比較を行う必要がなく、最後の差分を有するブロック１つ分のみを比較するだけで効率的に差分レコードを抽出することができる効果がある。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係るログファイル管理システムの全体構成を示す構成図である。
【図２】本実施形態のログファイル管理システムにおいてログファイルのレコード情報の記録方法を示す説明図である。
【図３】本実施形態のログファイル管理システムにおいて追加ログが存在するブロックを特定する場合の処理動作を示す説明図である。
【図４】本実施形態のログファイル管理システムにおいて追加ログレコードを抽出する場合の処理動作を説明する説明図である。
【図５】本発明の実施形態に係るログファイル管理システムの動作手順を示すフローチャート図である。
【図６】本発明の他の実施形態に係るログファイル管理システムの１構成例を示す構成図である。
【発明を実施するための形態】
【００１６】
本発明に係るログファイル管理システムは、追加ログレコードの抽出方法として、まず、ログファイルを複数のブロックに分割して管理を行い、ログファイル中の追加レコードを少ないディスク容量で抽出する。より具体的には、本発明に係るログファイル管理システムでは、ログファイルを一定の固定サイズのブロックに分割して管理を行う。
また、ログファイルから差分レコードを抽出するためには、圧縮保存されたファイルを元のログファイルの形式に復元して比較処理を行う必要があるが、本発明に係るログファイル管理システムでは、ログファイルを固定長サイズのブロックに分割し、該分割したログファイルの単位で圧縮管理及び差分比較処理を行うことにより、復元のために必要となる一時領域の容量の増大を抑制している。
【００１７】
さらに、ブロック分割して圧縮したファイルを、纏めて１つのログファイルとして保存管理することを行う。ログファイルの管理情報として、ブロック分割した各ファイルの誤り検出符号（チェックサム値、ＣＲＣ、ハッシュ値等）と、圧縮後ブロックサイズと、最終ログレコードの出力位置の情報とを記憶しておくが、この管理情報を用いて、元ログ形式に復元して差分レコードを抽出する必要のあるブロックを特定することができる。
具体的には、各ブロック単位の誤り検出符号と圧縮後ブロックサイズとを、保存ログファイルの管理情報の誤り検出符号と圧縮後ブロックサイズと比較することで、これらの情報が一致しないものは追加レコードが含まれたブロックと判断できる。よって、この管理情報に相違点が有ったブロックを、追加保存対象のブロックとして抽出している。
【００１８】
ログレコードは連続して記録されるため、追加レコードの含まれたブロックも連続することになる。この連続するブロックの先頭と末尾のブロックには、既に保存管理済みのログレコードが存在する可能性があるが、中間のブロックはすべて追加ログレコードで構成されたブロックと判断することができるので、ブロック内差分抽出の処理対象から除外できる。
管理情報に相違点が有った先頭と末尾のブロックに対しては、保存ログから対応する圧縮ブロックを取り出し、そのブロックを復元して差分比較を行い、追加レコードを抽出することができる。
【００１９】
本発明に係るログファイル管理システムにおける上記のログ管理手段では、追加レコードの抽出において必要となる圧縮ファイルの復元のための一時領域のサイズは、１ファイルにつき１ブロック分で十分であるため、関連する既成のシステムのように、元のログのファイルサイズに依存した一時領域を確保する必要がなくなる。さらに、サイズの大きな複数のログファイルの差分比較処理を、多重度を上げて同時に実行する場合にも、必要となる一時保存領域の容量を少なくすることが可能となる。
【００２０】
以下、本発明のログファイル管理システムの実施形態について、図面を参照して説明する。
図１は、本発明の実施形態に係るログファイル管理システムの全体構成を示す構成図である。
同図において、本実施形態のログファイル管理システムは、カレントログファイル１０１と、ブロック管理情報取得機能部１０２と、追加ログレコード取得機能部１０９と、ログファイル保存管理情報１１９と、ログ保存機能部１１８と、を備えて構成される。
【００２１】
ここで、ブロック管理情報取得機能部１０２は、ブロック分割機能部１０４と、チェックサム取得機能部１０５（誤り検出符号取得取得手段）と、ブロック圧縮機能部１０６と、を備える。
また、追加ログレコード取得機能部１０９は、差分ブロック判定機能部１１０と、ブロック内差分抽出機能部１１２と、を備える。
【００２２】
ここで、ブロック内差分抽出機能部１１２は、圧縮ブロック復元機能部１１３と、ブロック内差分位置取得機能部１１５と、最終収集ログ管理情報更新機能部１１７と、を備える。
【００２３】
なお、ログファイル保存管理情報１１９は、保存対象ログ管理情報１２０と、保存ログブロック管理情報と、最終更新ブロック情報１２２と、を含んで構成されている。
以下、本実施形態のログファイル管理システムが有する機能を各構成要素毎に説明する。但し、以下では、符号付きの情報の各々については、該情報に対応する記憶部が存在するものとして、「〜情報に保存する」または「〜情報に記録する」、或いは「〜情報に保持する」といった表現は、該情報を対応する該記憶部に格納することを意味するものとする。
カレントログファイル１０１は、保存・管理を行う対象となるログファイルであり、追加ログレコードを抽出する対象となるログファイルである。
ブロック管理情報取得機能部１０２は、カレントログファイル１０１から、ブロック管理情報１０７を生成する。
【００２４】
ブロック分割機能部１０４は、カレントログファイル１０１を固定長ブロックに分割し、カレントログ分割ブロック１０３を生成する。
チェックサム取得機能部１０５は、カレントログ分割ブロック１０３のチェックサム値を計算し、ブロック管理情報１０７に値を保存する。
ブロック圧縮機能部１０６は、カレントログ分割ブロック１０３を圧縮し、カレントログ圧縮ブロック１０８を生成し、圧縮後のサイズをブロック管理情報１０７に保存する。
追加ログレコード取得機能部１０９は、ログ保存機能部１１８により、カレントログファイル１０１をログファイル１２３として蓄積管理する。
【００２５】
ログファイル保存管理情報１１９は、保存対象となるログファイルを管理するための保存対象ログ管理情報１２０、ブロック単位で差分比較するための保存ログブロック管理情報１２１、及び最終更新ブロック情報１２２の情報を含む。
差分ブロック判定機能部１１０は、ブロック管理情報１０７の情報と、ログファイル保存管理情報１１９の情報とを比較し、差分が存在するブロックを、差分ブロック情報１１１に記録する。
ブロック内差分抽出機能部１１２は、差分ブロック情報１１１に記録されたブロックに対して、ブロック内の差分レコード位置を判定する。
圧縮ブロック復元機能部１１３は、ログファイル１２３のログ圧縮保存ブロック１２４を比較元ログブロック１２５に復元し、カレントログ圧縮ブロック１０８をカレントログ差分ブロック１１４に復元する。
【００２６】
ブロック内差分位置取得機能部１１５は、復元された２つのブロック内で追加レコードの先頭位置と終端位置を取得し、差分位置情報１１６に保持する。
最終収集ログ管理情報更新機能部１１７は、差分ブロック情報１１１と、差分位置情報１１６とを参照し、ログファイル保存管理情報１１９を更新する。
【００２７】
図５は、本発明の実施形態に係るログファイル管理システムの動作手順を示すフローチャート図である。
以下、図１を参照しながら、図５に示すフローチャートを使用して、本実施形態のログファイル管理システムの動作を説明する。
（ステップＳ１）
ステップＳ１では、ブロック管理情報取得機能部１０２は、カレントログファイル１０１を読み込み、差分管理に必要なブロック管理情報１０７を生成する。
（ステップＳ２）
ステップＳ２では、ブロック分割機能部１０４は、カレントログファイル１０１を読み込み、ログファイル保存管理情報１１９に指定されたブロックサイズにより、ブロック分割を行い、カレントログ分割ブロック１０３を生成する。
【００２８】
（ステップＳ３）
ステップＳ３では、チェックサム取得機能部１０５は、カレントログ分割ブロック１０３を読み込み、チェックサム値を分割ブロック単位に取得し、ブロック管理情報１０７に保存する。さらに、読み込んだカレントログ分割ブロック１０３を、ブロック圧縮機能部１０６により、ブロック単位に圧縮し、カレントログ圧縮ブロック１０８を生成すると共に、圧縮後のブロックサイズをブロック管理情報１０７に保存する。
ここで、カレントログ分割ブロック１０３として圧縮されたブロックは、ブロック管理情報１０７と関連付けて、ログ保存機能部１１８により、蓄積管理する。
【００２９】
（ステップＳ４）
ステップＳ４では、差分ブロック判定機能部１１０は、ログ保存機能部１１８で管理している前回収集ログの情報である保存ログブロック管理情報１２１を取得し、ブロック管理情報１０７と情報（内容）の比較を行う。この情報比較において、管理情報に保存されているチェックサム値と圧縮後サイズが一致しないものについては、差分レコードの存在するブロックと判断し、該ブロックのブロック番号を差分ブロック情報１１１に保存する。
一般に、ログ出力は連続して記録されるため、追加ログレコードが記録されて差分が発生したブロックにも連続性が存在する。分割したブロック内の全てのログレコードが追加ログレコードである場合は、前記の差分比較を行う必要がない。管理情報で差分の有った連続したブロック番号において、先頭と末尾のブロック番号のみがブロック内に追加ログレコードが一部含まれるブロックであり、ブロック内で差分レコードを抽出する必要のあるブロックである。
【００３０】
但し、追加ログレコードの先頭レコードが存在する先頭の差分ブロックは、最終更新ブロック情報１２２に記録された保存ログにおける末尾レコード位置からブロック終端までが追加ログと判断できる。
（ステップＳ５）
ステップＳ５では、上記の理由により、追加ログレコードの末尾レコードが存在する末尾の差分ブロックのみを対象にして、ブロック内差分抽出機能部１１２により、末尾レコードの位置を特定する。
【００３１】
（ステップＳ６）
ステップＳ６では、ブロック内差分抽出機能部１１２では、差分ブロック情報１１１から、末尾ブロック番号を取得し、カレントログ圧縮ブロック１０８から、対応する圧縮ブロックを取り出す。取り出した圧縮ブロックは、圧縮ブロック復元機能部１１３により、テキストなどの元の形式のログファイルに復元し、カレントログ差分ブロック１１４に一時保存する。
（ステップＳ７）
ステップＳ７では、さらに圧縮ブロック復元機能部１１３は、ログ保存機能部１１８により、保存管理しているログ圧縮保存ブロック１２４から、末尾ブロック番号に対応する圧縮ブロックを取得し、比較元ログブロック１２５に一時保存する。
【００３２】
（ステップＳ８）
ステップＳ８では、ブロック内差分位置情報取得機能部１１５は、カレントログ差分ブロック１１４と、比較元ログブロック１２５とから、それぞれログレコードを取り出し、ログレコード単位での両者の差分比較を行う。このログレコード単位の差分比較は、ブロックの先頭から末尾までの全ての情報（内容）に渡って比較を行い、最後に検出された差分レコードの末尾位置を、差分ログレコードの末尾位置として差分位置情報１１６に記録する。
（ステップＳ９）
ステップＳ９では、差分ログ情報保存機能部１１７は、カレントログ圧縮ブロック１０８の差分レコードが存在するブロックを、ログ保存機能部１１８を介して保存ログファイル１２３に保存し、差分位置情報１１６に記録された差分ログレコード位置を、最終更新ブロック情報１２２に保存する。
【００３３】
図２は、本実施形態のログファイル管理システムにおいてログファイルのレコード情報の記録方法を示す説明図である。
以下、図２を参照し、具体例に基づいて本実施形態のログファイル管理システムの動作を説明する。
本実施形態のログファイル管理システムでは、サイクリックに上書きされるログについて、図２に示すようにレコード情報が記録されていく。
時刻Ｔ１のログファイル２０１は、ログファイルの上限サイズに達していない。この場合、前回の最終レコード位置から今回の最終レコード位置までが追加ログレコードであると簡単に判断できる。
【００３４】
時刻Ｔ２のログファイル２０２は、ログファイルサイズの上限サイズに達して、ファイル先頭からレコードが上書きされる例である。この場合の追加ログレコードは、ログファイルの末尾と先頭に分離して存在するが、末尾に追加されたレコードは、上限サイズに満たない場合の追加レコード抽出処理と同様に処理できる。ファイル先頭に存在する追加レコードは、前回保存されたログファイルとの内容比較を行うことで最終レコードの位置が特定できる。
【００３５】
時刻Ｔ３のログファイル２０３は、追加ログレコードの開始位置と終了位置が上書き保存されてファイル途中に存在する場合である。この時、追加ログレコードの開始位置は、時刻Ｔ２の最終レコード位置となるが、最終レコード位置を取得するためには、追加ログレコードの開始位置からレコード単位に前回保存されたログとの内容比較を行う必要がある。
ログファイルをブロック分割して処理することで、ログレコードの内容比較を行う範囲を特定し、ログ管理に要する処理時間を短縮することができる。以下、この点について詳説する。
【００３６】
時刻Ｔ３のログファイル２０３の例では、ブロック１とブロック５は差分レコードが存在しないブロックとして比較処理対象から除外でき、ブロック３も全て追加ログが記録されたブロックであるため、比較対象から除外できる。ブロック２は、次のブロックに追加ログレコードが記録されているため、前回保存された最終レコード位置からブロック末尾までが、追加ログレコードと判断できる。このため、差分ブロックの末尾となるブロック４のみに対して内容比較の処理を行えばよいことになる。
【００３７】
図３は、本実施形態のログファイル管理システムにおいて追加ログが存在するブロックを特定する場合の処理動作を示す説明図である。
以下、図３を参照し、追加ログが存在するブロックを特定する場合の処理動作について説明する。
ここでは、カレントログファイル３０１については、図２に示す時刻Ｔ３のログファイル２０３のように、ファイル途中に追加ログレコードが存在する場合を例にして説明する。まず、カレントログファイル１０１は、ブロック分割機能部１０４により、ログファイル保存管理情報１１９で指定された固定サイズでもってブロック分割を行い、カレント分割ブロック１０３に一時保存する。
【００３８】
次に、カレント分割ブロック１０３に保存されたブロック１〜５を、チェックサム取得機能部１０５により、ブロック単位で、チェックサム値を取得して、ブロック管理情報１０７に該チェックサム値を保存する。さらに、チェックサム値を取得したブロックに対してブロック圧縮機能１０６により、ファイルを圧縮してカレントログ圧縮ブロック１０８に保存し、圧縮後のファイルサイズを、ブロック管理情報１０７に保存する。
このブロック管理情報１０７の情報は、次回の差分レコード比較のために使用するので、ログ保存機能により、情報（内容）を保存するものである。
【００３９】
カレントログ分割ブロック１０３に保存された５つのブロック全てに対する、ブロック管理情報１０７の情報設定の処理が完了すると、差分ブロック判定機能部１１０は、前回差分レコード抽出時に保存された情報である保存ログブロック管理情報１２１を取得し、ブロック管理情報１０７の情報とで、ブロック単位に内容を比較する処理を行う。
【００４０】
図３に示す例では、ブロック２〜４に追加ログレコードが出力されているため、このブロック２〜４に対応したブロック管理情報１０７のチェックサム値と、圧縮後サイズの値とは、前回保存管理されたログの情報である保存ログブロック管理情報１２１の各値とは異なる。そこで、差分ブロック判定機能部１１０の処理結果として、差分ブロック情報１１１に、ブロック２、ブロック３、及びブロック４に差分があったことが記録される。
なお、追加ログレコードが出力されるブロックは、ブロック２〜４と連続するため、先頭と末尾のブロック番号の間のブロックとなるブロック３は、ブロック全体が追加レコードで構成されたものであると判断することができるので、差分比較する必要がない。
また、連続するブロックの先頭であるブロック２は、前回収集して保存されたときに追加ログレコードの末尾位置が保存されているため、その位置からブロック末尾までを追加レコードとして管理することができる。
【００４１】
図４は、本実施形態のログファイル管理システムにおいて追加ログレコードを抽出する場合の処理動作を説明する説明図である。
以下、図４を参照して、本実施形態のログファイル管理システムにおいて追加ログレコードを抽出する場合の処理動作について説明する。但し、時刻Ｔ３のログファイル２０３（図２）と同じように、レコード＃００２１〜＃００２５の追加ログレコードがブロック２〜４に出力されている場合の例で説明する。
【００４２】
管理情報の内容比較により、差分ブロック情報４０４には、ブロック２、ブロック３、及びブロック４に差分が有ることが記録され、この差分の有る連続したブロックにおいて、末尾ブロックとなるブロック４が差分比較の対象であることが記録されている。
そこで、圧縮ブロック復元機能部１１３は、差分ブロック情報１１１から、差分比較対象であるブロック４の情報を取得し、カレントログを分割管理しているカレントログ分割ブロック１０８を取得し、さらに、収集したログを蓄積保存管理しているログ圧縮保存ブロック１２４からは対応するブロックを取得し、元のログ形式に復元する。ここで、カレントログはカレントログ差分ブロック１１４に復元し、保存管理されているログは比較元ログブロック１２５に復元する。
【００４３】
次に、ブロック内差分位置取得機能部１１５は、復元されたカレントログ差分ブロック１１４と、比較元ログブロック１２５とに対しては、両者のファイル内容をレコード単位で比較する。
図４に示す例では、カレントログ差分ブロック１１４内のブロック４のレコード＃００２５と、比較元ログブロック１２５内の同じくブロック４のレコード＃００１０とで違いがあるため、ブロック内差分位置取得機能部１１５は、差分位置情報１１６に、差分有りレコードのブロック番号（即ち「４」）を記録すると共に、追加レコードの終端位置として、カレントログ差分ブロック１１４内のブロック４のレコード＃００２５の末尾位置（即ち「４」）を一時保存する。次のレコードの比較では、両ブロック共レコード＃００１１であり、内容が一致するため、次のレコード比較処理を続けて行う。次のレコードも、両ブロック共レコード＃００１２であって内容が一致し、しかも、ブロック終端となったため比較処理を終了する。
【００４４】
上記のブロック内差分位置情報取得機能１１５のレコード比較処理が終了した時点では、差分位置情報１１６には、差分位置情報として、差分有りレコードのブロック番号（即ち「４」）と、終端位置（即ち「Offset-T3」）が記録されている。
【００４５】
この実施形態に係るログファイル管理システムによれば、元のログファイルのサイズが大きな場合であっても、事前に定義しておいた固定ブロックサイズの２個分（比較先の分と、比較元の分）の一時領域が有りさえすれば、差分抽出（差分有りレコードの抽出）を行うことができる。
また、複数のファイルに対して、差分抽出のための比較を多重度を上げて同時実行処理することが可能であり、この場合にも、同時実行処理するファイル数分だけの一時領域を確保するだけで同時実行処理することができる。
【００４６】
さらに、分割したブロック単位で差分比較を行うため、ファイル内の全ブロックに渡ってレコード比較を行う必要がなく、最後の差分の有ったブロック１つ分のレコードのみを比較するだけでよいため、効率的に差分レコードを抽出することができる。
なお、ここでは、誤り検出符号としてチェックサムを用いたが、一般に、本発明の誤り検出符号は、チェックサムとは限らず、例えば、ＣＲＣやハッシュ値を用いることができる。
【００４７】
（他の実施の形態）
本発明は他の実施形態が可能であり、以下、本発明の他の実施形態の１つを説明する。図６は、本発明の他の実施形態に係るログファイル管理システムの１構成例を示す構成図である。同図は、複数のサーバ装置（以下、単に「サーバ」と略称する）に存在するログファイルを管理サーバで収集して一元保存管理する場合の構成例を示している。
【００４８】
図６に示す本発明の他の実施形態に係るログファイル管理システムの１構成例は、ログ収集対象サーバＡ５０１と、ログ収集対象サーバＢ５０２との２台のサーバのログを、ログ管理サーバ５０３で管理する構成例を示すものであり、図１に示した本発明の実施形態の機能が、各サーバに分担されていると共に、サーバ間で情報転送を行うためにデータ転送機能部５０４が追加されている。この点を除いては、図１に示した本発明の実施形態の構成と同じである。
データ転送機能部５０４は、ブロック管理情報を転送するための管理情報転送機能部５０５と、追加ログが保存された圧縮ブロックを転送するための圧縮ブロック転送機能部５０６とを備える。
【００４９】
以下、図６を参照して、本発明の他の実施形態に係るログファイル管理システムの１構成例の動作を説明する。
ログ収集対象のサーバ内のブロック管理情報取得機能部１０２は、収集対象となるカレントログファイル１０１を、固定長ブロックに分割し、ブロック管理情報１０７と、カレントログ分割ブロック１０８とを生成する。
ログ収集対象サーバ内のブロック管理情報取得機能部１０２が生成したブロック管理情報１０７は、管理情報転送機能部５０５を介してログ管理サーバ５０２に転送し、ログ管理サーバ側の差分ブロック判定機能部１１０において、差分を有するブロックか否かを判断する。
【００５０】
ログ管理サーバ５０３の追加ログレコード取得機能部１０９は、圧縮ブロック転送機能部５０６を介して、カレントログ圧縮ブロック１０８に保存されている差分の有ったブロックのみを取得する。取得した差分ブロックの末尾ブロックのみをブロック内差分抽出機能１１２の処理対象とし、他の差分ブロックはログ保存機能部１１８により、ログファイル１２３に履歴として保存管理する。
なお、末尾ブロックに対する差分ログレコードの抽出処理であるブロック内差分抽出機能部１１２の動作は、図１に示す実施形態と同様である。
【００５１】
この実施形態によれば、ログ収集対象サーバＡ５０１から、ログ管理サーバ５０３に転送するログデータは、ログファイル全体を圧縮したものではなく、差分の有ったブロックのみを圧縮したものだけを転送することになり、複数のサーバのログを管理サーバで一元管理する場合のデータ転送量を削減できるという新たな効果を有する。
【００５２】
上述のログファイル管理システムは内部に、コンピュータシステムを有している。そして、上述した各機能部の動作は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【００５３】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【産業上の利用可能性】
【００５４】
本発明は、システムの運用ログや、セキュリティアクセスログなど、ログファイルの保存管理を行う分野に好適に適用可能である。また、ログファイル以外にも、時間の経過に伴ってデータが追記される態様のデータ（例えば映像データ）の保存管理にも好適に適用することができる。
【符号の説明】
【００５５】
１０１  カレントログファイル
１０２  ブロック管理情報取得機能部
１０３  カレントログ分割ブロック
１０４  ブロック分割機能部
１０５  チェックサム取得機能部
１０６  ブロック圧縮機能部１０６
１０７  ブロック管理情報
１０８  カレントログ圧縮ブロック
１０９  追加ログレコード取得機能部
１１０  差分ブロック判定機能部
１１１  差分ブロック情報
１１２  ブロック内差分抽出機能部
１１３  圧縮ブロック復元機能部
１１４  カレントログ差分ブロック
１１５  ブロック内差分位置取得機能部
１１６  差分位置情報
１１７  最終収集ログ管理情報更新機能部
１１８  ログ保存機能部
１１９  ログファイル保存管理情報
１２０  保存対象ログ管理情報
１２１  保存ログブロック管理情報
１２２  最終更新ブロック情報
１２３  ログファイル
１２４  ログ圧縮保存ブロック
１２５  比較元ログブロック
５０１  ログ収集対象サーバＡ
５０３  ログ管理サーバ
５０４  データ転送機能部
【図１】
2010257330.tif 000003
【図２】
2010257330.tif 000004
【図３】
2010257330.tif 000005
【図４】
2010257330.tif 000006
【図５】
2010257330.tif 000007
【図６】
2010257330.tif 000008