(57)【要約】【課題】アプリケーションプログラム、オペレーティングシステムに負荷かけることなく、必要充分な履歴記録情報の取得を実現する。【解決手段】トレースプログラム生成部８４は、前記異常発生が起きた後、当該同一種の異常発生を主体とした監視を行なうための、トレースプログラムを動的に生成する。トレースプログラムは、トレースプログラム実行部８６に送出され、アプリケーショプログラムを監視し、トレース情報を取得する。このトレースプログラム実行部８６では、前記アプリケーショプログラム実行中の全ての履歴を記録するのではなく、発生した異常に基づいて、アプリケーショプログラム実行履歴が取捨選択されたトレースが実行される。【選択図】図３
2010049340.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステム上で動作するアプリケーションプログラムの起動、及び当該アプリケーションプログラムの実行中に発生した異常停止後の再起動を指示して前記アプリケーショプログラムを実行する実行手段と、
前記アプリケーショプログラム実行中の履歴を記録する履歴記録手段と、
前記アプリケーショプログラムが起動してから正常動作している間は関与せず、前記アプリケーショプログラムに異常が発生した場合に前記実行手段によるアプリケーショプログラムの再起動が実行される前に、前記履歴記録手段を起動させる履歴記録制御手段と、
を有する異常発生監視システム。
【請求項２】
前記アプリケーショプログラムの異常停止時の瞬間的な記録情報を解析する解析手段と、
前記解析手段の解析結果に基づいて履歴記録手順を生成する生成手段とをさらに有し、
前記履歴記録手段は、前記生成手段で生成された履歴記録手順に従って履歴記録を実行する請求項１記載の異常発生監視システム。
【請求項３】
請求項１又は請求項２記載の異常発生監視システムを有する画像処理装置。
【請求項４】
オペレーティングシステム上で動作するアプリケーションプログラムの起動、及び当該アプリケーションプログラムの実行中に発生した異常停止後の再起動を指示して前記アプリケーショプログラムを実行する実行手段と、
前記アプリケーショプログラム実行中の履歴を記録する履歴記録手段と、
前記アプリケーショプログラムが起動してから正常動作している間は関与せず、前記アプリケーショプログラムに異常が発生した場合に前記実行手段によるアプリケーショプログラムの再起動が実行される前に、前記履歴記録手段を起動させる履歴記録制御手段と、
を有する異常発生監視装置。
【請求項５】
前記アプリケーショプログラムの異常停止時の瞬間的な記録情報を解析する解析手段と、
前記解析手段の解析結果に基づいて履歴記録手順を生成する生成手段とをさらに有し、
前記履歴記録手段は、前記生成手段で生成された履歴記録手順に従って履歴記録を実行する請求項４記載の異常発生監視装置。
【請求項６】
請求項４又は請求項５記載の異常発生監視装置を有する画像処理装置。
【請求項７】
オペレーティングシステム上で動作するアプリケーションプログラムの起動、及び当該アプリケーションプログラムの実行中に発生した異常停止後の再起動を指示して前記アプリケーショプログラムを実行し、
前記アプリケーショプログラム実行中の履歴を記録し、
前記アプリケーショプログラムが起動してから正常動作している間は関与せず、前記アプリケーショプログラムに異常が発生した場合に前記実行手段によるアプリケーショプログラムの再起動が実行される前に、前記履歴記録手段を起動させることを、
コンピュータに実行させる異常発生監視プログラム。
【請求項８】
前記アプリケーショプログラムの異常停止時の瞬間的な記録情報を解析し、当該解析結果に基づいて履歴記録手順を生成し、生成された履歴記録手順に従って履歴記録を実行する請求項７記載の異常発生監視プログラム。
【請求項９】
請求項７又は請求項８記載の異常発生監視プログラムを有する画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異常発生監視システム、異常発生監視装置、異常発生監視プログラム、画像処理装置に関する。
【背景技術】
【０００２】
アプリケーションプログラム（以下、必要に応じて「ＡＰＬプログラム」という）を処理装置上で起動して実行する場合において、当該実行中のＡＰＬプログラムの障害解析を行なう上で、実行履歴情報（以下、「トレース情報」という）は有用である。しかし、膨大なトレース情報が当該プログラムを実行する処理装置に設けられた記憶装置に蓄積されていくと、当該記憶装置の記憶容量を圧迫したり、トレース情報を収集するための処理が処理装置の性能を低下させる原因となるため、これを解決するために、必要なときだけトレース情報を収集する処理を実装することが提案されている（特許文献１、特許文献２、特許文献３等参照）。
【０００３】
また、個々のＡＰＬプログラムにトレース情報を収集する処理を実装することがＡＰＬプログラムの規模を増大させる場合があり、この場合の対処として、オペレーティングシステム（以下、必要に応じて、「ＯＳ」という）側でトレース情報を記録することが提案されている（特許文献４、特許文献５参照）。
【特許文献１】特開平５−２２４９８８号公報
【特許文献２】特開平６−１０３１０７号公報
【特許文献３】特開２００４−２７２５０５公報
【特許文献４】特開平７−９３１８２号公報
【特許文献５】特開平１０−２６９１０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、アプリケーションプログラム、オペレーティングシステムに負荷かけることなく、必要充分なトレース情報の取得を実現することができる異常発生監視システム、異常発生監視装置、異常発生監視プログラム、画像処理装置を得ることが目的である。
【課題を解決するための手段】
【０００５】
請求項１に記載の異常発生監視システムは、オペレーティングシステム上で動作するアプリケーションプログラムの起動、及び当該アプリケーションプログラムの実行中に発生した異常停止後の再起動を指示して前記アプリケーショプログラムを実行する実行手段と、前記アプリケーショプログラム実行中の履歴を記録する履歴記録手段と、前記アプリケーショプログラムが起動してから正常動作している間は関与せず、前記アプリケーショプログラムに異常が発生した場合に前記実行手段によるアプリケーショプログラムの再起動が実行される前に、前記履歴記録手段を起動させる履歴記録制御手段と、を有している。
【０００６】
請求項２に記載の発明は、前記請求項１に記載の発明において、前記アプリケーショプログラムの異常停止時の瞬間的な記録情報を解析する解析手段と、前記解析手段の解析結果に基づいて履歴記録手順を生成する生成手段とをさらに有し、前記履歴記録手段は、前記生成手段で生成された履歴記録手順に従って履歴記録を実行する。
【０００７】
請求項３に記載の発明は、前記請求項１又は請求項２に記載の異常発生監視システムを有する画像処理装置である。
【０００８】
請求項４に記載の異常発生監視装置は、オペレーティングシステム上で動作するアプリケーションプログラムの起動、及び当該アプリケーションプログラムの実行中に発生した異常停止後の再起動を指示して前記アプリケーショプログラムを実行する実行手段と、前記アプリケーショプログラム実行中の履歴を記録する履歴記録手段と、前記アプリケーショプログラムが起動してから正常動作している間は関与せず、前記アプリケーショプログラムに異常が発生した場合に前記実行手段によるアプリケーショプログラムの再起動が実行される前に、前記履歴記録手段を起動させる履歴記録制御手段と、を有している。
【０００９】
請求項５に記載の発明は、前記請求項４に記載の発明において、前記アプリケーショプログラムの異常停止時の瞬間的な記録情報を解析する解析手段と、前記解析手段の解析結果に基づいて履歴記録手順を生成する生成手段とをさらに有し、前記履歴記録手段は、前記生成手段で生成された履歴記録手順に従って履歴記録を実行する。
【００１０】
請求項６に記載の発明は、前記請求項４又は請求項５に記載の異常発生監視装置を有する画像処理装置である。
【００１１】
請求項７に記載の異常発生監視プログラムは、オペレーティングシステム上で動作するアプリケーションプログラムの起動、及び当該アプリケーションプログラムの実行中に発生した異常停止後の再起動を指示して前記アプリケーショプログラムを実行し、前記アプリケーショプログラム実行中の履歴を記録し、前記アプリケーショプログラムが起動してから正常動作している間は関与せず、前記アプリケーショプログラムに異常が発生した場合に前記実行手段によるアプリケーショプログラムの再起動が実行される前に、前記履歴記録手段を起動させることを、コンピュータに実行させる。
【００１２】
請求項８に記載の発明は、前記請求項７に記載の発明において、前記アプリケーショプログラムの異常停止時の瞬間的な記録情報を解析し、当該解析結果に基づいて履歴記録手順を生成し、生成された履歴記録手順に従って履歴記録を実行する。
【００１３】
請求項９に記載の発明は、前記請求項７又は請求項８に記載の異常発生監視プログラムを有する画像処理装置である。
【発明の効果】
【００１４】
請求項１、請求項４、請求項７に記載の発明によれば、アプリケーションプログラム、オペレーティングシステムに負荷かけることなく、必要充分な履歴記録情報の取得を実現することができる。
【００１５】
請求項２、請求項５、請求項８に記載の発明によれば、本構成を有しない場合に比べ、必要充分な歴記録情報の取得が容易となる。
【００１６】
請求項３、請求項６、請求項９に記載の発明によれば、本構成を有しない場合に比べ、画像処理に関する制御に負担をかけることなく、必要充分な歴記録情報の取得が容易となる。
【発明を実施するための最良の形態】
【００１７】
図１には、本実施の形態に係る画像処理装置１０が示されている。画像処理装置１０は、大きく分類して、図１の左側から画像形成部１２、用紙収容部１４、後処理部１６としている。
【００１８】
画像形成部１２は、その筐体１８の上面に当該画像処理装置１０の全体を制御する主制御部２０が設けられている。主制御部２０は、制御部本体２２と、キーボード２４と、ディスプレイ２６を備えている。また、主制御部２０の図１の右側（画像形成部１２の上面）には、矩形の開口部が設けられている。この開口部には、開閉蓋３２が取り付けられている。
【００１９】
画像形成部１２は筐体１８によって覆われており、前記主制御部２０からの画像データに応じて発光する光ビームを走査する光走査部と、光走査部によって走査された光ビームを受けて所謂静電潜像が形成される感光体ドラムと、感光体ドラム上の静電潜像へトナー等の現像剤を供給することで現像する現像部と、この現像によって顕像化された画像を記録用紙へ転写する転写部と、転写した記録用紙上の画像を定着させる定着部とを備えている。以下、上記一連の工程を、「画像形成処理全般」という。
【００２０】
上記画像形成部１２が収容された筐体１８の図１の前面は、ほぼ全域に亘って開口されており、所謂観音開き型の一対の開閉扉３４が取り付けられている。
【００２１】
このため、画像形成部１２のメンテナンス時には、この一対の開閉扉３４を開放することで、筐体１８の全面とほぼ同一の面積のメンテナンス作業空間が設けられることになる。
【００２２】
この画像形成部１２の転写部へ送られる記録用紙は、前記開閉蓋３２の下部に設けられたトレイ３６、或いは用紙収容部１４に設けられた複数のトレイ３８から選択的に持ち出されるようになっている。すなわち、複数のトレイ３６，３８には、それぞれサイズの異なる記録用紙を収容可能（同一サイズの場合もある）となっており、主制御部２０からの指示に基づく、画像形成部１２からの指示で何れかのトレイ３６、３８が選択され、例えば、最上層の記録用紙から順番に持ち出すようになっている。
【００２３】
用紙収容部１４の上部は、画像形成された記録用紙の搬送部４０となっている。すなわち、画像形成部１２で画像形成された記録用紙は、後処理が必要な場合に、この搬送部４０を経て、後処理部１６へ搬送されるようになっている。なお、後処理が不要な記録用紙は、前記開閉蓋３２の下部に配置された排出トレイユニット４２へ排出されるようになっている。
【００２４】
後処理部１６は、例えば、フィニッシャー部とも称され、製本、綴じ、穴あけ、折り等の加工、並びにジョブ単位、部数単位での仕分け処理を実行する。
【００２５】
（主制御部２０でのプログラム実行時の異常発生監視制御）
本実施の形態の主制御部２０は、図２に示される如く、ハードウェア５０とソフトウェア５２とに分類することができる。ソフトウェア５２には、ハードウェア５０の仕様の違いを吸収する基本ソフトウェアとしてのオペレーティングシステム（ＯＳ）５４が設けられ、このＯＳ５４上で被監視対象アプリケーションプログラム（ＡＰＬプログラム）５６と、本実施の形態のトレース制御プログラム５８が動作する構成となっている。なお、以下では、単にアプリケーションプログラム（ＡＰＬプログラム）５６とした場合は、被監視対象アプリケーションプログラム５６を示すものとする。
【００２６】
なお、本実施の形態のアプリケーショプログラム５６は、画像処理に関係するプログラムであり、例えば、画像形成のためのプログラム、トレイ選択のタメノプログラム、後処理のためのプログラム、さらに詳細に言えば、ＲＩＰ（ラスター・イメージ・プロセッサ）用プログラム、画像形成時の処理パラメータ（フォント、倍率、用紙サイズ、印字サイズ、印字位置等々）を決定するためのドライバプログラム等がある。
【００２７】
また、ハードウェア５０は、ＣＰＵ（セントラル・プロセシング・ユニット）６０、ＲＡＭ（ランダム・アクセス・メモリ）６２、ＲＯＭ（リード・オンリー・メモリ）６４及びＨＤ（ハード・ディスク）６６等で構成されており、これらはデータバスやコントロールバス等のバス６８で接続されている。また、バス６８は、外部とのデータ入出力を実行するＩ／Ｏ（入出力装置）７０に接続されている。
【００２８】
図３は、アプリケーショプログラム５６を中心とした動作をモデル化し、機能的に示したブロック図である。このブロック図はハード構成を限定するものではない。
【００２９】
図３に示される如く、ＡＰＬプログラム実行部７２には、前記アプリケーショプログラムを起動させる起動機能、並びにアプリケーショプログラムが何らかの要因（障害発生）で異常停止したとき、再度記録させるための再起動機能を備えたＡＰＬ起動部７４が接続されている。
【００３０】
また、ＡＰＬプログラム実行部７２は、トレース制御部７６（図２に示すトレース監視プログラム５８の実行機能）が接続されている。トレース制御部７６は、前記ＯＳ５４やアプリケーショプログラム５６（図２参照）の一部を構成するものではなく、新たな専用ソフトウェアとして実装されるものである。
【００３１】
言い換えれば、既存のＯＳ５４及びアプリケーショプログラム５６に何ら手を加える必要がなく、また、トレース制御部７６自体のバージョンアップ等の際にも、前記ＯＳ５４やアプリケーショプログラム５６に負担をかけるようなこともない構成となっている。
【００３２】
トレース制御部７６は、監視部７８、スタックトレース抽出部８０、解析部８２、トレースプログラム生成部８４を備えている。
【００３３】
監視部７８は、前記ＡＰＬプログラム実行部７２に接続されており、ＡＰＬプログラム実行部７２によるアプリケーショプログラムの実行中に異常があったか否かを監視する役目を有している。
【００３４】
監視部７８は、スタックトレース抽出部８０に接続されている。このスタックトレース抽出部８０は、ＯＳ５４（図２参照）からスタックトレース、すなわち、アプリケーショプログラムの実行中に発生した異常の瞬間を記録した情報を抽出する役目を有している。スタックトレースは、アプリケーショプログラムの実行を動画像の撮影に例えた場合、異常が発生した瞬間の静止画像に相当するものである。
【００３５】
スタックトレース抽出部８０は、解析部８２に接続されており、抽出したスタックトレース情報を解析部８２へ送出する。解析部８２では、スタックトレース抽出部８０から送られてくるスタックトレース情報に基づいて、異常発生要因を解析する。
【００３６】
解析部８２による解析結果は、トレースプログラム生成部８４に送出されるようになっている。
【００３７】
トレースプログラム生成部８４は、前記異常発生が起きた後、当該同一種の異常発生を主体とした監視を行なうための、トレースプログラムを動的に生成する。動的とは、発生した異常に応じて生成することを言い、これによって必要最小限のトレース（履歴記録）となる。同一種の異常発生を主体とした監視とは、一旦発生した異常は繰り返し発生する可能性が高いという観点からきたものであり、特に発生した異常そのものではなく、この異常が発生する要因（事象）等を推測してトレースプログラムを作成することが好ましい。
【００３８】
なお、トレースプログラムの動的作成の際、例えば、基本トレースプログラムを準備しておき、空欄を埋めていくような形式でトレースプログラムを作成するようにしてもよい。
【００３９】
トレースプログラム生成部８４で生成されたトレースプログラムは、トレースプログラム実行部８６に送出される。
【００４０】
トレースプログラム実行部８６は、ＡＰＬプログラム実行部７２に接続されている。このため、トレースプログラム実行部８６は、ＡＰＬプログラム実行部７２で実行されるアプリケーショプログラムを監視し、トレース情報を取得する。
【００４１】
このトレースプログラム実行部８６では、前記アプリケーショプログラム実行中の全ての履歴を記録するのではなく、発生した異常に基づいて、アプリケーショプログラム実行履歴が取捨選択されたトレースが実行される。
【００４２】
また、トレースプログラム実行部８６は、トレースデータ格納部８８に接続されている。トレースデータ格納部８８には、トレースプログラムの実行によって取得したトレースデータが格納されるようになっている。なお、このトレースデータ格納部８８は、ハードウェアの一部を構成するＲＡＭ６２やＨＤ６６（図２参照）等であってもよい。
【００４３】
以下に本実施の形態の作用を図４及び図５のフローチャートに従い説明する。
【００４４】
図４は、アプリケーショプログラム異常監視のメインルーチンである。
【００４５】
ステップ１００では、アプリケーショプログラムの起動指示があったか否かが判断され、否定判定された場合はこのルーチンは終了する。
【００４６】
ステップ１００で肯定判定されると、ステップ１０２へ移行して、ＡＰＬプログラムを起動し、ステップ１０４へ移行する。
【００４７】
ステップ１０４では、トレース制御部における監視を開始する。なお、この監視の開始は、トレースの開始ではなく、アプリケーショプログラムの実行中に発生する異常の監視である。従って、この時点では、トレースは開始されていない。
【００４８】
次のステップ１０６では、アプリケーショプログラムの実行中に異常が発生したか否かが判断され、肯定判定されるとステップ１０８へ移行してトレース制御部７６（監視部７８）からＡＰＬプログラム停止指示が出力され、この指示によりＡＰＬプログラムは一時停止する（ステップ１１０）。
【００４９】
次のステップ１１２では、スタックトレースを抽出する。このスタックトレースは、例えば、ＯＳ５４に保存される異常発生時の瞬間的な事象記録であり、ステップ１１２でこのスタックトレースを抽出すると、ステップ１１４へ移行して、当該スタックトレースに基づいて、トレースプログラムを生成する。すなわち、本実施の形態では、トレースプログラムは、予め生成されたものではなく、異常が発生したときのスタックトレースに基づいて始めて生成されるものであり、言い換えれば、トレースプログラムが動的に生成されるため、発生した異常に即した的確なトレースプログラムとなる。
【００５０】
次のステップ１１６では、生成されたトレースプログラムに従ってトレースの実行が開始される。
【００５１】
図５は、トレースプログラムにおけるトレース処理の流れを示したものであり、図４のメインルーチンとは別に並行処理される。
【００５２】
ステップ１５０では、実行中のＡＰＬプログラムから必要な履歴情報を取得し、次いでステップ１５２へ移行してトレース情報としてトレース格納部８８へ格納し、ステップ１５４へ移行する。ステップ１５４では、ＡＰＬプログラムの実行が終了したか否かが判断され、否定判定された場合はステップ１５０へ戻り、上記工程を繰り返す。また、ステップ１５４で肯定判定された場合はこのルーチンは終了する。
【００５３】
このようなトレースの実行が開始された後、図４のステップ１１８では、トレース制御部７６（監視部７８）からＡＰＬプログラム再開指示が出力され（ステップ１２０）、この指示によりＡＰＬプログラムはその実行が再開し、ステップ１２２へ移行する。
【００５４】
この時点で、アプリケーショプログラム自体は、発生した異常によって処理が中断され、復帰のための様々な処理なされ、当該処理の終了後、ＡＰＬプログラムの再起動がなされる。すなわち、ステップ１２２でＡＰＬプログラムの再起動の指示があったか否かが破断され、肯定判定されると、ステップ１２４へ移行してＡＰＬプログラムが再起動してこのルーチンは終了する。
【図面の簡単な説明】
【００５５】
【図１】本実施の形態に係る画像処理装置の概略構成図である。
【図２】主制御部のハードウェアとソフトウェアとの関係、並びにハードウェアの構成を示す概略図である。
【図３】本実施の形態に係る異常監視システムを中心とした制御を機能的に示したブロック図である。
【図４】本実施の形態に係るアプリケーショプログラム異常監視のメインルーチンを示す制御フローチャートである。
【図５】トレースプログラムにおけるトレース処理の流れを示すフローチャートである。
【符号の説明】
【００５６】
１０    画像処理装置
１２  画像形成部
１４    用紙収容部
１６    後処理部
１８    筐体
２０    主制御部
２２    制御部本体
２４    キーボード
２６    ディスプレイ
３２    開閉蓋
３４    開閉扉
３６    トレイ
３８    トレイ
４０    搬送部
４２    排出トレイユニット
５０    ハードウェア
５２    ソフトウェア
５４    オペレーティングシステム（ＯＳ）
５６    被監視対象アプリケーションプログラム（ＡＰＬプログラム）
５８    トレース制御プログラム（異常発生監視プログラム）
６０    ＣＰＵ（セントラル・プロセシング・ユニット）
６２    ＲＡＭ（ランダム・アクセス・メモリ）
６４    ＲＯＭ（リード・オンリー・メモリ）
６６    ＨＤ（ハード・ディスク）
６８    バス
７０    Ｉ／Ｏ（入出力装置）
７２    ＡＰＬプログラム実行部（実行手段）
７４    ＡＰＬ起動部
７６    トレース制御部（履歴記録制御手段）
７８    監視部（履歴記録制御手段）
８０    スタックトレース抽出部（解析手段）
８２    解析部（解析手段）
８４    トレースプログラム生成部（生成手段）
８６    トレースプログラム実行部（履歴記録手段）
８８    トレースデータ格納部
【図１】
2010049340.tif 000003
【図２】
2010049340.tif 000004
【図３】
2010049340.tif 000005
【図４】
2010049340.tif 000006
【図５】
2010049340.tif 000007