(57)【要約】【課題】複数のプログラムにまたがる情報処理装置の障害発生時の情報の追跡性を向上させる。【解決手段】記憶部と、複数のプログラムをそれぞれ実行する複数プログラム実行部１１１と、前記複数のプログラムそれぞれが出力するログ情報を前記記憶部に複数のログファイルとして記録するログファイル記録部１１２と、前記複数のログファイルを１つの収集ログファイルとして統合して前記記憶部に時系列順に記録する収集ログファイル記録部１１３と、を備える。【選択図】図２
2014115834.tif 000002
【特許請求の範囲】
【請求項１】
記憶部と、
複数のプログラムをそれぞれ実行する複数プログラム実行部と、
前記複数のプログラムそれぞれが出力するログ情報を前記記憶部に複数のログファイルとして記録するログファイル記録部と、
前記複数のログファイルを１つの収集ログファイルとして統合して前記記憶部に時系列順に記録する収集ログファイル記録部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記収集ログファイル記録部は、前記ログファイル記録部に記録される前記ログ情報が前記複数のプログラム毎に予め設定される固有の閾値を越える毎に、前記ログ情報を前記閾値を越える順に前記収集ログファイルに記録することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
さらに、待機時の電力供給が通常の駆動状態の電圧に対して低電圧で設定される低電圧駆動状態に移行する省エネルギー移行指示部を有し、
前記収集ログファイル記録部は、前記省エネルギー移行指示部により前記低電圧駆動状態に移行した場合、前記複数のプログラムのログ情報のうち、前記収集ログファイルに記録されていない当該ログ情報をすべて前記収集ログファイルに記録することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
さらに、前記複数のプログラム毎に前記閾値を最適化して設定する最適ログサイズ設定部を有することを特徴とする請求項１、２または３に記載の情報処理装置。
【請求項５】
さらに、前記複数のログファイルとして記録するキャッシュサイズを最適化して設定する最適キャッシュサイズ設定部を有することを特徴とする請求項１〜４の何れか１つに記載の情報処理装置。
【請求項６】
記憶部を有する情報処理装置で実行される情報処理方法であって、
複数のプログラムをそれぞれ実行する複数プログラム実行工程と、
前記複数のプログラムそれぞれが出力するログ情報を前記記憶部に複数のログファイルとして記録するログファイル記録工程と、
前記複数のログファイルを１つの収集ログファイルとして統合して前記記憶部に時系列順に記録する収集ログファイル記録工程と、
を含むことを特徴とする情報処理方法。
【請求項７】
記憶部を有するコンピュータで実行させるためのプログラムであって、
複数のプログラムをそれぞれ実行する複数プログラム実行ステップと、
前記複数のプログラムそれぞれが出力するログ情報を前記記憶部に複数のログファイルとして記録するログファイル記録ステップと、
前記複数のログファイルを１つの収集ログファイルとして統合して前記記憶部に時系列順に記録する収集ログファイル記録ステップと、
を前記コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法およびプログラムに関するものである。
【背景技術】
【０００２】
従来、プリンタ装置やファクシミリ通信装置といった情報処理装置は、ＰＣ（パーソナルコンピュータ）や通信回線といった外部からの要求によって動作を行なっている。さらに、上記情報処理装置は、外部からの要求を受け取って所定の動作を即時に行うことが可能な動作状態と一部の機能を休止させて動作要求を待つ待ち受け状態とのあいだの遷移を行うなど、複雑なプログラムによって動作している。このため、万一、情報処理装置に障害が発生した場合、その原因の所在を迅速に究明するため、情報処理装置の内部に、情報処理装置の動作情報、ステータス情報やエラー情報をログとして保存する技術が知られている。
【０００３】
このような技術として例えば、動作中のステータス情報、エラー情報、およびコントローラの動作情報を保存するメモリ、および時計機能を有する印刷機が知られている。この印刷機では、動作中に発生したエラー情報、変更されたステータス情報、コントローラの動作情報、およびエラーが発生、あるいは変更された時間を合わせた情報を履歴としてメモリに保存するように制御する制御手段を備えた印刷機が開示されている（たとえば、特許文献１参照）。
【０００４】
しかし、今までの情報処理装置上のログ保存機能では、装置を形成する複雑なプログラムがそれぞれ独自にログを保存しており、複数のプログラムにまたがる障害が発生した場合にそれぞれのログの関連性を追跡するのが難しいという問題があった。たとえば特定のイベントをトリガとして全てのログ情報を収集することで、関連箇所を追跡しやすくする技術が知られている（たとえば、特許文献２、段落００２０参照）。
【０００５】
特許文献２には、簡易な方法で確実にログを収集しかつ装置外部にたいしてログのセキュリティを保つ目的で、装置の動作情報、ステータス情報およびエラー情報を上記装置の内部に設けられた記憶手段に複数のログファイルとして記録する手段と、この複数のログファイルを一つの収集ログファイルとして統合・記録する手段と、これをリムーバブルメディアに暗号化して保存する手段と、収集ログファイルを削除する手段を備えた情報処理装置の構成が開示されている。ログファイルは概要が記録されたデバッグログファイルと、ログの詳細が記録された詳細ログファイルとからなる。１つの収集ログファイルとして統合・記録する手段は、上記複数のログファイルのうちログファイルの一部であるデバッグログのみを抽出して１つの収集デバッグログファイルとして統合・記録することが開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記に示される特許文献１の技術にあっては、全ての動作履歴を単一のログファイルに記述する方式を採用している。このため装置を形成する複雑なプログラムがそれぞれ独自にログを保存するような画像形成装置において、装置の動作情報、ステータス情報およびエラー情報を装置の内部に設けられた記憶手段にログファイルとして記録するものの、複数のプログラムにまたがる障害が発生した場合にそれぞれのログの関連性を追跡するのが難しいという問題があった。
【０００７】
また、特許文献２の技術にあっては、特定イベントでのログ収集は可能であるが、ログ情報を収集するイベントをあらかじめ想定する必要があり、ログ保存方法の設計者が意図した場面でしか取得することができない。すなわち、上述した特許文献２では、デバッグログを１つのファイルにまとめて保存するものの、意図しないタイミングで起きた障害について、複数のプログラムにまたがるデバッグログ情報の収集が難しいという問題があった。
【０００８】
本発明は、上記に鑑みてなされたものであって、複数のプログラムにまたがる情報処理装置における障害発生時の情報の追跡性を向上させることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明は、記憶部と、複数のプログラムをそれぞれ実行する複数プログラム実行部と、前記複数のプログラムそれぞれが出力するログ情報を前記記憶部に複数のログファイルとして記録するログファイル記録部と、前記複数のログファイルを１つの収集ログファイルとして統合して前記記憶部に時系列順に記録する収集ログファイル記録部と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明は、複数のプログラムそれぞれが出力するログ情報を複数のログファイルとして記録し、この複数のログファイルを１つの収集ログファイルとして統合して記憶部に時系列順に記録するため、複数のプログラムにまたがる情報処理装置の障害発生時の情報の追跡性を向上させることができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施の形態にかかる情報処理装置のハードウェア構成を示すブロック図である。
【図２】図２は、図１におけるＣＰＵによる機能構成を示すブロック図である。
【図３】図３は、ＳｃａｔｔｅｒＧａｔｈｅｒログの保存を行うプログラムの構成と大まかな動作を示す説明図である。
【図４】図４は、各種情報のデータ内容例を示す説明図である。
【図５】図５は、本機能によって作成されたログによって複数プログラムにまたがる障害情報の追跡性を向上させる実例を示す説明図である。
【図６】図６は、省エネルギー移行指示部、ログ回収プログラム、ログ記録プログラムの関係から、ログ記録・停止を切り替えるタイミングと記録可能な範囲について示すシーケンス図である。
【図７】図７は、この実施の形態にかかる情報処理装置を画像形成装置に適用した構成例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して、この発明にかかる情報処理装置、情報処理方法およびプログラムの一実施の形態を詳細に説明する。
【００１３】
（実施の形態）
本発明は、プリンタ装置やファクシミリ装置といった通信装置等の情報処理装置の動作に関するログ収集技術であり、特に、障害発生時における障害の解析を可能とするものである。より詳細には、情報処理装置上の複数のプログラムが各々のタイミングでデバッグログ情報を各個に保存するときの処理に際して、以下の特徴を有する。すなわち本発明は、複数の異なるプログラムがそれぞれ独自のタイミングで各個専用のログ領域に保存しているログ情報を、プログラム毎に最適化された固有の閾値の量を越えた場合に、そのログ情報を蓄積する毎にキャッシュ上に回収する。そして、時系列的に近い情報を１つのデータとしてまとめて２次記憶装置としてのたとえばＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）へ書き出しを行うものである。なお、本明細書では、複数のプログラムにおけるログ情報を所定のファイルに記録する動作を適宜「ログ回収」あるいは単に「回収」として記述する。以下、具体例を挙げて説明する。
【００１４】
図１は、実施の形態にかかる情報処理装置のハードウェア構成を示すブロック図である。この図１に示すように、情報処理装置１００は、マイクロコンピュータシステムを搭載し、ＣＰＵ１０１、２次記憶装置１０２、チップセット１０３、ＲＯＭ１０４、ＲＡＭ１０５、出力装置１０６、入力装置１０７を備える。
【００１５】
ＣＰＵ１０１は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や制御プログラムを実行することで、情報処理装置１００の動作を制御する機能を果たす。ＲＡＭ１０５はＣＰＵ１０１の作業用領域として使用される揮発性メモリである。ＲＯＭ１０４はＣＰＵ１０１が実行するプログラムが格納される不揮発性メモリであり、ＲＡＭ１０５上に展開してＣＰＵ１０１によって実行される。
【００１６】
出力装置１０６はプログラムによってＣＰＵ１０１が出力指示を出した場合に情報処理装置１００の利用者に向けて情報提示を行う装置である。入力装置１０７は情報処理装置１００の利用者によって装置上で動作するプログラムに対して指示を行うための入力を行う装置である。
【００１７】
図２は、図１におけるＣＰＵ１０１による機能構成を示すブロック図である。ＣＰＵ１０１は、後述するように、複数プログラム実行部１１１、ログファイル記録部１１２、収集ログファイル記録部１１３、省エネルギー移行指示部１１４の機能を有する。なお、本実施の形態におけるログは、少なくとも、装置の動作情報、ステータス情報、エラー情報を含むものである。エラー情報は、たとえば画像形成装置であれば、ジャム（紙詰まり）発生、所定のシーケンスで動作が行われなかったなどの事象に関する障害情報が含まれるものである。
【００１８】
複数プログラム実行部１１１は、装置内で複数のプログラムを独立して動作させる。すなわち、複数プログラム実行部１１１は、後述する図３に示すように、複数のログ記録プログラム（Ｐ１〜Ｐｎ）１０、ログ回収プログラム１５、ログ回収実行指示プログラム２２を実行させる機能を有する。
【００１９】
ログファイル記録部１１２は、ログとして、装置の動作情報、ステータス情報およびエラー情報を、たとえばＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）を用いた２次記憶装置１０２に複数のログファイルとして記録する。収集ログファイル記録部１１３は、上記複数のログファイルを１つの収集ログファイルとして統合し、これをたとえば２次記憶装置１０２のキャッシュ１０２ａ，ｂ，ｃ，・・・に時系列順に記録する。
【００２０】
省エネルギー移行指示部１１４は、待機時の電力供給が通常の駆動状態の電圧に対して低電圧で設定される低電圧駆動状態に移行する指示を行なう。すなわち、省エネルギー移行指示部１１４は、情報処理装置１００の電力消費抑制のために定期的あるいは一定時間以上操作が行われない場合などに低電圧駆動状態（省エネルギーモード）に移行する指示を行なう。この省エネルギーモードは、たとえば電子写真方式の画像形成装置の場合、電力の消費が大きな熱定着装置の加熱ヒータの点灯を通常より低い温度になるように点灯する。あるいは、操作表示部のパネル表示を消灯させるなど予め決められた部分での電力の消費を抑制するモードである。
【００２１】
図３は、ＳｃａｔｔｅｒＧａｔｈｅｒログの保存を行うプログラムの構成と大まかな動作を示す説明図である。たとえば複数のプログラムがそれぞれのタイミングでデバッグログ情報を各個に保存する情報処理装置１００がある。この複数のプログラムとしては、ログ記録プログラム１０ａ，１０ｂ、ログ回収プログラム１５、ログ回収実行指示プログラム２２がある。
【００２２】
ログを保存しようとするログ記録プログラム１０ａ，１０ｂは、それぞれ、ログ記憶部１１ａ，１１ｂ、ログ閾値越え通知部１２ａ，１２ｂ、最適ログサイズ設定部１３ａ，１３ｂを備えている。ログ記録部１１ａ，１１ｂは、ログを記憶処理する。ログ閾値越え通知部１２ａ，１２ｂは、ログが予め設定されている閾値を越える場合にログ回収プログラム１５に通知する。最適ログサイズ設定部１３ａ，１３ｂは、ログの最適サイズを設定する。なお、上記の閾値はデータ容量である。
【００２３】
なお、ログ記録領域１４ａ，１４ｂは、ログを記憶する領域で、実際は、ＲＡＭ１０５に確保された記憶領域であるが、ログ記録プログラム１０ａ，１０ｂそれぞれが記憶するものとしてここでは便宜上、各プログラム内に図示してある。
【００２４】
また、ログ回収プログラム１５は、ログ閾値越え通知受信部１６、ログ回収指示受信部１７、ログ回収部１８、ＨＤＤ保存部１９、最適キャッシュサイズ設定部２０を備えている。ログ閾値越え通知受信部１６は、ログ閾値越え通知部１２ａ，１２ｂから通知されるログ閾値越えの情報を受信する。ログ回収指示受信部１７は、ログ回収実行指示プログラム２２のログ回収指示部２４からの通信を受け、装置がログを回収してよいかの状態を保持する。ログ回収部１８は、キャッシュ領域２１へログを回収する。ＨＤＤ保存部１９は、後述するキャッシュ領域２１からＨＤＤ（２次記憶装置１０２）へ保存処理する、最適キャッシュサイズ設定部２０を備えている。最適キャッシュサイズ設定部２０は、キャッシュ領域２１のサイズを予め最適値として設定する。
【００２５】
また、ログ回収実行指示プログラム２２は、ログ回収プログラム１５による回収動作を行えるかどうかを判定する装置状況判断部２３、およびログの回収を指示するログ回収指示部２４を備えている。
【００２６】
また、２次記憶装置１０２は、たとえばＨＤＤを用いる。この２次記憶装置１０２には、複数のキャッシュ１０２ａ，１０２ｂ，１０２ｃというように複数のキャッシュが記憶されるようになっている。
【００２７】
上記ログの記録情報は３種類ある。ログ記録プログラムは情報処理置１００上に複数存在し、各ログ記録プログラム１０ａ，１０ｂは最適ログサイズ設定部１３ａによってもうけた専用のログ記録領域１４ａ，１４ｂを備えている。ログ記録領域１４ａ，１４ｂはそれぞれログ記録プログラム１０ａ，１０ｂの最適ログサイズ設定部１３ａ，１３ｂによって設定されるため、領域サイズは一定ではない。
【００２８】
また、ログ回収プログラム１５は、最適キャッシュサイズ設定部２０によって設けたキャッシュ領域２１を備えている。また、キャッシュ領域２１は、後述するキャッシュを記憶する領域で、実際は、ＲＡＭ１０５に確保された記憶領域であるが、ログ回収プログラム１５が記憶するものとしてここでは便宜上、このプログラム内に図示してある。
【００２９】
情報処理装置１００は、ログ回収部１８によって回収されたログを保存するために複数のキャッシュ領域２１を２次記憶装置１０２に備えている。２次記憶装置１０２上に移されたキャッシュ領域２１は、過去のキャッシュデータ１０２ａ，ｂ，ｃ・・として一定期間保持される。
【００３０】
つぎに、ログ記録プログラム１０ａによるログ記録領域１４ａに対するログ記録部１１ａの動作について説明する。なんらかの操作によって情報処理装置１００中のログ記録プログラム１０ａが動作すると、ログ記録プログラム１０ａは設計者によって定められたタイミングでログ記録部１１ａにより、ログ記録領域１４ａに対してログを追記しつづける動作を実行する。
【００３１】
ログ記録プログラム１０ａでは、ログ記録領域１４ａに対して予め定められた閾値を越えるとログ閾値越え通知部１２ａが動作し、ログ回収プログラム１５が有するログ閾値越え通知受信部１６に対する閾値越え通知が行われる。このときの閾値はログ回収部１８が回収するためのログデータサイズとなり、ログ領域１４ａ中のログデータサイズ分の領域を、以下、チャンク（Ｃｈｕｎｋ）と呼ぶ。
【００３２】
ログ閾値越え通知受信部１６がログ閾値越え通知部１２ａからの通知を受信すると、ログ回収指示受信部１７に問合せ装置がログを回収してよい状態であればログ回収部１８が動作し、ログ領域１４ａをチャンクとして読み出しキャッシュ領域２１へ追記保存を行う。一方、ログ回収指示受信部１７に問合せ装置がログを回収してよい状態でなければ、何も行なわずに次のログ閾値越え通知部１２ａからの通知を待つ。
【００３３】
ログ記録プログラム１０ａ，１０ｂとログ回収部１８が機能することにより複数のログ記録プログラム１０ａ，１０ｂによる異なるチャンクを時系列順につなげて格納したキャッシュ領域２１が生成される。そして、キャッシュ領域２１にデータが蓄積される毎に２次記憶装置１０２上にキャッシュデータ１０２ａ，ｂ，ｃ・・として順次保存し、一定期間保持される。
【００３４】
また、ログ記録プログラム１０ａ，１０ｂは、ログ回収時において用いられる固有の閾値として、それぞれプログラムごとに、予め最適化して設定される。また、ログ記録プログラム１０ａ，１０ｂは、プログラム毎に予め設定された固有の閾値の量を越える毎に、ログを予め設定される閾値を越えた順に回収する。
【００３５】
また、ログ回収実行指示プログラム２２はログ回収機能を動作させてよいのかどうかの判定を行う。たとえばこの装置が、省エネルギー移行指示部１１４により、省エネルギーモードへ移行し、２次記憶装置１０２（本例ではＨＤＤ）の電源を切る場合がある。このときにログ回収機能を実行していると通電していない２次記憶装置１０２に対しての書き込みを行おうとすると障害が発生してしまう。
【００３６】
そこで、このような事態を予防するため、ログ回収実行指示プログラム２２は、装置状況判断部２３においてログ回収機能を実行してよいかの判定を行い、ログ回収指示部２４からログ回収プログラム１５に対して動作あるいは停止の指示を行う。
【００３７】
図４は、各種情報のデータ内容例を示す説明図である。ここでは図４における各種情報が発生、及び更新された場合の動作例について説明する。本例におけるプログラムとは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、サービスプログラム、アプリケーションといったものを指し、ソフトウェアにミドルウェアも含むイメージである。
【００３８】
ここではプログラムＡ、プログラムＢの２つのプログラムにおけるエラー履歴、ステータス情報、動作情報の３種類のデータの保存を例とする。情報処理装置１００の電源をＯＮにし、プログラムＡが動作する。プログラムＡが動作するとＲＡＭ１０５上に専用のログ記録領域を確保し、プログラムＡの動作都合にあわせて随時ＲＡＭ１０５にログを追加記録する。
【００３９】
図４に示すように、チャンクＤ−１にはプログラムＡの履歴情報として、プリンタアプリ起動、ワークメモリ初期化、パラメータ初期化、受信処理、印刷実行処理、印刷実行に関する情報が保存される。このチャンクＤ−１は、たとえば後述するプリンタ部３０２（図７参照）の動作状態に該当する。
【００４０】
また、図４に示すように、チャンクＤ−２にはプログラムＢの履歴情報として、スキャナアプリ起動、ワークメモリ初期化、スキャン実行要求、データ送信指示、エラー発生状況に関する情報が保存される。このチャンクＤ−２は、たとえば後述するスキャナ部３０１（図７参照）の動作状態に該当する。
【００４１】
プログラムＡは一定量のログを記録すると、図３で示したログ閾値越え通知部１２ａを介してログ回収プログラム１５のログ閾値越え通知受信部１６に通知を行い、ログ回収プログラム１５が一定量分をチャンクＤ−１としてキャッシュＤ−３に回収する。情報処理装置１００上では複数のプログラム（本例の図中ではプログラムＡとプログラムＢの２種類について記載しているが、実際には２００個程度動作している）が並行動作しており、それぞれのプログラムが先に説明したようなログ回収動作を行う。
【００４２】
このように情報処理装置１００上の全てのプログラムが各自の都合でログ記録および回収動作を行ない、結果としてキャッシュＤ−３には様々なプログラムのチャンクがない交ぜの状態として格納される。
【００４３】
図５は、本機能によって作成されたログによって複数プログラムにまたがる障害情報の追跡性を向上させる実例を示す説明図である。たとえば複数のプログラム（本例ではログ記録プログラム１０ａ，１０ｂ）が各々のタイミングでデバッグログ情報を各個に保存する情報処理装置１００において、障害を起こしたプログラムが複数にまたがっており、根本的原因を探るのが難しい状況がある。このとき具体的に障害が発生している地点が判明している箇所がわかると、その付近のキャッシュ内の各チャンクの状況をしらべることにより直接的でない挙動について推測および調査することが可能となる。すなわち、２次記憶装置１０２のキャッシュ１０２ａ，ｂ，ｃ，・・・それぞれにあるチャンクを追跡することで、装置の動作状況、障害発生状況を捉えることができる。
【００４４】
つぎに、図５に示すように、本ログ回収にかかわる機能により作成されたキャッシュ例を基に説明する。この図５に示す例において、キャッシュ中にあるプログラムＡログＣ１からプログラムＢログＣ６までの各チャンクは、それぞれプログラムＡ,Ｂ,Ｃの動作都合により時系列順に並んで保存される。この図５において、プログラムＡログＣ１がもっとも動作の履歴が古く、プログラムＢログＣ６がもっとも動作の履歴が新しい、ことを示している。
【００４５】
ここで、図５に示すように、プログラム動作中において障害が発生した地点がプログラムＣログＣ４中であったとする。障害が発生した地点はプログラムＣログＣ４であるが障害の原因がプログラムＣログＣ４でない場所にある場合、当然プログラムＣログＣ４をいくら追跡調査しても障害が発生した箇所について特定することができない。
【００４６】
ところが、図５に示すように、プログラムＣログＣ４の周辺を見ると、つぎのことが分かる。すなわち、プログラムＡログＣ１が出力したログがプログラムＡログＣ１、プログラムＡログＣ２、プログラムＡログＣ５、プログラムＢログが出力したログがＣ３、Ｃ６とあり、プログラムＡログとプログラムＢログが活発に動作していることが分かる。こんため、プログラムＣログＣ４周辺のチャンクを検査することで障害発生の原因を特定することができる。
【００４７】
図６は、省エネルギー移行指示部１１４、ログ回収プログラム１５、ログ記録プログラム１０ａ、１０ｂの関係から、ログ記録・停止を切り替えるタイミングと記録可能な範囲について示すシーケンス図である。
【００４８】
本シーケンスは、複数プログラム実行部１１１（図２参照）により、図３で説明した複数のプログラムとして用意されているログ記録プログラム１０ａ，１０ｂ、ログ回収プログラム１５、ログ回収実行プログラム２２を実行させる場合について示すものである。また、ログファイル記録部１１２は、ログ回収プログラム１５を介して得られた複数のログファイル（装置の動作情報、ステータス情報およびエラー情報）を回収する。たとえば２次記憶装置１０２に複数のログファイル（装置の動作情報、ステータス情報およびエラー情報）として記録する。また、収集ログファイル記録部１１３は、ログ回収プログラム１５を介して得られた複数のログファイル（装置の動作情報、ステータス情報およびエラー情報）を、１つの収集ログファイルとして統合し、これをたとえば２次記憶装置１０２に記録する。
【００４９】
図６において、１０ａ，１０ｂは図３で説明したログ記録プログラムである。Ｓ１−１は図３で説明したログ記録部１１ａ，１１ｂの動作である。Ｓ１−１で記録を行った後にそのログが予め定めた閾値を越えたか否かを判断する（Ｓ１−２）。Ｓ１−２において、記録したログが閾値を越えた場合（Ｓ１−２、Ｙｅｓ）、ログ閾値越え通知部１２ａ，１２ｂは閾値越えの通知を行う（Ｓ１−３）。
【００５０】
図６の符号１５は図３で説明したログ回収プログラムである。ログ回収プログラム１５は、ログ回収処理の単位として回収スレッドを生成し（Ｓ３−１）、ログ回収スレッドとしてログ回収部１８を起動する。ログ回収プログラム１５は、ログ回収実行指示プログラム２２からログ記録開始要求（Ｓ４−１）を受信し（Ｓ３−２）、ログ回収実行指示プログラム２２からの指示を受け、ログ回収プログラム１５の内部状態を変更する（Ｓ３−３）。そして、ログ記録開始の要求を受信する（Ｓ３−４）。
【００５１】
また、図６において、ログ回収プログラム１５のログ回収指示受信部１７に対して、ログ回収実行指示プログラム２２のログ回収指示部２４からはログ記録停止要求（Ｓ４−２）の指示を受信する（Ｓ３−４）。そして、この受信したログ記録停止要求を受けて、ログ回収実行指示プログラム２２のログ回収指示部２４からのログ記録停止要求（Ｓ４−２）を受信してログ回収の停止を行う（Ｓ３−５）。
【００５２】
図６のＳ３−６は図３で説明したログ閾値越え通知受信部１６の動作である。ここでログ回収プログラム１５のログ閾値越え通知受信部１６は、ログ回収実行指示プログラム２２からログ記録停止要求を受ける（Ｓ４−２，Ｓ３−４，Ｓ３−５）。そして、ログ記録プログラム１０ａ，１０ｂのログ閾値越え通知部１２ａ，１２ｂから閾値越えしたログを受信する（Ｓ３−６）。ただし、ログ回収プログラム１５のログ閾値越え通知受信部１６は、Ｓ３−５の処理が発生したときにもここでその通知を受け取る処理も兼務する。
【００５３】
図６のＳ３−８、Ｓ３−１０はログ回収部１８のログ回収動作である。Ｓ３−７の判断処理において、通常のログ回収状態の場合は（Ｓ３−７、Ｙｅｓ）、指定されたログ回収が動作し（Ｓ３−８）、ログ閾値越え通知受信部１６が通信を行った相手のログを回収する動作を行なう。
【００５４】
一方、Ｓ３−７の判断処理において、ログ回収実行指示プログラム２２により、ログ記録停止要求（Ｓ４−２）が発行された場合は（Ｓ３−７、Ｎｏ）、ログ停止移行時であるかの判断を行う（Ｓ３−９）。ここでログ停止移行時である場合（Ｓ３−９、Ｙｅｓ）、全ログ回収が動作する（Ｓ３−１０）。このときはログ閾値越え通知受信部１６が通信の有無に関わらず、情報処理装置１００上にあるすべてのログ記録領域１４ａ，１４ｂを探査し、以前にログの回収を行ったあとの差分内容を分量にかかわらずキャッシュ領域２１へログの回収を行なう。
【００５５】
図６の符号２２は図３で説明したログ回収実行指示プログラムである。図３で示した装置状況判断部２３が、ログ回収プログラム１５による回収動作を行えるかどうかを判定し、ログ記録開始要求（Ｓ４−１）やログ記録停止要求（Ｓ４−２）を、ログ回収プログラム１５に対して発行する。
【００５６】
図６においてログ回収実行指示プログラム２２のログ記録開始要求（Ｓ４−１）は、情報処理装置１００がログ回収機能を実行してもよい状態に遷移したときに発行される。たとえば、このログ回収実行指示プログラム２２のログ記録開始要求（Ｓ４−１）は、情報処理装置１００の起動時に、２次記憶装置１０２であるＨＤＤなどの書き込み準備が整ったときである。
【００５７】
図６においてログ回収実行指示プログラム２２のログ記録停止要求（Ｓ４−２）は、情報処理装置１００がログ回収の機能を実行できなくなる状態に遷移する前に発行される。たとえば、情報処理装置１００内において処理優先度が非常に高く、ターンアラウンドタイムが厳密に設定されたプログラムが動作する前に発行される。また、装置が停止する前、省エネルギー移行指示部１１４により装置が省エネルギーモードへ移行する前に２次記憶装置１０２であるＨＤＤなどの電源を遮断する前のときである。
【００５８】
したがってログ回収機能が有効である範囲は、つぎの通りとなる。ログ回収実行指示プログラム２２からログ記録開始要求（Ｓ４−１）の指示がなされログ回収プログラム１５が受信応答を返す。そして、この受信応答を返した後から、ログ回収実行指示プログラム２２からログ記録停止要求（Ｓ４−２）の指示がなされログ回収プログラム１５が受信応答を返す前の状態までである。
【００５９】
ログ記録プログラム１０ａ，１０ｂはログ回収実行指示プログラム２２からの指示に影響されないので、ログ記録機能が有効である範囲は、ログ記録プログラム１０ａ，１０ｂにあたるプログラムの起動から終了間となる。
【００６０】
この実施の形態では、収集ログファイル記録部１１３は、複数のプログラムそれぞれがメモリ（たとえば２次記憶装置１０２）上に出力するログ情報を次のようにして記録する。すなわち、収集ログファイル記録部１１３は、予めプログラムごとに最適化された固有の閾値の量を超える毎に、システム上にあるキャッシュ１０２ａ，ｂ，ｃ・・に順次回収していく。このときのログ情報の回収順はログ情報が閾値を超えた順であり、キャッシュ１０２ａ，ｂ，ｃ・・には複数のプログラム毎のログ情報の回収単位の塊（チャンク）が時系列順に並ぶことになる（図５のキャッシュ参照）。
【００６１】
また、情報処理装置１００は、省エネルギー移行指示部１１４により、電力消費抑制のために定期的あるいは装置の操作が一定時間以上行なわれないタイミングで低電圧駆動状態（省エネルギーモード）に移行する。この省エネルギー移行指示部１１４による省エネルギーモードの際には複数のプログラムが保存しているデバッグログの差分を全て回収する。このため、この時点で確実に同時期の複数プログラムのデバッグログ内容を保存する。
【００６２】
したがって、複数のプログラムがそれぞれ独自にメモリ上にログ保存を行なう情報処理装置１００においてつぎのような効果が期待できる。すなわち、ログ保存プログラムについて設計者が意図しないようなタイミングにおける複数のプログラムにまたがる障害発生時の情報の追跡性を向上させることができる。
【００６３】
また、最適キャッシュサイズ設定部２０により固有の閾値を最適化して調整することにより、ＨＤＤ（２次記憶装置１０２）への書き込み頻度を最小限に抑制することが可能なため、パフォーマンスの低下を抑制する効果も期待できる。
【００６４】
すなわち、複数のプログラムがそれぞれ独自にメモリ上にログ保存を行なう情報処理装置１００で、時系列にそってそれぞれのログの断片を常時収集して結合する。そして、この収集したログが一定量（予め設定される閾値によって規定される量）が記録される毎に１つの収集デバッグログファイルとして保存する。
【００６５】
これにより、パフォーマンスの低下を抑えつつ同時刻の障害情報の追跡性を向上したログ保存機能を提供することが可能となる。この機能により、ログが常時、収集して結合され連続的な情報が常時、たとえば２次記憶装置１０２に保存されることになる。これにより、ログ保存プログラムの設計者が意図しないようなタイミングにおける複数プログラムにまたがる障害発生時にかかわる情報の追跡性を向上させることができる。
【００６６】
さらに、ログ回収プログラム１５の最適キャッシュサイズ設定部２０により、プログラムごとに最適化された固有の閾値を調整・最適化することで、ログ収集の頻度・負荷をおさえることができる。また、キャッシュサイズを最適化して調整することでＨＤＤ（２次記憶装置１０２）への書き込み頻度をおさえることができる。
【００６７】
また、情報処理装置１００は、装置の状態を監視し、省エネルギー移行指示部１１４により電力消費抑制のために定期的に低電圧駆動状態（省エネルギーモード）に移行する。その際には複数のプログラムが保存しているデバッグログの差分を全て回収するため、この時点で確実に同時期の複数のプログラムのデバッグログ内容を保存することができる。なお、この省エネルギーモード時における装置各部の低電圧での駆動箇所については予め定められている。
【００６８】
図７は、この実施の形態にかかる情報処理装置を画像形成装置に適用した構成例を示すブロック図である。ここでは上述した情報処理装置１００を、たとえば、図７に示すように、スキャナ部、プリンタ部などを有する複合機能および通信機能を有する画像形成装置に適用することができる。
【００６９】
図７において、符号３００はたとえばスキャナ機能、プリンタ機能、ファクシミリ機能などの複数の機能を有する複合機（ＭＦＰ：Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）などの画像形成装置である。符号３０１は原稿画像を読み取る機能を有するスキャナ部、符号３０２は記録紙に画像を印字するプリンタ部である。また、符号３０３はユーザによる各種の入力操作を行うための入力キー群、および装置の状態などをパネルに表示する機能を有する操作部である。
【００７０】
図７において、また、符号３１０はユーザ環境のネットワークとして機能するＬＡＮ（ローカルエリアネットワーク）、符号３２０はＬＡＮ３１０を介して情報処理装置１００と通信可能に接続された複数のＰＣ（パーソナルコンピュータ）である。ＬＡＮ３１０としては、たとえばイーサネット（登録商標）を用いる。
【００７１】
すなわち、図７に示す画像形成装置３００は、少なくとも、ＬＡＮ３１０を介してＰＣ３２０からの印刷データをプリンタ部３０２で印刷する通信印刷機能を備えている。また、画像形成装置３００は、スキャナ部３０１で原稿画像を読み取り、その画像データをプリンタ部３０２で印刷する機能を備えている。
【００７２】
ここで、図７に示す画像形成装置において、たとえば、操作部３０３の入力指示により、スキャナ部３０１で読み取った画像をプリンタ部３０２で記録紙に印字する過程において、スキャナ部３０１で何らかの障害が生じた場合を想定する。
【００７３】
この場合、情報処理装置１００には、先に図４において説明したように、プリンタ部３０２の履歴（チャンクＤ−１）、スキャナ部３０１の履歴（チャンクＤ−２）がキャッシュＤ−３というように保存される。このとき、情報処理装置１００の収集ログファイル記録部１１３は、ログ回収プログラム１５を介して時系列にそってそれぞれのログの断片を常時収集して結合する。この収集した動作情報、エラー情報を含むログが一定量（予め設定される閾値で規定される値）が記録される毎に１つの収集デバッグログファイルとして、たとえばＨＤＤなどの２次記憶装置１０２のキャッシュ１０２ａ，ｂ，ｃ，・・・に保存する。
【００７４】
スキャナ部３０１による原稿読み取り動作からプリンタ部３０２による画像形成動作を行う、といった一連の動作が実行される。これより、この一連の動作にあたり複数のプログラムにまたがる動作情報、何らかの障害発生時の情報（エラー発生状況）にかかわるログを回収して時系列に結合する。そして、障害発生したときのログを特定することにより障害が発生したときの状況の追跡を行なう。これにより障害が発生したときの追跡性を向上させることができる。
【００７５】
なお、上述した情報処理装置１００を画像形成装置３００として複合機内に適用する例について示したが、これに限定されるものではない。たとえば、複写機、プリンタ、ファクシミリ装置などの画像形成装置の構成にも適用することが可能である。あるいは画像形成装置に用紙後処理装置といった周辺機器を接続したシステムにも適用することが可能である。なお、用紙後処理装置は、一般に知られているように、画像形成装置３００から排紙される記録紙に対して所定の後処理を行なう。この後処理として、記録紙に孔をあけるパンチ機能、紙折りを行なう紙折り機能、綴じ処理を行うステイプル機能、印刷ジョブごとに仕分けする仕分け機能、スタック排紙およびその整合を行なうスタック整合機能などを備えている。
【００７６】
ところで、本実施の形態で実行されるプログラムは、ＲＯＭ１０４に予め組み込まれて提供するものとしているが、これに限定されるものではない。本実施の形態で実行されるプログラムを、コンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供してもよい。たとえば、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録して提供してもよい。
【００７７】
また、本実施の形態で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施の形態で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００７８】
本実施の形態で実行されるプログラムは、上述した複数プログラム実行部１１１、ログファイル記録部１１２、収集ログファイル記録部１１３、省エネルギー移行指示部１１４を含むモジュール構成となっている。実際のハードウェアとしてはＣＰＵ１０１（プロセッサ）が上記記録媒体からプログラムを読み出して実行することにより上記各部がＲＡＭ１０５等の主記憶装置上にロードされる。そして、複数プログラム実行部１１１、ログファイル記録部１１２、収集ログファイル記録部１１３、省エネルギー移行指示部１１４が主記憶装置上に生成されるようになっている。
【００７９】
なお、上述した実施の形態では、画像形成装置について例を挙げて説明したがこれに限らず他の装置であってもよい。たとえば、プロジェクタ、タブレット端末などの情報処理装置へ適用することも可能である。
【００８０】
以上、本発明者によってなされた発明を好適な実施の形態に基づき具体的に説明したが、本発明は上記実施の形態で説明したものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【００８１】
１０ａ，１０ｂ  ログ記録プログラム
１１ａ，１１ｂ  ログ記録部
１２ａ，１２ｂ  ログ閾値越え通知部
１３ａ，１３ｂ  最適ログサイズ設定部
１４ａ，１４ｂ  ログ記録領域
１５  ログ回収プログラム
１６  ログ閾値越え通知受信部
１７  ログ回収指示受信部
１８  ログ回収部
１９  ＨＨＤ保存部
２０  最適キャッシュサイズ設定部
２１  キャッシュ領域
２２  ログ回収実行プログラム
２３  装置状況判断部
２４  ログ回収指示部
１００  情報処理装置
１０１  ＣＰＵ
１０４  ＲＯＭ
１０５  ＲＡＭ
１１１  複数プログラム実行部
１１２  ログファイル記録部
１１３  収集プログラムファイル記録部
１１４  省エネルギー移行指示部
３００  画像形成装置
３０１  スキャナ部
３０２  プリンタ部
【先行技術文献】
【特許文献】
【００８２】
【特許文献１】特開２００４−３５１８０５号公報
【特許文献２】特許第４８７２４９３号公報
【図１】
2014115834.tif 000003
【図２】
2014115834.tif 000004
【図３】
2014115834.tif 000005
【図４】
2014115834.tif 000006
【図５】
2014115834.tif 000007
【図６】
2014115834.tif 000008
【図７】
2014115834.tif 000009