(57)【要約】【課題】より適切なログデータを取得できるログ取得装置及びログ取得方法を提供することである。【解決手段】実施形態のログ取得装置は、ログ取得部と、記録制御部と、を持つ。ログ取得部は、エラーが生じた場合に、前記エラーに関するエラーログデータを取得する。記録制御部は、前記ログ取得部によって取得された前記エラーログデータを記憶装置に記録する。前記記録制御部は、最初にエラーが生じてから取得される所定数のエラーログデータが前記記憶装置から消去されないように、その後に生じたエラーに関するエラーログデータを削除し新たな前記エラーログデータを記録する。【選択図】図１
2015172907.tif 000002
【特許請求の範囲】
【請求項１】
エラーが生じた場合に、前記エラーに関するエラーログデータを取得するログ取得部と、
前記ログ取得部によって取得された前記エラーログデータを記憶装置に記録する記録制御部と、を備え、
前記記録制御部は、最初にエラーが生じてから取得される所定数のエラーログデータが前記記憶装置から消去されないように、その後に生じたエラーに関するエラーログデータを削除し新たな前記エラーログデータを記録する、ログ取得装置。
【請求項２】
前記記録制御部は、前記記憶装置において前記エラーログデータを記録するために設けられた記録領域に、新たな前記エラーログデータを記録するための空き領域が無い場合に、前記最初にエラーが生じてから取得される所定数のエラーログデータの次に古い前記エラーログデータを削除し、前記新たな前記エラーログデータを記録する、請求項１に記載のログ取得装置。
【請求項３】
前記ログ取得部は、エラーが生じずに正常にロジックが実行された場合に、正常にロジックが実行されたことを表す正常ログデータをさらに取得し、
前記記録制御部は、最初にエラーが生じる前に取得された前記正常ログデータのうち、新しいものから所定数の前記正常ログデータを前記記憶装置に記録する、請求項１又は２に記載のログ取得装置。
【請求項４】
エラーが生じた場合に、前記エラーに関するエラーログデータを取得するログ取得ステップと、
前記ログ取得ステップにおいて取得された前記エラーログデータを記憶装置に記録する記録制御ステップと、を有し、
前記記録制御ステップでは、最初にエラーが生じてから取得される所定数のエラーログデータが前記記憶装置から消去されないように、その後に生じたエラーに関するエラーログデータを削除し新たな前記エラーログデータを記録する、ログ取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ログ取得装置及びログ取得方法に関する。
【背景技術】
【０００２】
従来、ＰＬＣ（Programmable Logic Controller）を適用したシステムでソフトウェアのトラブルが生じた場合、ＰＬＣのラダーソフトウェア調査が行われている。このような調査では、罠がけソフトウェアが実行され、トラブルに関するログデータが記録される。そして、記録されたログデータを解析することによってトラブルの原因が検討される。
しかしながら、記録されるログデータが非常に大量となり、解析すべき重要なログデータを的確に取得できない可能性があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２２０５８０号公報
【特許文献２】特開２００２−１９９０４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、より適切なログデータを取得できるログ取得装置及びログ取得方法を提供することである。
【課題を解決するための手段】
【０００５】
実施形態のログ取得装置は、ログ取得部と、記録制御部と、を持つ。ログ取得部は、エラーが生じた場合に、前記エラーに関するエラーログデータを取得する。記録制御部は、前記ログ取得部によって取得された前記エラーログデータを記憶装置に記録する。前記記録制御部は、最初にエラーが生じてから取得される所定数のエラーログデータが前記記憶装置から消去されないように、その後に生じたエラーに関するエラーログデータを削除し新たな前記エラーログデータを記録する。
【図面の簡単な説明】
【０００６】
【図１】実施形態のログ取得装置の機能構成を表すブロック図である。
【図２】正常ログデータの具体例を示す図である。
【図３】エラーログデータの具体例を示す図である。
【図４】正常ログ記録領域の具体例を示す図である。
【図５】確定正常ログ記録領域の具体例を示す図である。
【図６】エラーログ記録領域の具体例を示す図である。
【図７】ログ取得装置１０の動作の流れを表すフローチャートである。
【図８】ステップＳ１１３における記録制御部１０３の処理の詳細を表すフローチャートである。
【発明を実施するための形態】
【０００７】
以下、実施形態のログ取得装置を、図面を参照して説明する。
まず、実施形態のログ取得装置の概略について説明する。
実施形態のログ取得装置は、エラーのログデータが出力された場合、最初にエラーが発生した頃のログデータが残るように記録する。例えば、ログ取得装置は、エラーのログデータを記録するメモリ領域の大きさが制限されている状況において、最初にエラーが発生した頃に取得されたログデータについては上書きを行わないように制御する。一方、その後に出力されたエラーログについては、ログ取得装置は、新しく取得されたログデータで順次上書きしていく。このように制御が行われることにより、最初にエラーが発生した頃のログデータと、最新のログデータとの双方を解析に用いることが可能となる。
【０００８】
次に、実施形態のログ取得装置の詳細について説明する。
図１は、実施形態のログ取得装置の機能構成を表すブロック図である。ログ取得装置１０は、ロジックを実行するロジック実行装置１に接続される。ログ取得装置１０は、ロジック実行装置１によってロジックが実行される際に、ロジック実行装置１からログを取得し、取得されるログを記録する。なお、図１では、説明の便宜のために、ロジック実行装置１とログ取得装置１０が異なる装置として記載されている。しかしながら、ロジック実行装置１とログ取得装置１０とは同一の筐体内に納められた１台の装置として構成されてもよい。また、ロジック実行装置１のプロセッサ及びメモリを用いてログ取得装置１０が実現されてもよい。また、図１のとおり、ロジック実行装置１とログ取得装置１０とが異なる装置として実現されてもよい。以下、各装置について説明する。
【０００９】
ロジック実行装置１は、例えば、ＰＬＣ（Programmable Logic Controller）等の制御装置である。ロジック実行装置１は、実行対象のプログラムによって定められたロジックを一つ一つ順に実行する。ロジック実行装置１が実行するロジックは、ロジック実行装置１の記憶装置に予め記憶されている。
【００１０】
ログ取得装置１０は、制御部１１及びログ記憶部１２を備える。制御部１１は、判定部１０１、ログ取得部１０２及び記録制御部１０３として機能する。制御部１１は、例えば、ＰＬＣ（Programmable Logic Controller）のプロセッサとして構成されてもよいし、ＣＰＵ（Central Processing Unit）等のプロセッサとして構成されてもよい。この場合、上記各機能部は、プロセッサによってプログラムが実行されることにより実現される。また、制御部１１の上記機能の一部又は全部は、ＦＰＧＡ（Field Programmable Gate Array）等のプログラマブルロジックデバイスを用いて実現されてもよい。
【００１１】
判定部１０１は、ロジック実行装置１によるロジックの実行が正常に終了したか否かを判定する。判定部１０１が行う判定処理には、どのような技術が適用されてもよい。
ログ取得部１０２は、ロジック実行装置１によるロジックの実行に関するログを表すデータ（以下、「ログデータ」という。）を取得する。ロジック実行装置１によるロジックの実行が正常に終了した場合、ログ取得部１０２は、正常ログデータを取得する。一方、ロジック実行装置１によるロジックの実行が正常に終了しなかった場合（エラーが生じた場合）、ログ取得部１０２は、エラーログデータを取得する。
【００１２】
記録制御部１０３は、判定部１０１による判定結果に応じて、ログ記憶部１２が備える記録領域のうち、ログ取得部１０２によって新たに取得されたログデータを記録する領域を判定する。記録制御部１０３は、ログ取得部１０２によって取得されたログデータを、判定された領域に記録する。
【００１３】
ログ記憶部１２は、半導体記憶装置等の記憶装置を用いて構成される。ログ記憶部１２の記録領域には、制御部１１によって生成されるログデータを記録しておくための領域（以下、「ログ記録領域」という。）が設けられている。ログ記憶部１２のログ記録領域には、記録制御部１０３によってログデータが書き込まれる。
【００１４】
図２は、正常ログデータの具体例を示す図である。正常ログデータは、例えば以下の各項目の値を有する。日時データ（月）、日時データ（日）、日時データ（時）、日時データ（分）、日時データ（秒）、スキャン回数、収集データ（ロジック実行結果）、収集データ（正常終了コード）。
【００１５】
日時データ（月）には、ログデータが取得された日時の月を表す値が格納される。日時データ（日）には、ログデータが取得された日時の日を表す値が格納される。日時データ（時）には、ログデータが取得された日時の時を表す値が格納される。日時データ（分）には、ログデータが取得された日時の分を表す値が格納される。日時データ（秒）には、ログデータが取得された日時の秒を表す値が格納される。
スキャン回数には、ログデータが取得された日時データ（秒）の中のスキャン回数を表す値が格納される。例えば、スキャン周期が１００ｍｓの場合、同一秒で１０回分のデータが存在し、どのスキャン回数かがわからず前後関係がわからなくなるおそれがある。このような問題に対し、日時データ（秒）とスキャン回数との組み合わせで時間順を明確に表すことが可能となる。
収集データ（ロジック実行結果）には、ロジック実行装置１によってロジックが正常に実行された際の、ロジック実行装置１が備える各機能部の状態を表す情報や、実行されたことによって得られた値などが格納される。収集データ（正常終了コード）には、ロジック実行装置１によるロジックの実行が正常に終了したことを表すコードが格納される。
【００１６】
図３は、エラーログデータの具体例を示す図である。エラーログデータは、例えば以下の各項目の値を有する。日時データ（月）、日時データ（日）、日時データ（時）、日時データ（分）、日時データ（秒）、スキャン回数、収集データ（異常発生箇所）、収集データ（エラーコード）。
【００１７】
日時データ（月）、日時データ（日）、日時データ（時）、日時データ（分）、日時データ（秒）及びスキャン回数に格納される値は、正常ログデータの各項目の値と同じであるため説明を省略する。収集データ（異常発生箇所）には、エラーが生じた際に実行されていたロジックのプログラムコードの場所を表す情報が格納される。収集データ（エラーコード）には、ロジック実行装置１において生じたエラーの種別を表す情報が格納される。
【００１８】
図４は、正常ログ記録領域の具体例を示す図である。正常ログ記録領域は、一時領域と確定正常ログ記録領域とを有する。一時領域に記録可能な正常ログデータの数（ｘ個：ｘは１以上の整数）よりも、確定正常ログ記録領域に記録可能な正常ログデータの数（Ｍ個：Ｍは１以上の整数）の方が大きい。
【００１９】
一時領域は、ｘ個のログ格納領域５１を有する。各ログ格納領域５１は、１つの正常ログデータを記録するのに必要な記録領域を有している。
記録制御部１０３は、１個目の正常ログデータを一時領域に記録する際には、１番目のログ格納領域５１に正常ログデータを記録する。記録制御部１０３は、２個目の正常ログデータを一時領域に記録する際には、１番目のログ格納領域５１に記録されている正常ログデータを２番目のログ格納領域５１に移動させ、２個目の正常ログデータを１番目のログ格納領域５１に記録する。
【００２０】
記録制御部１０３は、（ｘ＋１）個目の正常ログデータを一時領域に記録する際には、最も古い正常ログデータ（すなわち、ｘ番目のログ格納領域５１に記録されている正常ログデータ）を破棄する。そして、記録制御部１０３は、１番目から（ｘ−１）番目の各ログ格納領域５１の正常ログデータを１つずつずらすことによって、それぞれ２番目からｘ番目のログ格納領域５１に記録する。そして、記録制御部１０３は、（ｘ＋１）個目の正常ログデータを１番目のログ格納領域５１に記録する。
このように、記録制御部１０３は、正常ログ記録領域の一時領域に対し、１番目のログ格納領域５１から順に、ＦＩＦＯ（First In First Out）形式で正常ログデータを記録する。
【００２１】
確定正常ログ記録領域は、Ｍ個のログ格納領域５２を有する。各ログ格納領域５２は、１つの正常ログデータを記録するのに必要な記録領域を有している。
記録制御部１０３は、判定部１０１によってエラーが発生したと判定されると、その時点で一時領域に記憶されている正常ログデータ（以下、「確定正常ログ」という。）を確定正常ログ記録領域に移動させる。
【００２２】
図５は、確定正常ログ記録領域の具体例を示す図である。確定正常ログ記録領域は、上書き領域と保管領域とを有する。確定正常ログ記録領域は、Ｍ個（Ｍは１以上の整数）のログ格納領域５２を有する。各ログ格納領域５２は、１つの確定正常ログデータを記録するのに必要な記録領域を有している。Ｍ個のログ格納領域５２のうち、ｍ個（ｍは１以上の整数）のログ格納領域５２が保管領域に割り当てられ、残る（Ｍ−ｍ）個のログ格納領域５２が上書き領域に割り当てられる。Ｍはｍよりも大きい値である。ｍの値は、保管しておきたい確定正常ログデータの個数に応じて、設計者や利用者などによって適宜決定される。以下の説明では、ｍの値を「正常ログ最大保管数」と呼ぶ。
【００２３】
記録制御部１０３は、１個目の確定正常ログデータを確定正常ログ記録領域に記録する際には、１番目のログ格納領域５２に確定正常ログデータを記録する。記録制御部１０３は、２個目の確定正常ログデータを確定正常ログ記録領域に記録する際には、１番目のログ格納領域５２に記録されている確定正常ログデータを２番目のログ格納領域５２に移動させ、２個目の確定正常ログデータを１番目のログ格納領域５２に記録する。
【００２４】
記録制御部１０３は、（Ｍ＋１）個目の確定正常ログデータを確定正常ログ記録領域に記録する際には、上書き領域において最も古い確定正常ログデータ（すなわち、（Ｍ−ｍ）番目のログ格納領域５２に記録されている確定正常ログデータ）を破棄する。記録制御部１０３は、１番目から｛Ｍ−（ｍ＋１）｝番目の各ログ格納領域５２の確定正常ログデータを１つずつずらすことによって、それぞれ２番目から（Ｍ−ｍ）番目のログ格納領域５２に記録する。そして、記録制御部１０３は、Ｍ＋１個目の確定正常ログデータを１番目のログ格納領域５２に記録する。
【００２５】
このように、記録制御部１０３は、確定正常ログ記録領域のうち上書き領域に記録されている確定正常ログデータには上書きする。すなわち、記録制御部１０３は、上書き領域に対し、１番目のログ格納領域５２から順にＦＩＦＯ形式で確定正常ログデータを記録する。一方、記録制御部１０３は、確定正常ログ記録領域のうち保管領域に記録されている確定正常ログデータには上書きをしない。そのため、上書き領域には常に最新の確定正常ログデータが記録され、保管領域には最初にエラーが発生した頃の確定正常ログデータが保管される。
【００２６】
図６は、エラーログ記録領域の具体例を示す図である。エラーログ記録領域は、上書き領域と保管領域とを有する。エラーログ記録領域は、Ｎ個（Ｎは１以上の整数）のログ格納領域５３を有する。各ログ格納領域５３は、１つのエラーログデータを記録するのに必要な記録領域を有している。Ｎ個のログ格納領域５３のうち、ｎ個（ｎは１以上の整数）のログ格納領域５３が保管領域に割り当てられ、残る（Ｎ−ｎ）個のログ格納領域５３が上書き領域に割り当てられる。Ｎはｎよりも大きい値である。ｎの値は、保管しておきたいエラーログデータの個数に応じて、設計者や利用者などによって適宜決定される。以下の説明では、ｎの値を「最大保管数」と呼ぶ。
【００２７】
記録制御部１０３は、１個目のエラーログデータをエラーログ記録領域に記録する際には、１番目のログ格納領域５３にエラーログデータを記録する。記録制御部１０３は、２個目のエラーログデータをエラーログ記録領域に記録する際には、１番目のログ格納領域５３に記録されているエラーログデータを２番目のログ格納領域５３に移動させ、２個目のエラーログデータを１番目のログ格納領域５３に記録する。
【００２８】
記録制御部１０３は、（Ｎ＋１）個目のエラーログデータをエラーログ記録領域に記録する際には、上書き領域において最も古いエラーログデータ（すなわち、（Ｎ−ｎ）番目のログ格納領域５３に記録されているエラーログデータ）を破棄する。記録制御部１０３は、１番目から｛Ｎ−（ｎ＋１）｝番目の各ログ格納領域５３のエラーログデータを１つずつずらすことによって、それぞれ２番目から（Ｎ−ｎ）番目のログ格納領域５３に記録する。そして、記録制御部１０３は、Ｎ＋１個目のエラーログデータを１番目のログ格納領域５３に記録する。
【００２９】
このように、記録制御部１０３は、エラーログ記録領域のうち上書き領域に記録されているエラーログデータには上書きする。すなわち、記録制御部１０３は、上書き領域に対し、１番目のログ格納領域５３から順にＦＩＦＯ形式でエラーログデータを記録する。一方、記録制御部１０３は、エラーログ記録領域のうち保管領域に記録されているエラーログデータには上書きをしない。そのため、上書き領域には常に最新のエラーログデータが記録され、保管領域には最初にエラーが発生した頃のエラーログデータが保管される。
【００３０】
図７は、ログ取得装置１０の動作の流れを表すフローチャートである。以下、ログ取得装置１０の動作の流れについて説明する。
ロジック実行装置１によるロジックの実行に応じて、ログ取得装置１０の判定部１０１は、ロジック実行装置１によるロジックの実行が正常に終了したか否か判定する（ステップＳ１０１）。ロジックの実行が正常に終了した場合（ステップＳ１０２−ＹＥＳ）、ログ取得部１０２は、正常ログデータを取得する（ステップＳ１０３）。
【００３１】
次に、記録制御部１０３は、エリア設定がなされているか否か判定する（ステップＳ１０４）。エリア設定とは、正常ログデータに関しては、図５に示すように保管領域設けて記録することを指し、エラーログデータに関しては図６に示すように保管領域を設けて記録することを指す。エリア設定がなされていない場合（ステップＳ１０４−ＮＯ）、記録制御部１０３は、保管領域に対しＦＩＦＯ方式で正常ログデータを記録する（ステップＳ１０５）。一方、エリア設定がなされている場合（ステップＳ１０４−ＹＥＳ）、記録制御部１０３は、一時領域に対しＦＩＦＯ方式で正常ログデータを記録する（ステップＳ１０６）。
【００３２】
ステップＳ１０２において、ロジックの実行が正常に終了していない場合（ステップＳ１０２−ＮＯ）、ログ取得部１０２は、エラーログデータを取得する（ステップＳ１０７）。
次に、記録制御部１０３は、エリア設定がなされているか否か判定する（ステップＳ１０８）。エリア設定がなされていない場合（ステップＳ１０８−ＮＯ）、記録制御部１０３は、エラーログ記録領域に対しＦＩＦＯ方式でエラーログデータを記録する（ステップＳ１０９）。
【００３３】
一方、エリア設定がなされている場合（ステップＳ１０８−ＹＥＳ）、記録制御部１０３は、エラーログ記録領域の保管領域に記録されているエラーログデータの数が、最大保管数（ｎ）を超えているか否か判定する（ステップＳ１１０）。
【００３４】
エラーログ記録領域の保管領域に記録されているエラーログデータの数が、最大保管数（ｎ）を超えていない場合（ステップＳ１１０−ＮＯ）、記録制御部１０３は、上書き領域及び保管領域に記録されているエラーログデータを１つずつずらすことによって、番号が１つ大きいログ格納領域５３に移動させる。そして、記録制御部１０３は、新たに取得されたエラーログデータを１番目のログ格納領域５３に記録する（ステップＳ１１１）。
【００３５】
エラーログ記録領域の保管領域に記録されているエラーログデータの数が、最大保管数（ｎ）を超えている場合（ステップＳ１１０−ＹＥＳ）、記録制御部１０３は、上書き領域において最も古いエラーログデータ（すなわち、（Ｎ−ｎ）番目のログ格納領域５３に記録されているエラーログデータ）を破棄する。次に、記録制御部１０３は、上書き領域の各ログ格納領域５３（すなわち、１番目から｛Ｎ−（ｎ＋１）｝番目の各ログ格納領域５３）のエラーログデータを１つずつずらすことによって、それぞれ２番目から（Ｎ−ｎ）番目のログ格納領域５３に記録する。そして、記録制御部１０３は、新たに取得されたエラーログデータを１番目のログ格納領域５３に記録する（ステップＳ１１２）。
【００３６】
ステップＳ１１１又はステップＳ１１２の処理の後、記録制御部１０３は、正常ログ記録領域の一時領域に記録されている全ての正常ログデータを、確定正常ログ記録領域に移動させる（ステップＳ１１３）。このとき、記録制御部１０３は、確定正常ログ記録領域の保管領域に記録されている確定正常ログデータの数が、正常ログ最大保管数（ｍ）を超えているか否かに応じて異なる処理を行う。
【００３７】
図８は、ステップＳ１１３における記録制御部１０３の処理の詳細を表すフローチャートである。記録制御部１０３は、確定正常ログ記録領域の保管領域に記録されている確定正常ログデータの数が、正常ログ最大保管数（ｍ）を超えているか否か判定する（ステップＳ２０１）。
【００３８】
確定正常ログ記録領域の保管領域に記録されている確定正常ログデータの数が、正常ログ最大保管数（ｍ）を超えていない場合（ステップＳ２０１−ＮＯ）、記録制御部１０３は、上書き領域及び保管領域に記録されている確定正常ログデータを１つずつずらすことによって、番号が１つ大きいログ格納領域５２に移動させる。そして、記録制御部１０３は、新たに取得された確定正常ログデータを１番目のログ格納領域５２に記録する（ステップＳ２０２）。
【００３９】
一方、確定正常ログ記録領域の保管領域に記録されている確定正常ログデータの数が、正常ログ最大保管数（ｍ）を超えている場合（ステップＳ２０１−ＹＥＳ）、記録制御部１０３は、上書き領域において最も古い確定正常ログデータ（すなわち、（Ｍ−ｍ）番目のログ格納領域５２に記録されている確定正常ログデータ）を破棄する。次に、記録制御部１０３は、上書き領域の各ログ格納領域５２（すなわち、１番目から｛Ｍ−（ｍ＋１）｝番目の各ログ格納領域５２）の確定正常ログデータを１つずつずらすことによって、それぞれ２番目から（Ｍ−ｍ）番目のログ格納領域５２に記録する。そして、記録制御部１０３は、新たに取得された確定正常ログデータを１番目のログ格納領域５２に記録する（ステップＳ２０３）。
ログ取得装置１０は、ロジック実行装置１によってロジックが実行される度に図７及び図８に示される処理を行う。
【００４０】
以上説明した少なくともひとつの実施形態によれば、記録制御部１０３を持つことにより、エラーが発生し始めた際のエラーログデータを、後の解析時に取得することが可能となる。
【００４１】
このような実施形態の効果について詳細に説明する。
従来は、エラーログデータは限りある記録領域にＦＩＦＯ形式で記録されていた。そのため、エラーが長時間にわたり継続すると、エラーログデータが大量に発生してしまい、最初にエラーが発生した頃のエラーログデータがその後のエラーログデータで書き換えられてしまう。したがって、最初にエラーが発生した頃のエラーログデータを解析に用いることができない場合があった。
【００４２】
このような問題に対し、実施形態のログ取得装置１０では、エラーログ記録領域が上書き領域と保管領域とに分けて用いられ、最初にエラーが発生した頃のエラーログデータは上書きされることなく保管領域に記録される。そのため、最初にエラーが発生した頃のエラーログデータを解析に用いることが可能となる。また、上書き領域ではＦＩＦＯ形式でエラーログデータが順次書き換えられる。そのため、最新のエラーログデータも解析に用いることが可能となる。
また、以上説明した少なくともひとつの実施形態によれば、記録制御部１０３を持つことにより、エラーが発生する直前の正常ログデータを、後の解析時に取得する事が可能となる。
【００４３】
次に、実施形態のログ取得装置の適用例について説明する。
実施形態のログ取得装置１０は、例えば、ＰＬＣ ＲＡＳ（Reliability Availability Serviceability）収集システムに適用されてもよい。ＰＬＣ ＲＡＳ収集システムでは、ＰＬＣラダーソフトウェアにＲＡＳ収集機能が実装され、罠がけソフトウェアで検知した異常な状態のデータがエラーログデータとして収集される。ＰＬＣの記憶容量（レジスタやメモリ等）は、パソコンなどのシステムよりも容量が少ないことが多い。そのため、限られたエラーログ記録領域であっても、最初にエラーが発生した頃のエラーログデータを後の解析時に取得できる本実施形態のログ取得装置１０が有効である。
【００４４】
次に、実施形態のログ取得装置の変形例について説明する。
記録制御部１０３は、最初にエラーが発生した頃のエラーログデータを保管できるような制御であれば、他の制御によってエラーログデータの記録を行ってもよい。例えば、記録制御部１０３は以下のように動作してもよい。
【００４５】
記録制御部１０３は、１個目のエラーログデータをエラーログ記録領域に記録する際には、保管領域にエラーログデータを記録する。記録制御部１０３は、２個目のエラーログデータをエラーログ記録領域に記録する際には、保管領域のうち、１個目のエラーログデータが記録されたログ格納領域５３とは異なるログ格納領域５３に記録する。記録制御部１０３は、保管領域の全てのログ格納領域５３にエラーログデータが記録されると、新たに取得されたエラーログデータを上書き領域のログ格納領域５３に記録する。その後、記録制御部１０３は、上書き領域において、ＦＩＦＯ形式でエラーログデータを記録する。このような制御によっても、上書き領域には常に最新のエラーログデータが記録され、保管領域にはエラーが発生したときのエラーログデータが保管される。
【００４６】
記録制御部１０３は、ログ記憶部１２に記憶されているデータを、所定のタイミングで外部記憶装置（例えば、ハードディスク装置、着脱可能な半導体記憶装置など）に記録してもよい。また、ログ記憶部１２は、ハードディスク装置や着脱可能な半導体記憶装置を用いて構成されてもよい。
記録制御部１０３は、ログデータを一のログ格納領域から他のログ格納領域へ移動させる場合、いわゆる移動処理（元のログデータを削除する処理）によって移動させてもよいし、コピー処理（元のログデータを残したままにする処理）によって移動させてもよい。
ログ取得部１０２によって取得される正常ログデータとエラーログデータとは、上記の説明では図２及び図３に示されるように異なる項目を有する。しかしながら、正常ログデータ及びエラーログデータが有する全ての項目が同じであってもよい。
【００４７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００４８】
１…ロジック実行装置，  １０…ログ取得装置，  １１…制御部，  １２…ログ記憶部，  １０１…判定部，  １０２…ログ取得部，  １０３…記録制御部
【図１】
2015172907.tif 000003
【図２】
2015172907.tif 000004
【図３】
2015172907.tif 000005
【図４】
2015172907.tif 000006
【図５】
2015172907.tif 000007
【図６】
2015172907.tif 000008
【図７】
2015172907.tif 000009
【図８】
2015172907.tif 000010