(57)【特許請求の範囲】
【請求項１】
コンピュータ上で実行される一又は複数のアプリケーションに係る動作ログであって前記コンピュータからの指令に基づいて当該コンピュータの状態確認用として順次入力された動作ログを保持すると共に、当該ＦＩＦＯ循環式バッファ手段に既に保持されており且つ前記入力された動作ログと同じアプリケーションに係る動作ログの内の最先の動作ログが最新の前記動作ログの取得のタイミングで順次送出されるＦＩＦＯ循環式バッファ手段と、
このＦＩＦＯ循環式バッファ手段から受取った前記最先の動作ログについて当該動作ログに記録されている情報の内前記コンピュータの状態の確認に必要な情報の占める度合いを示す詳細レベルが予め設定された外部に出力されるべき動作ログにかかる前記詳細レベルの最小値を示す第一の最小ログレベル以下である場合に当該動作ログを前記コンピュータの状態確認に必要な情報として外部に出力するログ振分機能を備えたフィルタリング手段と、
前記アプリケーション毎に設定される前記最小ログレベルにかかる情報をフィルタリング情報として保持するフィルタリング情報記憶手段とを有するログ出力装置において、
前記フィルタリング手段に、
前記フィルタリング手段により前記詳細レベルが前記最小ログレベルよりも大きいと判断された動作ログを一時的に格納するログ一時保存メモリを併設すると共に、前記ログ一時保存メモリに保持されている動作ログの中から前記コンピュータの状態確認に必要なものを再抽出する基準である再抽出基準を関連性情報として保持する関連性情報記憶手段を併設し、
前記フィルタリング手段が、
前記ログ一時保存メモリの内の動作ログについて前記再抽出基準に基づいて出力可否の再確認を行い、この再確認の結果出力すべきと判定がなされた当該動作ログについて外部に出力する拡張振分機能を備えたことを特徴とするログ出力装置。
【請求項２】
請求項１に記載のログ出力装置において、
前記フィルタリング手段の拡張振分機能が、前記ログ一時保存メモリの内の動作ログについてその詳細レベルが前記第一の最小ログレベルよりも高く設定された第二の最小ログレベル以下であるものを抽出すると共に、更にこの抽出された動作ログの中から前記第一の最小ログレベルによる動作ログの出力範囲をその前後の特定の時間帯に生成された動作ログにまで拡張して再抽出し外部に出力することにより実行されることを特徴とするログ出力装置。
【請求項３】
請求項１に記載のログ出力装置において、
前記ＦＩＦＯ循環式バッファ手段内の動作ログの内の最新のものを取得すると共に当該動作ログの内容を前記フィルタリング情報及び前記再抽出基準の内容と比較し且つ前記内容の合致の度合いに基づいて前記再抽出基準の内容を更新する再抽出基準更新機能を備えた関連性情報管理手段を、前記関連性情報記憶手段に併設したことを特徴とするログ出力装置。
【請求項４】
請求項３に記載のログ出力装置において、
前記フィルタリング手段の拡張振分機能が、前記ログ一時保存メモリから抽出された動作ログの中から前記第一の最小ログレベルによる動作ログの出力範囲をその前後の特定の時間帯に生成された動作ログにまで拡張して再抽出し外部に出力することにより実行されるものであり、
且つ、前記関連性情報管理手段の再抽出基準更新機能が、
前記再抽出基準について、前記最新の動作ログの生成時刻を前記特定の時間帯の中に含まない再抽出基準を削除する削除機能と、
前記特定の時間帯の中に前記最新の動作ログの生成時刻を含む再抽出基準について、その特定の時間帯にかかる内容を前記最新の動作ログの位置にかかる情報の内容に基づいて修正する修正機能と、
前記フィルタリング情報の内その内容が前記最新の動作ログの内容を満たすものを抽出すると共に、この抽出されたフィルタリング情報の内容に基づいて新たな再抽出基準を作成し前記関連性情報記憶手段に格納する新基準作成格納機能とから成り立つことを特徴とするログ出力装置。
【請求項５】
請求項１に記載のログ出力装置において、
前記ＦＩＦＯ循環式バッファ手段への動作ログの保持方式を制御するバッファ設定手段を前記ＦＩＦＯ循環式バッファ手段に併設したことを特徴とするログ出力装置。
【請求項６】
請求項１に記載のログ出力装置において、
前記フィルタリング情報記憶手段に保持される前記フィルタリング情報を外部からの指令内容に基づき設定するフィルタリング情報設定手段を前記フィルタリング情報記憶手段に併設したことを特徴とするログ出力装置。
【請求項７】
請求項１に記載のログ出力装置において、
前記フィルタリング手段から出力用として受取った動作ログを予め前記アプリケーション毎に指定された動作ログ格納用メモリに格納するログファイル出力手段を前記フィルタリング手段に併設したことを特徴とするログ出力装置。
【請求項８】
請求項５に記載のログ出力装置において、
前記バッファ設定手段が、予め扱っている動作ログにかかるアプリケーションとは異なる別のアプリケーションにかかる動作ログが前記ＦＩＦＯ循環式バッファ手段に入力された場合にこれを同一に保持させるよう制御する機能を有し、
前記フィルタリング手段の拡張振分機能が、前記最新の動作ログが前記最先の動作ログと異なるアプリケーションにかかる動作ログである場合に前記最新の動作ログに基づいて更新された前記再抽出基準に基づいて実行されることを特徴とするログ出力装置。
【請求項９】
請求項１又は８に記載のログ出力装置において、
前記フィルタリング手段の拡張振分機能が、前記再抽出基準を満たす前記動作ログが予め設定した個数存在する場合に前記動作ログを出力するようにしたことを特徴とするログ出力装置。
【請求項１０】
コンピュータ上で実行される一又は複数のアプリケーションに係る動作ログを前記コンピュータからの指令に基づいて当該コンピュータの状態確認用としてＦＩＦＯ循環式バッファ手段に入力すると共に、当該ＦＩＦＯ循環式バッファ手段に既に保持されており且つ前記入力された動作ログと同じアプリケーションに係る動作ログの内の最先の動作ログを後から入力される最新の前記動作ログの入力のタイミングで送出し、
この送出された前記最先の動作ログを受け取ったフィルタリング手段が当該動作ログについて、外部に出力されるべき動作ログを振分ける基準である最小ログレベルに基づき出力可否の一回目の確認を行い、
前記フィルタリング手段が前記出力可否の一回目の確認の結果出力すべきと判定した場合に、当該動作ログを前記フィルタリング手段が外部に出力するログ出力方法において、
前記フィルタリング手段が前記出力可否の一回目の確認の結果出力すべきでないと判定した場合に、当該フィルタリング手段による動作ログの外部への出力に代えて前記最先の動作ログを、前記フィルタリング手段がログ一時保存メモリに一時的に格納し、
前記フィルタリング手段による前記最先の動作ログの一時的格納の後、前記ＦＩＦＯ循環式バッファ手段に保持された直後の最新の動作ログを予め設定された関連性情報管理手段が取得し、
この取得された最新の動作ログの内容を予め設定された動作ログの外部への出力範囲を規定したフィルタリング情報及び前記ログ一時保存メモリに格納された動作ログの中から前記コンピュータの状態確認に必要なものを再抽出する基準である再抽出基準の内容と前記関連性情報管理手段が比較すると共に、前記各内容の合致の度合いに基づいて前記再抽出基準の内容を前記関連性情報管理手段が更新し、
前記関連性情報管理手段による更新の後、この更新された前記再抽出基準に基づいて前記ログ一時保存メモリ内の動作ログについて前記フィルタリング手段が出力可否の再確認を行い、
前記フィルタリング手段が出力可否の再確認の結果出力すべきと判定した場合、前記動作ログを外部に出力することを特徴とするログ出力方法。
【請求項１１】
請求項１０に記載のログ出力方法において、
前記関連性情報管理手段が前記再抽出基準の内容を更新する工程では、
前記最新の動作ログの位置情報を含まない基準にかかる再抽出基準を削除し、
次に、前記再抽出する基準の中に前記最新の動作ログの位置情報が含まれる再抽出基準について前記再抽出する基準にかかる内容を前記最新の動作ログの位置情報の内容に基づいて修正し、
続いて、前記最新の動作ログの内容と前記フィルタリング情報の内容との比較を行うと共に、前記最新の動作ログの内容を満たすと判定したフィルタリング情報を抽出し且つその内容に基づいて新規な再抽出基準を作成し関連性情報として保存するようにしたことを特徴としたログ出力方法。
【請求項１２】
請求項１０に記載のログ出力方法において、
前記ＦＩＦＯ循環式バッファ手段に前記動作ログが入力される工程では、予め扱っている動作ログにかかるアプリケーションとは異なる別のアプリケーションにかかる動作ログが入力された場合にこれが前記ＦＩＦＯ循環式バッファ手段に同一に保持され、
前記フィルタリング手段が前記最先の動作ログの出力可否の再確認を行う工程では、前記最新の動作ログが前記最先の動作ログと異なるアプリケーションにかかる動作ログである場合に、前記関連性情報管理手段が前記再抽出基準の内容を更新する工程にて前記最新の動作ログに基づいて更新された前記再抽出基準に基づいて前記最先の動作ログについて出力可否の再確認を行うことを特徴とするログ出力方法。
【請求項１３】
請求項１０又は１２に記載のログ出力方法において、
前記最先の動作ログを前記フィルタリング手段が再抽出し外部に出力する工程では、前記最小ログレベルによる動作ログの出力範囲をその前後の特定の時間帯に生成された動作ログにまで拡張した前記出力範囲に生成時間が含まれる動作ログが予め設定された個数存在する場合に前記フィルタリング手段が当該動作ログを出力するようにしたことを特徴とするログ出力方法。
【請求項１４】
コンピュータ上で実行される一又は複数のアプリケーションに係る動作ログを当該コンピュータの状態確認用としてＦＩＦＯ循環式バッファ手段へ入力すると共に当該ＦＩＦＯ循環式バッファ手段に既に保持されており且つ前記入力された動作ログと同じアプリケーションに係る動作ログの内の最先の動作ログを後から入力される最新の前記動作ログの入力のタイミングで順次送出する最先ログ送出機能、この最先ログ送出機能により送出された前記最先の動作ログについて外部に出力されるべき動作ログを振分ける基準である最小ログレベルに基づき出力可否の一回目の確認を行うログ出力可否検討機能、及びこのログ出力可否検討機能による確認の結果前記最先の動作ログを出力すべきと判定がなされた場合に当該動作ログを外部に出力するログ出力機能をログ出力装置のコンピュータに実現させるログ出力用プログラムにおいて、
前記ログ出力可否検討機能による確認の結果、前記最先の動作ログを出力すべきでないと判定がなされた場合に、前記最先の動作ログをログ一時保存メモリに一時的に格納する非出力ログ一時格納機能、
この非出力ログ一時格納機能により前記最先の動作ログが格納された後に、前記ＦＩＦＯ循環式バッファ手段に保持された直後の最新の動作ログを予め設定された関連性情報管理手段が取得する最新ログ取得機能、
この最新ログ取得機能により取得された前記最新の動作ログの内容を予め設定された動作ログの外部への出力範囲を規定したフィルタリング情報及び前記ログ一時保存メモリに格納された動作ログの中から前記コンピュータの状態確認に必要なものを再抽出する基準である再抽出基準の内容と比較すると共に、前記各内容の合致の度合いに基づいて前記再抽出基準の内容を更新する再抽出基準更新機能、
この再抽出基準更新機能により更新された前記再抽出基準の内容に基づいて、前記ログ一時保存メモリ内の動作ログについて出力可否の再確認を行うログ出力可否再検討機能、
及びこのログ出力可否再検討機能による再確認により出力すべきと判定された場合、前記動作ログを外部に出力するログ再出力機能、
を、コンピュータに実現させるようにしたことを特徴とするログ出力用プログラム。
【請求項１５】
請求項１４に記載のログ出力用プログラムにおいて、
前記再抽出基準更新機能は、
前記再抽出基準について前記最新の動作ログの生成時刻を特定の時間帯の中に含まない再抽出基準を削除する不要再抽出基準削除機能、
この不要再抽出基準削除機能にて削除されなかった再抽出基準についてその特定の時間帯にかかる内容を前記最新の動作ログの位置にかかる情報の内容に基づいて修正する再抽出基準修正機能、
及び前記最新の動作ログの内容と前記フィルタリング情報の内容との比較を行うと共に、前記最新の動作ログの内容を満たすと判定されたフィルタリング情報を抽出し且つその内容に基づいて新たな再抽出基準を作成し前記関連性情報として保存する新規再抽出基準作成機能を備え、
これらをコンピュータに実現させるようにしたことを特徴とするログ出力用プログラム。
【請求項１６】
請求項１４に記載のログ出力用プログラムにおいて、
前記最先ログ送出機能の内容を、
前記実行内容に加えて更に、予め扱っている動作ログにかかるアプリケーションとは異なる別のアプリケーションにかかる動作ログが入力された場合にこれを前記ＦＩＦＯ循環式バッファ手段に同一に保持する機能とし、
前記ログ出力可否再検討機能の内容を、
前記実行内容に加えて更に、前記最新の動作ログが前記最先の動作ログと異なるアプリケーションにかかる動作ログである場合に、前記再抽出基準更新機能にて前記最新の動作ログに基づいて更新された前記再抽出基準に基づいて前記最先の動作ログについて出力可否の再確認を行う機能とし、
これらを、コンピュータに実現させるようにしたことを特徴とするログ出力用プログラム。
【請求項１７】
請求項１４又は１６に記載のログ出力用プログラムにおいて、
前記ログ再出力機能の内容を、
前記最小ログレベルによる動作ログの出力範囲をその前後の特定の時間帯に生成された動作ログにまで拡張した範囲に生成時間が含まれる動作ログが予め設定された個数存在する場合に当該動作ログを出力する機能とし、
これを、コンピュータに実現させるようにしたことを特徴とするログ出力用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログ出力装置、ログ出力方法及びログ出力用プログラムに関し、特に動作ログの出力条件を自動的に変更することによりアプリケーションソフトウェアを実行するコンピュータの障害調査に必要な動作ログを効果的に出力することができるログ出力装置、ログ出力方法及びログ出力用プログラムに関する。
【背景技術】
【０００２】
銀行のオンラインシステムのようにビジネス目的で使用されるアプリケーションソフトウェア（以下、アプリケーション）は、常時、コンピュータ上で安定に実行されることが求められる。何故ならば、仮に上記アプリケーションや上記コンピュータに何らかの障害が発生したために上記アプリケーションが長期に亘り実行不能となった場合、当該アプリケーションを利用する多くの顧客に影響が及ぶと共に当該アプリケーションを運営する企業は甚大な被害を受けるからである。
【０００３】
そのため、上記アプリケーションに何らかの障害が発生したときは、可能な限り迅速にその原因を調査及び解明し、安定な状態に戻す必要がある。そこで、上述した障害原因の調査を迅速且つ的確に実行する手法として、上記アプリケーションがコンピュータに実行させた処理の履歴を記録したデータである動作ログを利用する手法がある。
【０００４】
この手法は、上記動作ログを外部に出力することで取得すると共に、その中に記録されている様々な情報から上記障害を引き起こした原因を読み取り、それを基に上記アプリケーションの改善を行うというものである。例えば、アプリケーションに何らかの障害が発生すると、アプリケーションソフトはその障害に対処する何らかの処理をコンピュータに実行させる。そこで、その処理の内容が記録された動作ログの内容を確認して、上記障害の原因究明の資料として用いるのである。
【０００５】
ここで、生成される上記動作ログは、その全てが上記障害の原因調査に有用なものであるとは限らない。何故ならば、障害の発生していない所謂平常時における動作ログには障害に関係性のある情報は記録されない上、及び上記アプリケーションがコンピュータに実行させる処理の内容は、例えばシステム管理者のログインに関する情報のように、上記障害の発生と関係性のある処理とは限らないからである。
【０００６】
そのため、上記障害の原因調査に際しては、上記障害の発生と何らかの関係性のある情報が記録された動作ログだけを取得する必要がある。上記障害に関係性のある情報が記録されていない動作ログ（即ち、上記コンピュータが安定に稼動している時の動作ログ）は、たとえ取得しても障害の原因究明に何ら寄与しないだけでなく、そのような動作ログまで取得することにより手許にある多数の動作ログの中から障害調査に有用な動作ログを選別するという負担をシステム管理者に課すことになるからである。更には、上述のような障害調査に不要な動作ログまで出力させることにより、動作ログ保存用メモリの容量を超える動作ログが上記コンピュータを中心とするシステム内に溢れることとなり、結果として、上記アプリケーションの動作そのものに影響を及ぼす危険もあるからである。
【０００７】
ここで、実際に上記動作ログへの情報記録に関する設定及び上記動作ログの外部への出力を行うに当っては、通常は以下のような手順で実行されている。
一般的に上記アプリケーションは、動作ログにどの程度まで情報を記録するかについてはシステム管理者に設定を委ねている。当該設定においてシステム管理者は、平常時においては動作ログ格納用のメモリの容量を圧迫させないために動作ログには障害情報のように重要度の高い情報のみ記録させる（即ち、動作ログに記録させる情報の詳細度を低くする）よう設定する。更にシステム管理者は、実際に障害が発生したときには原因究明に用いるときのことを考慮し動作ログには様々な情報を記録させる（即ち、動作ログに記録させる情報の詳細度を高くする）よう設定変更する。
【０００８】
そして、実際に障害が発生した後に動作ログを出力するときは、上記障害に関係する情報が記録されていると考えられる動作ログだけを出力させるため、システム管理者は動作ログの出力条件として基準（どの程度の詳細度の動作ログを出力させるかという内容）を設定する。具体的には、或る詳細度（出力可否の基準となる詳細度）より高い詳細度の動作ログだけを出力するように設定する。実際に障害が発生した後の詳細度の高い動作ログは当該障害に関する情報を始め様々な情報が記録されているため迅速且つ的確な障害原因究明に大きく寄与するからである。
【０００９】
上述した手法により必要な動作ログだけを出力させるようにするためには、上記アプリケーションを実行するコンピュータに、上記動作ログの出力可否判断を行うと共に出力すべきと判断した動作ログだけを外部に出力する装置（以下、ログ出力装置）を併設するやり方がある。
【００１０】
このログ出力装置を用いることにより、システム管理者は、予め上記動作ログの出力可否の条件（基準）を設定し登録しておくことで障害調査に有用な動作ログだけを取得することができるようになる。
【００１１】
ここで、上述したログ出力装置のように、多数ある動作ログの中から有用なものだけを選択して出力することができる内容の関連技術については、以下に挙げるものがある。
【００１２】
先ず、特許文献１に開示された技術は、障害の調査に用いるために外部に出力する動作ログについて、その出力対象となる箇所（出力対象となる時点）をシステム管理者の所望する箇所に限定することができるロギングシステムに関する技術である。本技術により、障害調査に不要な動作ログを出力せず、必要な動作ログだけを出力することができるようになり、システム管理者は的確に障害調査を実行することができるようになる。
【００１３】
次に、特許文献２に開示された技術は、動作ログの出力条件を動的に変更させることができるログ管理方法に関する技術である。本技術により、従来は動作ログの出力条件を変更する際にはアプリケーションの実行を一時停止させる必要があったのが、上記アプリケーションを停止させることなく動作ログの出力条件を動的に変更できるようになる。これにより、希望する動作ログを確実に出力できるようになり、その結果、システム管理者は的確に障害調査を実行することができるようになる。
【００１４】
続いて特許文献３に開示された技術は、ログ出力装置に関する技術である。本技術にかかるログ出力装置は、アプリケーションに障害が発生する直前に当該アプリケーションにかかる動作ログの出力条件を変更することができるため、これにより、障害の原因の追究に必要な動作ログを確実に出力することができるようになる。
【００１５】
続いて特許文献４に開示された技術は、トランザクション処理のロギングを行うためのシステムに関する技術である。本技術により、アプリケーションにかかる動作ログについて、生成された全てを外部に出力するのではなく障害発生の条件に合致する動作ログのみを出力できるよう前記動作ログの出力条件を動的に変化させることができるため、システム管理者は障害調査に必要な動作ログのみを効果的に取得でき、前記障害調査を的確に実行できるようになる。
【００１６】
続いて特許文献５に開示された技術は、ログ情報記録装置に関する技術である。本技術により、アプリケーションにかかる動作ログの内障害が発生した後の所定時間内に生成された動作ログについて、前記障害と関連付けがなされた情報を記録した前記ログについてはメモリに保存をすると共に前記障害と関連付けがなされた情報が記録されていない前記動作ログについては削除することができる。これにより、前記障害の調査に必要な動作ログを効果的に取得することができ、その結果、システム管理者は的確に障害調査を実行できるようになる。
【００１７】
最後に、特許文献６に開示された技術は、アプリケーションにかかる動作ログ取得装置に関する技術である。本技術は、大量に出力された動作ログを効果的に格納する事でアプリケーションの不安定化を防ぐ目的にかかる関連技術であり、当該動作ログ取得装置はその内部に多数の動作ログが存在する場合にそれら動作ログを保持するメモリを内部に備えている。このメモリにより、大量の動作ログが一箇所に滞ることによりアプリケーションの動作が不安定化することを防ぐことができるようになる。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】特開２００４−０９４３７４号公報
【特許文献２】特開２００４−１５２０２４号公報
【特許文献３】特開２００９−１１０１５６号公報
【特許文献４】再公開ＷＯ２００７０７４６８０号公報
【特許文献５】特開平１１−２３２１４５号公報
【特許文献６】特開２００５−２９２９３２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１９】
しかしながら、上述した各特許文献に開示された技術には、以下に述べる問題点があった。
先ず、上記特許文献１に開示された技術は、前記障害が発生した時点が特定されているケースを前提としており、例えば障害が発生した時点が変化することにより特定できないようなケースでは本技術は適用できないという問題点がある。
【００２０】
次に、上記特許文献２及び特許文献３に開示された技術は、あくまでシステム管理者の手によって動作ログの出力条件を変更することが前提となっている。その結果、本技術はこれから生成される（未来の）動作ログの出力にしか適用されないため、既に生成されている動作ログを効果的に出力させることは不可能であるという問題点がある。
【００２１】
次に、上記特許文献４に開示された技術は、情報を前記動作ログに記録するか否かの判定（即ち、その情報が前記障害の発生と関係しているか否かの判断）はその情報にかかる処理におけるコンピュータの応答時間の長さで判定している。そのため、前記アプリケーションの動作が恒常的に遅い場合（例えば、前記アプリケーションを実行するコンピュータのマシンパワーが低い場合）には、障害とは関係ない情報のみが記録された動作ログに関しても障害情報が記録されているものと誤認する恐れがあるという問題点がある。
【００２２】
次に、上記特許文献５に開示した技術は、前記障害が発生した後の動作ログにしか適用がなされず、前記障害が発生する直前の動作ログは出力させることができないため、前記障害の調査に必要な動作ログを完全に出力させることは難しいという問題点がある。
【００２３】
最後に、上記特許文献６に開示された技術は、前記メモリに保持する対象となる動作ログは前記動作ログ取得装置内にて必要な処理が実行された後の動作ログ（即ち、出力直前の動作ログ）である。そのため、例えば頻繁に前記動作ログを生成しているようなケースでは、一度に大量の動作ログを取得した場合に前記処理を実行する手段に動作ログが次々に滞留することによるアプリケーションの動作の不安定化は防ぐことができないという問題点がある。
【００２４】
以上述べた上記各関連技術に共通する問題点は、動作ログの出力可否にかかる判断基準の設定がシステム管理者を始めとする人間の手だけに委ねられるため、臨機応変に上記出力可否の判断基準を設定できないということである。
上記出力可否の判断が人間の手だけに委ねられると、実際に障害の発生した後に生成された動作ログは出力させることは可能であるが、上記障害が発生する直前の動作ログに関しては詳細度が低いため外部に出力させることができないからである。
【００２５】
さらに、この障害が発生する直前の動作ログには上記障害と関係のある情報が記録されている可能性が高い。何故ならば、上記障害が発生するにはその原因となる何らかの外的要因が上記アプリケーション及び上記コンピュータに加わっているため、当該外的要因に対する対処処理を上記コンピュータが実行している可能性が高いからである。
ここで、上記障害が発生する直前の動作ログは上述した出力可否の基準を低く設定することにより外部に出力させることは可能ではある。しかし、そのように設定すると障害調査に不要な動作ログ（即ち、上記障害に関する情報がまったく記録されていない動作ログ）までもが出力されてしまうという問題点がある。
【００２６】
［発明の目的］
そこで本発明は、上述した課題である障害発生以前に生成された動作ログについて出力できないという従来の問題点を改善し、上記障害調査に有用な動作ログを前記障害発生時の前後に生成された動作ログの中から可能な限り漏れなく且つ効果的に出力することができるログ出力システム、ログ出力方法及びログ出力用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２７】
上記目的を達成するため、本発明にかかるログ出力システムでは、コンピュータ上で実行される一又は複数のアプリケーションに係る動作ログであって前記コンピュータからの指令に基づいて当該コンピュータの状態確認用として順次入力された動作ログを保持すると共に、既に保持されている最先の動作ログが最新の前記動作ログの取得のタイミングで順次送出されるＦＩＦＯ循環式バッファ手段と、このＦＩＦＯ循環式バッファ手段から受取った前記最先の動作ログについて当該動作ログに記録されている情報の内前記コンピュータの状態の確認に必要な情報の占める度合いを示す詳細レベルが予め設定された外部に出力されるべき動作ログにかかる前記詳細レベルの最小値を示す第一の最小ログレベル以下である場合に当該動作ログを前記コンピュータの状態確認に必要な情報として外部に出力するログ振分機能を備えたフィルタリング手段と、前記アプリケーション毎に設定される前記最小ログレベルにかかる情報をフィルタリング情報として保持するフィルタリング情報記憶手段とを有するログ出力装置において、前記フィルタリング手段に、前記フィルタリング手段により前記詳細レベルが前記最小ログレベルよりも大きいと判断された動作ログを一時的に格納するログ一時保存メモリを併設すると共に、前記ログ一時保存メモリに保持されている動作ログの中から前記コンピュータの状態確認に必要なものを再抽出する基準である再抽出基準を関連性情報として保持する関連性情報記憶手段を併設し、前記フィルタリング手段が、前記ログ一時保存メモリの内の動作ログについてその詳細レベルが前記第一の最小ログレベルよりも高く設定された第二の最小ログレベル以下であるものを抽出すると共に、更にこの抽出された動作ログの中から前記第一の最小ログレベルによる動作ログの出力範囲をその前後の特定の時間帯に生成された動作ログにまで拡張して再抽出し外部に出力する拡張振分機能を備えたことを特徴とする。
【００２８】
又、上記目的を達成するため、本発明にかかるログ出力方法では、コンピュータ上で実行される一又は複数のアプリケーションに係る動作ログを前記コンピュータからの指令に基づいて当該コンピュータの状態確認用としてＦＩＦＯ循環式バッファ手段に入力すると共に、既に保持されているデータの内の最先の動作ログを後から入力される最新の前記動作ログの入力のタイミングで送出し、この送出された前記最先の動作ログを受け取ったフィルタリング手段が当該動作ログについて、外部に出力されるべき動作ログを振分ける基準である最小ログレベルに基づき出力可否の一回目の確認を行い、前記フィルタリング手段が前記出力可否の一回目の確認の結果出力すべきと判定した場合に、当該動作ログを前記フィルタリング手段が外部に出力するログ出力方法において、前記フィルタリング手段が前記出力可否の一回目の確認の結果出力すべきでないと判定した場合に、当該フィルタリング手段による動作ログの外部への出力に代えて前記最先の動作ログを、前記フィルタリング手段がログ一時保存メモリに一時的に格納し、前記フィルタリング手段による前記最先の動作ログの一時的格納の後、前記ＦＩＦＯ循環式バッファ手段に保持された直後の最新の動作ログを予め設定された関連性情報管理手段が取得し、この取得された最新の動作ログの内容を予め設定された動作ログの外部への出力範囲を規定したフィルタリング情報及び前記ログ一時保存メモリに格納された動作ログの中から前記コンピュータの状態確認に必要なものを再抽出する基準である再抽出基準の内容と前記関連性情報管理手段が比較すると共に、前記各内容の合致の度合いに基づいて前記再抽出基準の内容を前記関連性情報管理手段が更新し、前記関連性情報管理手段による更新の後、この更新された前記再抽出基準に基づいて前記ログ一時保存メモリ内の動作ログについて前記フィルタリング手段が出力可否の確認を行い、前記フィルタリング手段が出力可否の確認の結果出力すべきと判定した場合、前記動作ログを外部に出力することを特徴とする。
【００２９】
更に、上記目的を達成するため、本発明にかかるログ出力用プログラムでは、コンピュータ上で実行される一又は複数のアプリケーションに係る動作ログを当該コンピュータの状態確認用としてＦＩＦＯ循環式バッファ手段へ入力すると共に、既に保持されているデータの内の最先の動作ログを後から入力される最新の前記動作ログの入力のタイミングで順次送出する最先ログ送出機能、この最先ログ送出機能により送出された前記最先の動作ログについて、外部に出力されるべき動作ログを振分ける基準である最小ログレベルに基づき出力可否の一回目の確認を行うログ出力可否検討機能、及びこのログ出力可否検討機能による確認の結果、前記最先の動作ログを出力すべきと判定がなされた場合に、当該動作ログを外部に出力するログ出力機能をログ出力装置のコンピュータに実現させるログ出力用プログラムにおいて、前記ログ出力可否検討機能による確認の結果、前記最先の動作ログを出力すべきでないと判定がなされた場合に、前記最先の動作ログを、ログ一時保存メモリに一時的に格納する非出力ログ一時格納機能、この非出力ログ一時格納機能により前記最先の動作ログが格納された後に、前記ＦＩＦＯ循環式バッファ手段に保持された直後の最新の動作ログを予め設定された関連性情報管理手段が取得する最新ログ取得機能、この最新ログ取得機能により取得された前記最新の動作ログの内容を予め設定された動作ログの外部への出力範囲を規定したフィルタリング情報及び前記ログ一時保存メモリに格納された動作ログの中から前記コンピュータの状態確認に必要なものを再抽出する基準である再抽出基準の内容と比較すると共に、前記各内容の合致の度合いに基づいて前記再抽出基準の内容を更新する再抽出基準更新機能、この再抽出基準更新機能により更新された前記再抽出基準の内容に基づいて、前記ログ一時保存メモリ内の動作ログについて出力可否の確認を行うログ出力可否再検討機能、及び、このログ出力可否再検討機能による確認により出力すべきと判定された場合、前記動作ログを外部に出力するログ再出力機能を、コンピュータに実現させるようにしたことを特徴とする。
【発明の効果】
【００３０】
本発明は、上述したように、自動的に作成されると共に常に最適な状態に更新される第二の出力可否条件が存在するため、上記障害調査に有用な動作ログであるにも拘らず一回目の出力可否の判断において出力しないと判定された動作ログに対し上記第二の出力可否条件に基づき二回目の判定を行うことにより上記障害調査に有用な動作ログを可能な限り漏れなく且つ効果的に出力することができる優れたログ出力システム、ログ出力方法及びログ出力用プログラムを提供することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明にかかるログ出力装置の第１実施形態の構成を示すブロック図である。
【図２】図１に示すログ出力装置のＦＩＦＯ循環式バッファ手段の内容について示す説明図である。
【図３】本発明にかかる動作ログに記録されている情報について示す説明図である。
【図４】図１に示すログ出力装置のフィルタリング情報記憶手段に保持されている情報について示した説明図である。
【図５】図１に示すログ出力装置の関連性情報記憶手段に保持されている情報について示した説明図である。
【図６】図１に示すログ出力装置の全体の動作を示すフローチャートである。
【図７】図６に示すログ出力装置の動作の内、ステップＳ１０１乃至Ｓ１０５及びＳ１０８乃至Ｓ１１２の工程の詳細を示すフローチャートである。
【図８】図７に示すログ出力装置の動作の続きを示すフローチャートである。
【図９】図６に示すログ出力装置の動作の内、ステップＳ１０７の工程の詳細を示すフローチャートである。
【図１０】図９に示すログ出力装置の動作の続きを示すフローチャートである。
【図１１】図１０に示すログ出力装置の動作の続きを示すフローチャートである。
【図１２】本発明にかかるログ出力装置の第２実施形態の構成を示すブロック図である。
【図１３】本発明にかかるログ出力装置の第３実施形態におけるフィルタリング情報記憶手段に保持されている情報について示す説明図である。
【発明を実施するための形態】
【００３２】
以下、本発明にかかるログ出力装置の各実施形態を、図１乃至図１３に基づいて説明する。
【００３３】
［第１の実施形態］
先ず、本発明の第一実施形態について、図１乃至図１１に基づいて説明する。
【００３４】
［全体的構成］
図１において、符号１は本第一実施形態にかかるログ出力装置、記号Ｐはビジネス用途や公共目的に使用されているアプリケーション（例えば、銀行のオンラインシステムにかかるソフトウェア）、符号３は前記アプリケーションＰを実行するコンピュータ、及び符号４は前記ログ出力装置１から出力された動作ログを格納する動作ログ格納用メモリを示す。この動作ログ格納用メモリ４は、上記アプリケーションＰ毎に領域を分別して上記動作ログを格納できるようになっている。
【００３５】
次に、上記ログ出力装置１の構成について、以下説明する。
上記ログ出力装置１は、図１に示すように、生成された動作ログを一時的に保持した後に送出するＦＩＦＯ循環式バッファ手段１１と、このＦＩＦＯ循環式バッファ手段１１に於ける動作ログの保持形式を外部より設定するバッファ設定手段１７と、前記ＦＩＦＯ循環式バッファ手段１１から送出された動作ログに対し外部へ出力するか否かの振り分け（以下、フィルタリング）を行うフィルタリング手段１２と、前記フィルタリング手段１２により出力するものと判断された動作ログを外部にログファイルとして出力するログファイル出力手段１４とを備えている。これにより、アプリケーションにかかる動作ログの内必要なものだけを選択して外部に出力することができる。
【００３６】
又、上記ログ出力装置１は、図１に示すように、前記フィルタリング手段１２による動作ログのフィルタリングの条件にかかる情報を保持するフィルタリング情報記憶手段２０と、システム管理者により作成された上記フィルタリングの条件にかかる情報を上記フィルタリング情報記憶手段２０に入力し設定するフィルタリング情報設定手段１５とを備えている。これにより、上記動作ログの外部への出力可否の判定基準をシステム管理者により適宜作成及び修正することができ、上記アプリケーションＰを使用する業務内容に合わせて動作ログを出力するための条件を臨機応変に設定することができる。
【００３７】
更に、上記ログ出力装置１は、図１に示すように、上記フィルタリング手段１２にて出力しないと判断された動作ログを一時的に格納するログ一時保存メモリ１３と、このログ一時保存メモリ１３に格納されている動作ログについて二回目のフィルタリングの条件にかかる情報を保持する関連性情報記憶手段３０と、この関連性情報記憶手段３０に保持されている上記二度目の振り分けの条件にかかる情報を最適な内容に更新する関連性情報管理手段１６とを備えている。これにより、本来なら出力すべきものであるにもかかわらず一回目のフィルタリングにおいて出力されないものと判断された動作ログについて再度フィルタリングを行うことで外部に出力させることができるようになる。
【００３８】
ここで本第１実施形態における上記動作ログには、図３に示すように、その動作ログにかかるアプリケーションを識別するためのアプリケーションＩＤ２ａ、その動作ログが生成された時刻２ｂ、その動作ログに情報がどれだけ詳細に記録されているかを示す詳細レベル２ｃ、及び障害発生にかかる情報や外部からのアクセス履歴にかかる情報等アプリケーションの状態や上記コンピュータが処理した内容を表すメッセージ２ｄの各情報が記録されている。
【００３９】
次に、上記ログ出力装置１を構成する各手段について詳述する。
先ず、上記ＦＩＦＯ循環式バッファ手段１１は、アプリケーションＰがコンピュータの演算処理部２に生成・送出させた最新の動作ログが当該コンピュータから入力されるとその動作ログを内部に一時的に保持する。そして、前記最新の動作ログが保持されるタイミングで、既に保持されている動作ログ群の内最先のものが上記フィルタリング手段１２へ送出される。その後、取得したばかりの前記最新の動作ログがその位置情報と共に上記関連性情報管理手段１６により取得される。
【００４０】
本実施形態において、上記ＦＩＦＯ循環式バッファ手段１１は、図３に示すように、最新の動作ログを保持するタイミングで既に保持している動作ログの内最先のものを送出する機能が有効（オン）か無効（オフ）かを設定するスイッチ１１Ａ、当該バッファ手段１１内に保持されている動作ログの内最も新しく生成されたものの位置情報を示す最新ログ位置１１Ｂ、当該バッファ１１内に保持されている動作ログの内最も早く生成されたものの位置情報を示す最先ログ位置１１Ｃ、動作ログを保持するバッファ部１１Ｄ、及び前記スイッチ１１Ａがオンのときに当該バッファ手段１１の一連の動作を実行するバッファ管理部１１Ｅから成る。ここで、上記バッファ管理部１１Ｅが実行する一連の動作とは、最新の動作ログを取得し、そのタイミングで最先の動作ログを上記フィルタリング手段１２へ送出し、その後バッファ部１１Ｄの内容を現在のものに更新した後に、前記最新の動作ログを上記関連性情報管理手段１６へと送出する動作である。
【００４１】
又、上記バッファ部１１Ｄには、ｎ個の動作ログが生成された順（ＦＩＦＯ循環式バッファ手段１１に入力された順）に保持されている。図３において、最先の動作ログを「ログ１」１１Ｄ１、最新の動作ログを「ログｎ」１１Ｄｎとすると、更に新しい動作ログ（上記ログｎより一つ新しい動作ログ）を上記バッファ手段１１が取得することによりこの動作ログが上記バッファ部１１Ｄに格納され、そのタイミングで上記ログ１が送出される。
【００４２】
その後、バッファ部１１Ｄに保持されている動作ログは、上記バッファ管理部１１Ｅにより、「ログ２」１１Ｄ２がログ１の位置に、「ログ３」１１Ｄ３がログ２の位置にというように順次移動される。そして「ログｎ」１１ＤｎがログＤｎ−１の位置に移動された後に、上記更に新しい動作ログがログｎの位置に格納される。
【００４３】
そして、上記バッファ管理部１１Ｅにより、上記最新ログ位置１１Ｂの内容が上記更に新しい動作ログの位置情報に更新されると共に、上記最先ログ位置１１Ｃの内容を上述したログ２からログ１へ移動された動作ログの位置情報に更新される。
【００４４】
次に、上記バッファ設定手段１７は、上記ＦＩＦＯ循環式バッファ手段１１の設定及び制御をシステム管理者による外部からの入力に従って行う機能を有する。これにより、上記スイッチ１１Ａのオンオフの設定や上記バッファ部１１Ｄに於ける動作ログの保持容量や保持形式の設定を外部から行うことができる。
【００４５】
次に、上記フィルタリング手段１２は、上記ＦＩＦＯ循環式バッファ手段１１から送出された動作ログを取得すると共に、この取得した動作ログについて外部へ出力するか否かを判別するフィルタリング機能を有する。本第１実施形態においてこのフィルタリング手段１２は、動作ログについてのフィルタリングを行うときは、上記フィルタリング情報記憶手段２０又は上記関連性情報記憶手段３０に保持されている情報を取得すると共にその情報の内容に基づいて上記フィルタリングを実行する。
【００４６】
次に、上記フィルタリング情報記憶手段２０は、上記フィルタリング手段１２による動作ログのフィルタリングの条件にかかる情報を保持する。この条件は、或るアプリケーションＩＤをもつ動作ログについて外部に出力するか否かの基準を規定する情報である最小ログレベル情報と予め設定した条件と合致した動作ログが生成された時点（時刻）の前後に生成された他の動作ログを出力しようとするときの各条件を定めたフィルタリング情報とから成る。上記最小ログレベル情報は、上記アプリケーション毎に設定がなされている。上記フィルタリング情報は、そのフィルタリング条件の内容を識別するためのフィルタＩＤを有しており、このフィルタＩＤ毎に設定がなされている。
【００４７】
次に、上記フィルタリング情報設定手段１５は、システム管理者による外部からの入力に従って、予めシステム管理者により作成された内容で上記最小ログレベル情報及びフィルタリング情報を設定する機能を有する。
【００４８】
次に、上記ログ位置時保存メモリ１３は、上記フィルタリング手段１２による一回目のフィルタリングに於いて外部に出力しないと判断された動作ログを一時的に格納する。これにより、本来出力されるべきものであるにも拘らず上記一回目のフィルタリングにて出力しないと判別された動作ログを削除せずに再度のフィルタリングを実行させることが可能となる。
【００４９】
次に、上記ログファイル出力手段１４は、前記フィルタリング手段１２により出力するものと判断された動作ログを外部に出力する機能を有する。具体的にこのログファイル出力手段１４は、出力すべき動作ログをテキストファイル等のファイル（ログファイル）型式に変換すると共に上記動作ログ格納用メモリ３に送信し且つ当該メモリ３に上記アプリケーション毎に設けられた格納領域の内の適切な領域に格納する。
【００５０】
次に、上記関連性情報記憶手段３０は、ログ一時保存メモリ１３に格納されている動作ログ（即ち、一度目のフィルタリングにて出力しないものと判断された動作ログ）について上記フィルタリング手段１２により行われる二度目のフィルタリングの条件にかかる情報を保持する。当該条件は、上記メモリ１３に格納されている動作ログが上記フィルタリング情報の内容とどのように合致しているかを示すマッチング状況から成る。このマッチング状況は上記アプリケーションやフィルタリング方法毎に設定されており、これらマッチング状況の全てのリストである関連性情報として保持されている。
【００５１】
最後に、上記関連性情報管理手段１６は、関連性情報記憶手段３０に保持されている上記マッチング状況の内容を最適な内容に更新する機能を有する。これにより、二度目のフィルタリングにて、有用な動作ログを効果的に抽出することができるようになる。
【００５２】
［フィルタリング情報記憶手段２０に保持されている情報の詳細］
次に、上記フィルタリング情報記憶手段２０に保持されている情報の内容について、図４に基づいて詳述する。
上記フィルタリング情報記憶手段２０には、上記フィルタリング手段１２による一回目の動作ログのフィルタリングに於いて出力するか否かの基準を規定する最小ログレベル情報２２のリスト２１と、外部に出力すべきと判定がなされた動作ログと前後して生成された近傍の動作ログ（以下、詳細動作ログ）について、どの範囲まで出力させるかを規定した情報であるフィルタリング情報２３Ａのリスト２３とが保持されている。
【００５３】
ここで上記最小ログレべル情報２２はアプリケーションＩＤ毎に設定がなされており、最小ログレベル情報リスト２１は各アプリケーションＩＤにかかる最小ログレベル情報２１１、２１２、・・・、２１ｎを一つにまとめたものである。同様に上記フィルタリング情報２３Ａは、フィルタＩＤ毎に設定がなされており、フィルタリング情報リスト２３は各フィルタＩＤにかかるフィルタリング情報２３１、２３２、・・・、２３ｎを一つにまとめたものである。
【００５４】
又、上記最小ログレベル情報２２は、その最小ログレベルに対応しているアプリケーションを識別する情報であるアプリケーションＩＤ２２ａと、出力すべき動作ログにかかる詳細レベルの基準（条件）を規定する情報であるログ出力レベル２２ｂとから成る。
【００５５】
更に、上記フィルタリング情報２３Ａは、予めシステム管理者により設定された条件の内容に合致する動作ログを外部に出力する旨定めた規則にかかる情報であるマッチング規則２４と、上記マッチング規則２４にかかる条件と合致した動作ログと前後して生成された他の動作ログについて出力しようとするときの当該他の動作ログのアプリケーションＩＤと出力レベルと上記前後して生成された範囲を定めた情報である出力規則２６とから成る。ここで、上記出力規則２６はその出力規則の内容を識別するための出力規則ＩＤを有すると共にこの出力規則ＩＤ毎に設定がなされている。又、出力規則のリスト２５は、各出力規則ＩＤにかかる出力規則２５１、２５２、・・・、２５ｎを一つにまとめたものである。
【００５６】
又、上記マッチング規則２４は、このマッチング規則が適用される対象となるアプリケーションを識別するためのアプリケーションＩＤ２４ａ、及び或る動作ログが生成された時点（時刻）の前後に生成された動作ログについて出力する必要があるか否かの判断を上記動作ログのメッセージ欄２ｄに記録されたメッセージの内容に基づいて判定をするための関数であるマッチング条件２４ｂから成る。このマッチング条件２４ｄの内容の一例として、該当するアプリケーションのエラーコード、文字列、クラスを含んだ正規表現がある。
【００５７】
更に、上記出力規則２６は、この出力規則が適用される対象となるアプリケーションを識別するための（即ち、詳細動作ログを出力するアプリケーションを識別するための）アプリケーションＩＤ２６ａ、上記マッチング規則２４の条件に合致した動作ログ（以下、焦点動作ログ）及びこの動作ログの前後に生成された他の動作ログの内出力すべき詳細動作ログの最大の出力基準であるログ出力レベル２６ｂ、上記焦点動作ログの生成時点を基点として上記詳細動作ログを出力する範囲を定めた情報であるログ出力範囲の内前方における動作ログ（即ち、上記焦点動作ログの生成時点よりも前に生成された詳細動作ログ）についての適用範囲を示すログ出力範囲（前）２６ｃ、及び前記ログ出力範囲の内後方における動作ログ（即ち上記焦点動作ログの生成時点よりも後に生成された詳細動作ログ）についての適用範囲を示すログ出力範囲（後）２６ｄから成る。
【００５８】
ここで上記ログ出力範囲（前）２６ｃ及びログ出力範囲（後）２６ｄは、上記マッチング規則２４の条件に合致した焦点動作ログの生成時点を基点としたログ量又は時間、若しくは閾となるマッチング規則を指定することができる。例えばログ量を指定した場合は、前記基点からの差が当該ログ量を超えなければ、上記ログ出力範囲内であることを表すものとする。又、時間を指定した場合は、前記基点の時刻からの差（時間差）が当該時間を越えなければ上記ログ出力範囲内であることを表すとする。更に、マッチング規則を指定した場合は、前記焦点動作ログから、時間的に前方向若しくは後方向に当該マッチング規則を満たす詳細動作ログが出現するまでの範囲を、上記ログ出力範囲であるとする。
【００５９】
［関連性情報記憶手段３０に保持されている情報の詳細］
次に、上記関連性情報記憶手段３０に保持されている情報である上記マッチング状況の詳細な内容について、図５に基づいて詳述する。
【００６０】
先ず、上記マッチング状況３１は、当該マッチング状況の存在理由となるフィルタリング情報２３ＡにおけるフィルタＩＤの内容を示すフィルタＩＤ３１ａ、このフィルタＩＤ３１ａと同じフィルタＩＤにかかる上記フィルタリング情報２３Ａに含まれる出力規則２６の出力規則ＩＤの内容を示す出力規則ＩＤ３１ｂ、この出力規則ＩＤ３１ｂと同じ出力規則ＩＤにかかる出力規則２６におけるアプリケーションＩＤの内容を示すアプリケーションＩＤ３１ｃ、前記出力規則２６におけるログ出力レベル２６ｂの内容を示すログ出力レベル３１ｄ、二回目のフィルタリングにおいて動作ログの出力対象範囲にかかる先頭位置を示すログ出力先頭位置３１ｅ、当該マッチング状況が存在する契機となった動作ログの位置を示すマッチング位置３１ｆ、二回目のフィルタリングにおいて動作ログの出力対象範囲にかかる末尾位置を示すログ出力末尾位置３１ｇ、及び前記出力規則ＩＤ３１ｂと同じ出力規則ＩＤにかかる出力規則２６におけるログ出力範囲（後）２６ｄ内においてマッチング条件（合致条件）２４ｂと合致した回数を記録するログ出力マッチングカウンタ３１ｈとから成る。
【００６１】
ここで上記マッチング状況３１はフィルタＩＤ、出力規則ＩＤ、及びアプリケーションＩＤ毎に設定がなされており、マッチング状況のリストは各ＩＤにかかるマッチング状況３１１、３２２、・・・、３２ｎを一つにまとめたものである。
【００６２】
［フィルタリング手段１２による動作ログのフィルタリングについて］
次に、上記フィルタリング手段１２により行われる動作ログのフィルタリングについて、更に設明する。
先ず、上記フィルタリング手段１２は、上記ＦＩＦＯ循環式バッファ手段１１から送信されてきた上記最先の動作ログを取得すると共に、上記フィルタリング情報記憶手段２０から上記最小ログレベル情報のリスト２１を取出す。
【００６３】
続いて上記フィルタリング手段１２は、取得した上記最先の動作ログのアプリケーションＩＤ２ａを確認し、前記最小ログレベル情報のリスト２１の中から同じアプリケーションＩＤ２２ａにかかる最小ログレベル情報２２を抽出する。
【００６４】
続いて上記フィルタリング手段１２は、取得した上記最先の動作ログの詳細レベル２ｃの内容と、抽出した前記最小ログレベル２２のログ出力レベル２２ｂの内容とを比較する。
この比較の結果、上記詳細レベル２ｃが上記ログ出力レベル２２ｂ以下である場合、当該動作ログは出力すべきものと判断し、上記ログファイル出力手段１４へ上記フィルタリング手段１２によって送信される。
【００６５】
一方、上記比較の結果、上記詳細レベル２ｃが上記ログ出力レベル２２ｂより大きい場合は、当該動作ログは上記ログ一時保存メモリ１３に一時的に格納される。
このとき上記フィルタリング手段１２は、先程上記ログ一時保存メモリ１３に一時的に格納した動作ログを取出すと共に、上記関連性情報記憶手段３０から上記マッチング状況を取出す。次いで上記フィルタリング手段１２は、この動作ログのアプリケーションＩＤ２ａと同じアプリケーションＩＤ３１ｃを有するマッチング状況を、前記取出したマッチング状況群の中から抽出する。
【００６６】
次いでフィルタリング手段１２は、前記取出した動作ログの詳細レベル２ｃの内容と、抽出した上記マッチング状況のログ出力レベル３１ｄの内容とを比較する。
この比較の結果、上記詳細レベル２ｃが上記ログ出力レベル３１ｄ以下である場合、次にフィルタリング手段１２は、当該動作ログのログ位置にかかる情報と、抽出した上記マッチング状況のログ出力先頭位置３１ｅ及びログ出力末尾位置３１ｇの内容とを比較する。
【００６７】
この比較の結果、上記動作ログのログ位置が上記マッチング状況３１のログ出力先頭位置３１ｅとログ出力末尾位置３１ｇとの間に存在する場合、上記フィルタリング手段１２は、当該動作ログを出力すべきものとして上記ログファイル出力手段１４へと送信する。
【００６８】
又、上記マッチング状況３１のログ末尾位置３１ｇの内容が「未定」となっている場合は、上記フィルタリング手段１２は、上記動作ログのログ位置が上記マッチング状況のログ出力先頭位置３１ｅとマッチング位置３１ｆとの間に存在する場合に、上記フィルタリング手段１２は、当該動作ログを出力すべきものとして判断し、上記ログファイル出力手段１４へと送信する。
【００６９】
［関連性情報管理手段１６によるマッチング状況の更新機能］
次に、上記関連性情報管理手段１６による上記マッチング状況３１の内容の更新について、図２乃至５に基づいて更に説明する。
先ず、上記関連性情報管理手段１６は、上記ＦＩＦＯ循環式バッファ手段１１が送出した上記最新の動作ログをその位置情報と共に受取ると、次いで、関連性情報保管手段３０から、マッチング状況３１のリストを取得する。続いて、上記関連性情報管理手段１６は、そのアプリケーションＩＤ２ａの内容を確認し、同じアプリケーションＩＤにかかるマッチング状況３１を前記取得したマッチング状況３１のリストの中から抽出する。
【００７０】
次いで、上記関連性情報管理手段１６は、前記抽出したマッチング状況３１の全てについて、そのログ出力先頭位置３１ｅ及びログ出力末尾位置３１ｇの内容を確認する。その結果、前記ログ出力末尾位置３１ｇの内容が「未定」ではなく且つ上記最新の動作ログの位置情報を上記ログ出力先頭位置３１ｅからログ出力末尾位置３１ｇの範囲内に含まないマッチング状況３１が存在するとき、それらの全てを抽出し関連性情報保管手段３０から削除する。
【００７１】
次に、上記関連性情報管理手段１６は、取得した上記マッチング状況３１の内削除しなかったマッチング状況３１のログ出力レベル３１ｄの内容と上記最新の動作ログの詳細レベル２ｃの内容とを比較する。その結果、上記ログ出力レベル３１ｄが上記詳細レベル２ｃ以上であるマッチング状況３１を全て抽出する。
【００７２】
次いで、上記関連性情報管理手段は、上記抽出したマッチング状況３１について、そのフィルタＩＤ３１ａ、出力規則ＩＤ３１ｂ、及びアプリケーションＩＤ３１ｃを確認し、それら各ＩＤの全てが同一であるフィルタリング情報の全てを上記フィルタリング情報管理手段２０から取得する。
【００７３】
次に上記関連性情報管理手段１６は、上記抽出したマッチング状況３１のマッチング位置３１ｆの内容と上記取得したフィルタリング情報の出力規則２５に於けるログ出力範囲（後）２６ｄの内容とを比較する。
【００７４】
その比較の結果、上記関連性情報管理手段１６は、上記２６ｄにかかる範囲の中に上記マッチング位置３１ｆが含まれるマッチング状況３１全てを抽出すると共に、この抽出したマッチング状況３１のログ出力末尾位置３１ｇの内容を上記最新の動作ログの位置情報の内容に修正する。
【００７５】
ここで、上記フィルタリング情報のログ出力範囲（後）２６がログ量で指定されている場合は、マッチング状況３１のマッチング位置３１ｆを確認することにより、当該ログ出力範囲（後）２６ｄに含まれるかどうかを判定することが出来る。又、上記ログ出力範囲（後）２６ｄが時間で指定されている場合は、上記マッチング位置３１ｆが示すバッファ部１１Ｄの時刻２ｂを参照することにより、当該ログ出力範囲（後）２６ｄに含まれるかどうかを判定することが出来る。更に、上記ログ出力範囲（後）２６ｄがマッチング条件で指定されている場合は、受信した動作ログがそのマッチング条件に合致するかを判定すると共に合致する場合に当該出力規則２６のログ出力範囲（後）２６ｄに含まれるものとする。この場合、ログ出力末尾マッチングカウンタ３１ｈを「１」に設定する。
【００７６】
次に、上記関連性情報管理手段１６は、上記フィルタリング情報記憶手段２０に格納されているフィルタリング情報２３の内上記最新の動作ログ内の各データを満たすマッチング規則２４にかかるフィルタリング情報２３を抽出し、その内容（フィルタＩＤ、マッチング規則２４、及び出力規則２６の内容）に基づいて新規なマッチング状況を作成すると共に作成したマッチング状況を関連性情報として上記関連性情報記憶手段３０に格納する。
【００７７】
ここで、この関連性情報管理手段１６による新規なマッチング状況３１の作成における各項目の設定は、以下に述べる手順で実行する。
先ず、新規なマッチング状況３１に於けるフィルタＩＤ３１ａは、フィルタリング情報２３に於けるフィルタＩＤの内容に設定する。
次に、新規なマッチング状況３１に於ける出力規則ＩＤ３１ｂは、フィルタリング情報２３の出力規則に於ける出力規則ＩＤの内容に設定する。
【００７８】
続いて、新規なマッチング状況３１に於けるアプリケーションＩＤ３１ｃは、フィルタリング情報２３の出力規則２６に於けるアプリケーションＩＤ２６ａの内容に設定する。
続いて、新規なマッチング状況３１に於けるログ出力レベル３１ｄは、フィルタリング情報２３の出力規則２６に於けるログ出力レベル２６ｂの内容に設定する。
【００７９】
続いて、新規なマッチング状況３１に於けるログ出力先頭位置３１ｅは、フィルタリング情報２３の出力規則２６に於けるログ出力範囲（前）２６ｃを満たす範囲を、上記最新の動作ログの位置情報から最先の動作ログの位置情報１１Ｃに至るまでの範囲でバッファ部１１Ｄを前方検索し（１１Ｄ１に至ったら１１Ｄｎに戻る）、ログ出力範囲（前）２６ｃを満たす最前の動作ログの位置情報の内容に設定する。
【００８０】
続いて、新規なマッチング状況３１に於けるマッチング位置３１ｆは、上記最新の動作ログの位置情報に設定する。
続いて、新規なマッチング状況３１に於けるログ出力末尾位置３１ｇは、「未定」である旨の設定をする。
最後に、新規なマッチング状況３１に於けるログ出力マッチングカウンタ３１ｈは、「０」に設定する。
以上の手順により、新規なマッチング状況３１の設定を行う。
【００８１】
［第１の実施形態の動作］
次に、本第一実施形態におけるログ出力装置１の動作について、以下図６乃至図１１に基づいて説明する。
【００８２】
先ず、本第一実施形態における全体的な動作について、図６に基づいて説明する。
アプリケーションから動作ログを取得したＦＩＦＯ循環式バッファ手段１１は、その動作ログを内部のバッファ部１１Ｄに保持する（ステップＳ１０１）。
【００８３】
次いで、ＦＩＦＯ循環式バッファ手段１１は、既にバッファ部１１Ｄに保持されている動作ログの内、最先のものをフィルタリング手段に送信する（ステップＳ１０２、最先ログ送出工程）。
【００８４】
次に、上記最新の動作ログを取得したフィルタリング手段１２は、当該動作ログについて、フィルタリング情報記憶手段２０に保持されている最小ログレベル情報２１の内容に基づいて外部に出力するか否かの検討（フィルタリング）を行う（ステップＳ１０３、ログ出力可否検討工程）。
【００８５】
上記検討の結果、出力すべきであると判定がなされた場合（ステップＳ１０４）は、フィルタリング手段１２は当該動作ログをログファイル出力手段１４に送信し、次いでログファイル出力手段１４は受取った当該動作ログを外部に出力する（ステップＳ１１２、ログ出力工程）。
【００８６】
一方、上記検討の結果、出力すべきでないと判定がなされた場合（ステップＳ１０４）は、フィルタリング手段１２は当該動作ログを一時的にログ一時保存メモリ１３に格納する（ステップＳ１０５、非出力ログ一時格納工程）。
【００８７】
続いて、関連性情報管理手段１６が、ＦＩＦＯ循環式バッファ手段１１のバッファ部１１Ｄに保持されている動作ログの内、最新のもの（最も遅く生成されたもの）を取得する（ステップＳ１０６、最新ログ取得機能）。
【００８８】
次に、上記最新の動作ログを受取った関連性情報管理手段１６は、この動作ログの内容と上記フィルタリング情報保管手段に保持されているフィルタリング情報２３Ａの内容を比較し（最新ログ内容検討工程）、両者の合致の度合いに基づいて、上記関連性情報保管手段３０に保持されているマッチング手段の内容を更新し（ステップＳ１０７、再抽出基準更新工程）、関連性情報記憶手段３０に格納する（再抽出基準格納工程）。
【００８９】
続いて、フィルタリング手段１２が、上記ログ一時保存メモリ１３に格納されている動作ログを取得する（ステップＳ１０８）。
【００９０】
次いで、フィルタリング手段が、取得した上記動作ログについて、上記更新されたマッチング規則３１の内容に基づいて再度外部に出力するか否かの検討（フィルタリング）を行う（ステップＳ１０９、ログ出力可否再検討工程）。
【００９１】
上記検討の結果、出力すべきであると判定がなされた場合（ステップＳ１１０）は、フィルタリング手段１２は当該動作ログをログファイル出力手段１４に送信し、次いでログファイル出力手段１４は受取った当該動作ログを外部に出力する（ステップＳ１１２、ログ再出力工程）。
【００９２】
一方、上記検討の結果、出力すべきでないと判定がなされた場合（ステップＳ１１０）は、フィルタリング手段１２は当該動作ログを廃棄する（ステップＳ１１１、ログ廃棄工程）。
【００９３】
次に、上述した本第１実施形態の各工程の内、上記ＦＩＦＯ循環式バッファ手段１１による動作ログの取得及び送出する工程から上記フィルタリング手段１２による一回目及び二回目の動作ログのフィルタリングを行う工程（上記ステップＳ１０１乃至Ｓ１０５及びＳ１０８乃至Ｓ１１２）にかかる詳細な動作を図７及び図８に基づいて、及び上記関連性情報管理手段１６による上記マッチング状況の更新工程（上記ステップＳ１０７）にかかる詳細な動作を図９乃至図１１に基づいて、以下説明する。
【００９４】
［ＦＩＦＯ循環式バッファ手段及びフィルタリング手段による動作］
先ず、アプリケーションＰがコンピュータの演算処理部２に生成させた最新の動作ログがＦＩＦＯ循環式バッファ手段１１へと送られる。次いで、この最新の動作ログがＦＩＦＯ循環式バッファ手段１１に入力されると、当該最新の動作ログは前期ＦＩＦＯ循環式バッファ手段１１のバッファ部１１Ｄに保持される（図７、ステップＳ２０１、動作ログ取得保持工程）。
【００９５】
続いて、ＦＩＦＯ循環式バッファ手段１１のバッファ管理部１１Ｅは、スイッチ１１Ａの状況を確認する（図７、ステップＳ２０２）。前記スイッチ１１Ａがオフになっている場合（図７、ステップＳ２０３）は、当該最新の動作ログは直接ログファイル出力手段１４に送信される（図７、ステップＳ２０７）。その後、前記最新の動作ログを受け取ったログファイル出力手段１４は、この最新の動作ログを動作ログ格納用メモリ３へ送信し、上記アプリケーションＩＤ毎に格納する（図７、ステップＳ２０８）。
【００９６】
一方、前記スイッチ１１Ａがオンになっている場合（図７、ステップＳ２０３）は、当該最新の動作ログはＦＩＦＯ循環式バッファ手段１１に入力された後に保持され、それと同時に、既に内部に保持されている動作ログの内最も早く生成されたもの（最先の動作ログ）が、フィルタリング手段１２に送信される（図７、ステップＳ２０４、最先ログ送出工程）。
【００９７】
その後、前記バッファ管理部１１Ｅは、最新ログ位置１１Ｂを前記最先の動作ログにかかる位置情報の内容に更新すると共に、最先ログ位置１１Ｃを上記ステップＳ２０４にて送信された動作ログの次に早くバッファ１１に保持された動作ログにかかる位置情報の内容に更新する（図７、ステップＳ２０５、ログ位置情報更新工程）。
【００９８】
次にフィルタリング手段１２は、上記ステップＳ２０４にて上記ＦＩＦＯ循環式バッファ手段１１から送信された前記最先の動作ログを取得する（図８、ステップＳ２０９）。続いてフィルタリング手段１２は、予めシステム管理者によりフィルタリング情報設定手段１５を介して設定された最小ログレベルにかかる情報をフィルタリング情報保管手段２０から取得する（図８、ステップＳ２１０）。その後、ＦＩＦＯ循環式バッファ手段１１は、上記最先の動作ログに記録されている詳細レベル２ｃと上記最小ログレベルとを比較する（図８、ステップＳ２１１、ログ出力可否検討工程）。
【００９９】
上記比較の結果、上記最先の動作ログの詳細レベル２ｃが上記最小ログレベル２２ｂ以下である場合（図８、ステップＳ２１２）は、上記最先の動作ログは出力すべきものであるとフィルタリング手段１２により判定がなされ、ログファイル出力手段１４へ送信される（図８、ステップＳ２１９）。その後、ログファイル出力手段１４は、当該最先の動作ログを動作ログ格納用メモリ３へ送信し、上記アプリケーションＩＤ毎に格納する（図８、ステップＳ２２０、ログ出力工程）。
【０１００】
一方、上記最先の動作ログの詳細レベル２ｃが上記最小ログレベル２２ｂよりも大きい場合（図８、ステップＳ２１２）は、上記最先の動作ログは、フィルタリング手段１２によりログ一時保存メモリ１３に一時的に格納される（図８、ステップＳ２１３、非出力ログ一時格納工程）。
【０１０１】
この後、フィルタリング手段１２は、次に上記ログ一時保存メモリ１３に格納されている動作ログを取得すると共に、上記関連性情報記憶手段３０に保持されているマッチング規則３１を取得する。そして、フィルタリング手段１２は、前記取得した動作ログの詳細レベル２ｃとこの動作ログと同じアプリケーションＩＤにかかるマッチング状況３１のログ出力レベル３１ｄとを比較する（図８、ステップＳ２１４、ログ出力可否再検討工程）。
【０１０２】
上記比較の結果、上記詳細レベル２ｃが上記ログ抽出レベル３１ｄ以下である場合（図８、ステップＳ２１５）、続いてフィルタリング手段１２は、当該動作ログの位置情報と上記マッチング状況３１のログ出力先頭位置３１ｅ及びログ出力末尾位置３１ｇとを比較する（図８、ステップＳ２１６、ログ出力可否再検討工程）。
【０１０３】
上記比較の結果、前記位置情報が上記ログ出力先頭位置３１ｅからログ出力末尾位置３１ｇ迄の範囲内にある場合（図８、ステップＳ２１７）、この動作ログは出力すべきものであると判定がなされ、フィルタリング手段１２によりログファイル出力手段１４に送信される（図８、ステップＳ２１９）。その後、ログファイル出力手段１４は、受け取った動作ログを動作ログ格納用メモリ３へ送信し、上記アプリケーションＩＤ毎に格納する（図８、ステップＳ２２０、ログ再出力工程）。
【０１０４】
一方、当該動作ログが出力すべきものと判断されなかった場合（図８、ステップＳ２１５及びＳ２１７）は、この動作ログは出力すべきものではないと判定がなされ、フィルタリング手段１２により廃棄される（図８、ステップＳ２１８、ログ廃棄工程）。
【０１０５】
［マッチング状況の更新にかかる動作］
続いて、関連性情報管理手段１６は、上記ステップＳ２０１でＦＩＦＯ循環式バッファ手段１１に入力された動作ログ（最新の動作ログ）をその位置情報と共に取得する（図９、ステップＳ３０１、最新ログ取得工程）。
【０１０６】
次いで、前記動作ログおよび位置情報を取得した関連性情報管理手段１６は、関連性情報保管手段から上記マッチング状況を取得する（図９、ステップＳ３０２）。そして、関連性情報管理手段１６は、取得された前記マッチング状況について、そのログ出力末尾位置３１ｇの内容を確認する（図９、ステップＳ３０３、最新ログ内容検討工程）。上記確認の結果、その内容が「未定」を示す記号ではない場合（図９、ステップＳ３０４）、続いて関連性情報管理手段１６は、前記最新の動作ログの位置情報の内容と前記マッチング状況のログ出力先頭位置３１ｅ及びログ出力末尾位置３１ｇの内容とを比較する（図９、ステップＳ３０５、最新ログ内容検討工程）。
【０１０７】
上記比較の結果、前記位置情報にかかる位置が前記ログ出力先頭位置３１ｅ及びログ出力末尾位置３１ｇに含まれない場合（図９、ステップＳ３０６）、関連性情報管理手段１６は、該当するマッチング状況の全てを上記関連性情報記憶手段３０から削除する（ステップＳ３０７、不要再抽出基準削除工程）。
【０１０８】
次に上連性情報管理手段１６は、上記ステップＳ３０２にて取得され上記ステップＳ３０７にて削除されなかったマッチング状況の内、前記最新の動作ログと同一のアプリケーションＩＤにかかるものを抽出する（図９、ステップＳ３０８）。次いで、関連性情報管理手段１６は、この抽出されたマッチング状況のログ出力レベル３１ｄと前記最新の動作ログの詳細レベル２ｃとを比較する（図１０、ステップＳ３０９）。この比較の結果、上記ログ出力レベル３１ｄが上記詳細レベル２ｃ以上である場合（図１０、ステップＳ３１０）、関連性情報管理手段１６は、当該マッチング状況を抽出する（図１０、ステップＳ３１１）。
【０１０９】
次に、上記関連性情報管理手段１６は、上記ステップＳ３１２で抽出されたマッチング状況と同じフィルタＩＤ３１ａ及び出力規則ＩＤ３１ｂにかかるフィルタリング情報を、前記フィルタリング情報記憶手段２０から取得する（図１０、ステップＳ３１２）。
【０１１０】
次いで、上記関連性情報管理手段１６は、上記ステップＳ３１１にて抽出されたマッチング状況のマッチング位置３１ｆの内容と上記ステップＳ３１２にて取得されたフィルタリング情報の中の出力規則におけるログ出力範囲（後）２６ｄの内容とを比較する（図１０、ステップＳ３１３）。
【０１１１】
上記比較の結果、前記マッチング位置３１ｆが前記ログ出力範囲（後）２６ｄの中に含まれる場合（図１０、ステップＳ３１４）、関連性情報管理手段１６は、該当するマッチング状況３１のログ出力末尾位置３１ｇの内容を、前記最新の動作ログの位置情報の内容に更新する（図１０、ステップＳ３１５、再抽出基準修正工程）。
【０１１２】
更に、上記関連性情報管理手段１６は、上記フィルタリング情報記憶手段２０に保持されているフィルタリング情報の内、その出力規則２５が上記最新の動作ログと内容が合致しているものがあるか確認し取得する（図１１、ステップＳ３１６、ログ合致度検討工程）。その後、上記関連性情報管理手段１６は、この取得したフィルタリング情報の内容に従って新規なマッチング状況を作成する（図１１、ステップＳ３１７、新規再抽出基準作成工程）。続いて上記関連性情報管理手段１６は、前記作成されたマッチング状況を、上記関連性情報記憶手段３０に関連性情報の一つとして保存する（図１１、ステップＳ３１８、再抽出基準格納工程）。この工程を、上記最新の動作ログと内容が合致する全ての出力規則２５について実行する。
【０１１３】
ここで、上述した各判断に該当しない場合（上記ステップＳ３０４、ステップＳ３０６、ステップＳ３１０、及びステップＳ３１４）、再度ＦＩＦＯ循環式バッファ手段１１による最新の動作ログの送出工程（上記ステップＳ３０１）から操作を繰返す。
【０１１４】
ここで、上述した各工程で実行される具体的内容をプログラム化し、これをコンピュータに実行させるようにしてもよい。
【０１１５】
［第１の実施形態における効果］
本第１実施形態は、上述したように構成したので、以下のような効果が得られる。
第一の効果は、上記障害の発生時点の前後について、動作ログを出力したい範囲を与えれば、その範囲が過去（上記障害の発生時点よりも前）を指すものであっても、自動的に、その与えられた範囲での動作ログが出力されることである。上記アプリケーションから生成された動作ログは、ＦＩＦＯ循環式バッファ手段１１に一旦保管されると平行して、与えられた条件との関連性が関連性情報管理手段１６によって計算され最適なフィルタリングの条件（上記マッチング状況）が新規作成又は更新されるため、出力する必要のある動作ログをフィルタリング手段１２により効果的に抽出することができるからである。
【０１１６】
第二の効果は、データ入出力による上記アプリケーションへの性能への影響を低減させることができることである。外部に出力される動作ログが、システム管理者が指定する範囲に限定されることにより、無条件に動作ログを出力させた場合に比べシステム内に存在する動作ログの量（数）を低減させることができるからである。
【０１１７】
第三の効果は、動作ログを採取するにも拘らず十分に大量な動作ログを蓄積するメモリを用意する必要がないこと、即ち、上記動作ログ格納用メモリ３の容量を小さくすることができることである。ファイル出力される詳細ログが、システム管理者が指定する範囲に限定されることにより、外部に出力される動作ログの保管量を、無条件に詳細ログを出力させた場合に比べ低減させることができるからである。
【０１１８】
第四の効果は、出力された動作ログを例えば動作ログ内容の読取装置へ送信する際に、送信できる情報量の制限を受けにくくなることである。出力する必要のある動作ログは確実に出力すると共に、出力の必要の無い動作ログは確実に上記ログ出力装置１内で振り落とされ出力されないため、出力される動作ログの量を結果的に低減できるからである。
【０１１９】
第五の効果は、システム管理者による上記障害の調査段階において、調査に不要な動作ログを取り除く負担を無くすことができることである。調査上必要な範囲の動作ログのみを出力させるように条件を指定しておくことによって、調査する必要のない動作ログがログ出力装置内で篩い落とされるからである。
【０１２０】
［第２の実施形態］
次に、本発明に係るログ出力装置の第二実施形態について、図６及び図１２に基づいて説明する。
【０１２１】
本第二実施形態におけるログ出力装置２は、前述した第１実施形態におけるログ出力装置１と同様に、生成された動作ログを一時的に保持した後に送出するＦＩＦＯ循環式バッファ手段１１と、このＦＩＦＯ循環式バッファ手段１１が保持可能な動作ログ量を外部より設定するバッファ設定手段１７と、前記ＦＩＦＯ循環式バッファ手段１１から送出された動作ログに対し外部へ出力するか否かの振り分けを行うフィルタリング手段１２と、前記フィルタリング手段１２により出力するものと判断された動作ログを外部にログファイルとして出力するログファイル出力手段１４と、前記フィルタリング手段１２による動作ログの振り分けの条件にかかる情報を保持するフィルタリング情報記憶手段２０と、システム管理者により作成された上記振り分けの条件にかかる情報を上記フィルタリング情報記憶手段２０に入力し設定するフィルタリング情報設定手段１５とを備えている。
【０１２２】
又、本第二実施形態におけるログ出力装置２は、前述した第１実施形態におけるログ出力装置１と同様に、上記フィルタリング手段１２にて出力しないと判断された動作ログを一時的に格納するログ一時保存メモリ１３と、このログ一時保存メモリ１３に格納されている動作ログについて出力するか否かの二度目の振り分けの条件にかかる情報を保持する関連性情報記憶手段３０と、この関連性情報記憶手段３０に保持されている上記二度目の振り分けの条件にかかる情報を最適な内容に更新する関連性情報管理手段１６とを備えている。
【０１２３】
更に、図１２に示すように、本第二実施形態においては、ログ出力装置２に接続しているコンピュータ上で異なる複数のアプリケーションが実行されている点に特徴を有する。
【０１２４】
又、本第二実施形態においては、上記ＦＩＦＯ循環式バッファ手段１１に異なるアプリケーション由来の動作ログ（即ち、異なるアプリケーションＩＤにかかる動作ログ）が入力された場合に、それらが区別されずに同一に取扱われることを特徴としている。即ち、本第二実施形態におけるＦＩＦＯ循環式バッファ手段１１のバッファ部１１Ｄには、異なるアプリケーションＩＤにかかる動作ログが仕分けされずに混在した状態で保持されていることになる。
【０１２５】
又、上記フィルタリング手段１２が、異なるアプリケーションＩＤにかかる動作ログに従って上記関連性情報管理手段１６により更新されたマッチング状況に基づいて、上記ログ一時保存メモリ１３に格納された動作ログについて二回目のフィルタリングを行う機能を有することを特徴とする。
【０１２６】
以上より、本第二実施形態においては、あるアプリケーションにかかる動作ログにより更新されたマッチング状況に基づいて、異なるアプリケーションにかかる動作ログについて出力可否の判断が行われることを特徴とする。このとき上記ログ出力装置２は、上記マッチング状況の更新が完了したときにその旨の情報が上記関連性情報管理手段１６から上記フィルタリング手段１２へと送信され、この情報を上記フィルタリング手段１２が受信することを契機として、上記フィルタリング手段１２が上記ログ一時保存メモリ１３から動作ログを取得し以降上述した二回目のフィルタリングが実行されるように構成してもよい。
【０１２７】
［第２の実施形態における動作］
次に、本第二実施形態におけるログ出力装置２の動作について、上述した第１実施形態と異なる点について図６に基づき説明する。
本第二実施形態では、上述した第１実施形態におけるステップＳ１０７によりあるアプリケーションにかかる動作ログに基づきマッチング状況が更新されたことを契機として、上記ステップＳ１０８のフィルタリング手段１２による上記アプリケーションとは異なるアプリケーションにかかる動作ログについての二回目のフィルタリングが実行される。
ここで、上述した内容をプログラム化し、これをコンピュータに実行させるようにしてもよい。
【０１２８】
［第２の実施形態における効果］
本第二実施形態は、上述したように構成したので、これにより、アプリケーション毎に独立してログ出力装置を設置するケースやアプリケーション毎に独立した動作ログの出力を一つのログ出力装置に実行させるケースに比べ、迅速且つ安定に動作ログの出力を行えると共に、ログ出力装置設置にかかるコストを低減できるという効果がある。
【０１２９】
［第３の実施形態］
次に、本発明に係るログ出力装置の第三実施形態について、図１３に基づいて説明する。
先ず、本第三実施形態にかかるログ出力装置の全体的構成は、上述した第一実施形態（図１）又は第二実施形態（図１２）にかかるログ出力装置と同じである。
【０１３０】
そして本第三実施形態においては、上記ログ一時保存メモリ１３に格納された動作ログについての上記フィルタリング手段１２によるフィルタリング（即ち、二度目のフィルタリング）において、フィルタリング情報２３のマッチング規則２４におけるマッチング条件２４ｂに合致する上記詳細な動作ログが予め設定した回数出現することを条件にこれらの詳細な動作ログを出力させることを特徴とする。
即ち、本第３実施形態は、上記二度目のフィルタリングにおいて、上述したマッチング状況３１に基づく条件を満たす詳細な動作ログが存在しても当該動作ログについて即座に出力する旨の判断をせず、この条件を満たす詳細な動作ログが予め設定した個数存在して初めてそれら動作ログについて出力する旨の判断をするのである。
【０１３１】
本第三実施形態では、図１３に示すように、上記フィルタリング情報２３の出力規則２６におけるログ出力範囲（前）２６ｃ及びログ出力範囲（後）２６ｄについて、上記第一実施形態にて述べたような上記詳細な動作ログの出力適用範囲に関する情報のみならず上記二度目のフィルタリングにおいて上記マッチング条件２４ｂと合致する必要がある回数についても設定できるようになっていることが特徴である（２６ｅ、２６ｆ）。
【０１３２】
本第３の実施形態においては、上述した第１の実施形態における新規のマッチング状況を作成する工程を以下のように変更する。
先ず、上記ログ出力マッチングカウンタ３１ｈの設定においては、上述の第１の実施形態において、上記ログ出力範囲（後）２６ｄがマッチング条件で指定されている場合に受信した動作ログが当該マッチング条件に合致する場合であり且つ上記ログ出力範囲（後）２６ｄに含まれる場合にログ出力末尾マッチングカウンタ３１ｈを「１」に設定するのに代えて、当該ログ出力末尾マッチングカウンタ３１ｈの値が上記ログ出力範囲（後）２６ｄにおけるマッチング回数（受信した動作ログが上記マッチング条件２４ｂに合致する回数）２６ｆに達しているか否かを判断する。この判断の結果、達している場合は、当該出力規則２６のログ出力範囲（後）２６ｄに含まれないものとする（上記ログ出力末尾マッチングカウンタ３１ｈは変更しない）。一方、上記判断の結果、達していない場合は、上記ログ出力末尾マッチングカウンタ３１ｈに設定された数に1を加えるようにする。
【０１３３】
次に、新規に作成するマッチング状況におけるログ出力先頭位置３１ｅの設定においては、当該出力規則２６のログ出力範囲（前）２６ｃを満たす範囲を前方検索する際に、ログ出力範囲（前）２６ｃがマッチング条件２４ｂの内容で設定されている場合は、当該マッチング条件２４ｂに合致する動作ログが設定された回数（即ち、ログ出力範囲（前）におけるマッチング回数２６ｅ）だけ出現するまでの範囲を検索する。
【０１３４】
［第３の実施形態における動作］
次に、本第３実施形態におけるログ出力装置の動作について、上述した第１及び第２実施形態と異なる点について図８に基づき説明する。
本第３実施形態では、上記ステップＳ２１７にて、イエスとなる動作ログが予めシステム管理者により設定された個数存在するときに、当該動作ログ群を上記ログファイル出力手段１４に送信し（ステップＳ２１９）、動作ログ格納用メモリ３に格納する（ステップＳ２２０）。
ここで、上述した内容をプログラム化し、これをコンピュータに実行させるようにしてもよい。
【０１３５】
［第３の実施形態における効果］
本第３実施形態は、上述したように構成したので、動作ログの二回目のフィルタリングにおいて、上述の第一及び第二実施形態のときよりも厳密にその動作ログ（上記ログ一時保存用メモリ１３から取得した動作ログ）が上記障害の原因究明に有用であるか否かを判別した上で出力することができるため、より効果的に動作ログを出力することができるようになる。
【０１３６】
以上、上記各実施形態にて本発明を説明したが、本発明は上記各実施形態に限定されるものではない。
【産業上の利用可能性】
【０１３７】
本発明にかかるログ出力装置、ログ出力方法、及びログ出力用プログラムは、非常に効率的に障害調査に有用な動作ログを出力させることができるため、中小企業のように従業員数が少ないためアプリケーションエラーの原因究明に多くの人員を割くことが難しい現場への導入に利用の可能性がある。
【符号の説明】
【０１３８】
１、２  ログ出力装置
１１  ＦＩＦＯ循環式バッファ手段
１２  フィルタリング手段
１３  ログ一時保存メモリ
１４  ログファイル出力手段
１５  フィルタリング情報設定手段
１６  関連性情報管理手段
１７  バッファ設定手段
２０  フィルタリング情報記憶手段
３０  関連性情報記憶手段
Ｐ  アプリケーション
【図１】
0005531583.tif 000002
【図２】
0005531583.tif 000003
【図３】
0005531583.tif 000004
【図４】
0005531583.tif 000005
【図５】
0005531583.tif 000006
【図６】
0005531583.tif 000007
【図７】
0005531583.tif 000008
【図８】
0005531583.tif 000009
【図９】
0005531583.tif 000010
【図１０】
0005531583.tif 000011
【図１１】
0005531583.tif 000012
【図１２】
0005531583.tif 000013
【図１３】
0005531583.tif 000014