(57)【要約】      （修正有）【課題】制御対象で異常が発生してもログ情報を確実に採取する。【解決手段】制御装置１００（ＣＭ＃１，ＣＭ＃２）は、情報処理装置１の制御を行なう第１処理部１０５（ＣＰＵ）と、第１処理部によって情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域１０６と、情報処理装置の動作状態の監視制御を行なう第２処理部１１０（ＦＰＧＡ）と、ログ情報を記憶する不揮発性の第２メモリ領域１２１，１２２と、を備える。第２処理部は、第１メモリ領域にログ情報が記憶されたか否かを判断し、第１メモリ領域にログ情報が記憶されたと判断した場合、ログ情報を第１メモリ領域から読み出して第２のメモリ領域に書き込む制御を行なう。【選択図】図１
2017091456.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置の制御を行なう第１処理部と、
前記第１処理部によって前記情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域と、
前記情報処理装置の動作状態の監視制御を行なう第２処理部と、
前記ログ情報を記憶する不揮発性の第２メモリ領域と、を備え、
前記第２処理部は、
前記第１メモリ領域に前記ログ情報が記憶されたか否かを判断し、
前記第１メモリ領域に前記ログ情報が記憶されたと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、制御装置。
【請求項２】
前記第１処理部は、前記ログ情報を前記第１メモリ領域に書き込むと前記第２処理部に対し割込み情報を通知し、
前記第２処理部は、前記第１処理部から前記割込み情報を受けると、前記第１メモリ領域に前記ログ情報が記憶されたと判断する、請求項１に記載の制御装置。
【請求項３】
前記第２処理部は、
前記監視制御に係る情報に基づき前記情報処理装置の動作状態に異常が発生したか否かを判断し、
前記情報処理装置の動作状態に異常が発生したと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、請求項１または請求項２に記載の制御装置。
【請求項４】
前記第２処理部は、
前記ログ情報の重要度を判定し、
判定した前記ログ情報の重要度に応じた前記ログ情報の書込み制御を行なう、請求項１〜請求項３のいずれか一項に記載の制御装置。
【請求項５】
前記第２処理部は、
性能の異なる複数種類の不揮発性記録媒体の中から、前記ログ情報の重要度に応じた不揮発性記録媒体を、前記第２メモリ領域として選択し、
選択した不揮発性記録媒体に前記ログ情報を書き込む制御を行なう、請求項４に記載の制御装置。
【請求項６】
前記性能の異なる複数種類の不揮発性記録媒体は、書込み制限回数が所定数以下の第１不揮発性記録媒体と書込み制限回数が前記所定数よりも大きい第２不揮発性記録媒体とを含み、
前記第２処理部は、
前記ログ情報の重要度に応じて、前記第１不揮発性記録媒体と前記第２不揮発性記録媒体とのいずれか一方を、前記第２メモリ領域として選択し、
選択した第１または第２不揮発性記録媒体に前記ログ情報を書き込み、
前記第２不揮発性記録媒体に書き込まれた前記ログ情報の量が所定量を超えた場合、前記第２不揮発性記録媒体に書き込まれた前記ログ情報を、前記第１不揮発性記録媒体に移動させる制御を行なう、請求項５に記載の制御装置。
【請求項７】
前記第２処理部は、
前記制御装置とともに冗長構成を成す他の制御装置における不揮発性記録媒体に、通信パスを介して接続され、
前記ログ情報の重要度に応じて、前記他の制御装置における不揮発性記録媒体を前記第２メモリ領域として選択し、
前記通信パスを介して、選択した前記他の制御装置における不揮発性記録媒体に前記ログ情報を書き込む制御を行なう、請求項４〜請求項６のいずれか一項に記載の制御装置。
【請求項８】
情報処理装置の制御を行なう第１処理部と、前記第１処理部によって前記情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域と、前記情報処理装置の動作状態の監視制御を行なう第２処理部と、前記ログ情報を記憶する不揮発性の第２メモリ領域と、を備えた制御装置において実行されるプログラムであって、
前記第１メモリ領域に前記ログ情報が記憶されたか否かを判断し、
前記第１メモリ領域に前記ログ情報が記憶されたと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、
処理を、前記第２処理部に実行させる、制御プログラム。
【請求項９】
情報処理装置の制御を行なう第１処理部と、前記第１処理部によって前記情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域と、前記情報処理装置の動作状態の監視制御を行なう第２処理部と、前記ログ情報を記憶する不揮発性の第２メモリ領域と、を備えた制御装置による制御方法であって、
前記第２処理部が、
前記第１メモリ領域に前記ログ情報が記憶されたか否かを判断し、
前記第１メモリ領域に前記ログ情報が記憶されたと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件明細書に開示の発明は、制御装置、制御プログラムおよび制御方法に関する。
【背景技術】
【０００２】
ストレージ装置，サーバ装置等の情報処理装置においては、高機能化の要求に応じて、マルチコアＣＰＵ（Central Processing Unit）の普及や、ハイパバイザによる仮想環境の普及が進んでいる。そのため、情報処理装置について保存されるログ情報の量が、これまでの数倍に増加している。
【０００３】
例えば、ストレージ装置では、当該ストレージ装置を管理すべくＣＰＵやメモリを含むＣＭ（Controller Module）が、冗長化されて備えられている。ストレージ装置の通常動作時には、ＣＭに組み込まれたＦＷ（firmware）によって、ストレージ装置についてのログ情報がメモリに保存される。メモリに保存されたログ情報は、ＦＷによって、一定のタイミングでＳＳＤ（Solid State Drive）等の不揮発性記録媒体に書き込まれるとともに、冗長化された他のＣＭの不揮発性記録媒体に転送されて書き込まれる。これにより、ログ情報が、一対のＣＭにおいて二重化されて保存される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平５−８８９４７号公報
【特許文献２】特開２００９−９２１３号公報
【特許文献３】特開２０１５−１１５２４号公報
【特許文献４】特表２０１５−５１５０４７号公報
【特許文献５】特開２０１５−１３８３０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述のごとく、ＣＭのログ情報の書込み制御は、ＣＭに組み込まれたＦＷによって行なわれる。このため、ＣＰＵハング等のＣＭ異常が発生した場合、ＦＷは動作することができない。したがって、ＣＭ異常の解析等に必要な、異常ＣＭのログ情報を、メモリから不揮発性記録媒体に採取することも、冗長化された他系のＣＭに転送することもできない。
【０００６】
一つの側面で、本件明細書に開示の発明は、制御対象で異常が発生してもログ情報を確実に採取できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
本件の制御装置は、情報処理装置の制御を行なう第１処理部と、前記第１処理部によって前記情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域と、前記情報処理装置の動作状態の監視制御を行なう第２処理部と、前記ログ情報を記憶する不揮発性の第２メモリ領域と、を備える。前記第２処理部は、前記第１メモリ領域に前記ログ情報が記憶されたか否かを判断し、前記第１メモリ領域に前記ログ情報が記憶されたと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう。
【発明の効果】
【０００８】
制御対象で異常が発生してもログ情報を確実に採取することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態としての制御装置を含むストレージ装置のハードウェア構成の一例を示すブロック図である。
【図２】本発明の一実施形態としての制御装置の機能構成の一例を示すブロック図である。
【図３】本実施形態におけるログ種類とログ重要度とを対応付けるテーブル（第１テーブル）の具体例を示す図である。
【図４】本実施形態におけるログ重要度と書込み手法とを対応付けるテーブル（第２テーブル）の具体例を示す図である。
【図５】本実施形態の制御装置の動作を説明するフローチャートである。
【図６】本実施形態の制御装置の動作を説明するフローチャートである。
【図７】本実施形態の制御装置の動作を説明するフローチャートである。
【図８】比較対象技術におけるログの流れを説明する図である。
【図９】本実施形態におけるランク＃１のログの流れを説明する図である。
【図１０】本実施形態におけるランク＃２のログの流れを説明する図である。
【図１１】本実施形態におけるランク＃３のログの流れを説明する図である。
【図１２】本実施形態におけるランク＃４のログの流れを説明する図である。
【発明を実施するための形態】
【００１０】
以下に、図面を参照し、本願の開示する制御装置、制御プログラムおよび制御方法の実施形態について、詳細に説明する。ただし、以下に示す実施形態は、あくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能を含むことができる。そして、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【００１１】
〔１〕本実施形態のストレージ装置のハードウェア構成
まず、図１を参照しながら、本実施形態のストレージ制御装置（制御装置）１００を含むストレージ装置（ストレージシステム，情報処理装置）１のハードウェア構成について説明する。なお、図１は、本実施形態のストレージ制御装置１００を含むストレージ装置１のハードウェア構成の一例を示すブロック図である。
【００１２】
本ストレージ装置１は、ドライブエンクロージャ（Drive Enclosure：ＤＥ）３０に格納された記憶装置３１を仮想化して、仮想ストレージ環境を形成する。そして、ストレージ装置１は、仮想ボリュームを、上位装置であるホスト装置（サーバ）２に提供する。
【００１３】
本ストレージ装置１は、１以上（図１に示す例では１つ）のホスト装置２に対して通信可能に接続されている。ホスト装置２とストレージ装置１とは、後述するＣＡ（Communication Adapter）１０１，１０２により接続されている。
【００１４】
ホスト装置２は、例えば、サーバ機能を備えた情報処理装置であり、本ストレージ装置１との間において、ＮＡＳ（Network Attached Storage）やＳＡＮ（Storage Area Network）のコマンドを送受信する。ホスト装置２は、例えば、ストレージ装置１に対してＮＡＳにおけるリード／ライト等のストレージアクセスコマンドを送信することにより、ストレージ装置１が提供するボリュームにデータの書込または読出を行なう。
【００１５】
そして、本ストレージ装置１は、ホスト装置２からボリュームに対して行なわれる入出力要求（例えば、書込み要求や読出し要求）に応じて、このボリュームに対応する記憶装置３１に対して、データの読出（リード）や書込（ライト）等の処理を行なう。なお、以下では、ホスト装置２からの入出力要求のことをＩ／Ｏ要求という場合がある。
【００１６】
また、ストレージ装置１には、管理端末３が通信可能に接続されている。管理端末３は、キーボードやマウス等の入力装置や、表示装置を備える情報処理装置であって、システム管理者等のユーザが各種情報の入力操作を行なう。例えば、ユーザは、管理端末３を介して、各種設定等に係る情報を入力する。入力された情報は、ホスト装置２やストレージ装置１に送信される。
【００１７】
本ストレージ装置１は、図１に示すように、複数（本実施形態では２つ）のＣＭ（Controller Module）１００ａ，１００ｂ及び１つ以上（図１に示す例では１つ）のＤＥ３０を備える。
【００１８】
ＤＥ３０は、１以上（図１に示す例では４つ）の記憶装置（物理ディスク）３１を搭載可能であり、これらの記憶装置３１の記憶領域（実ボリューム，実ストレージ）を、本ストレージ装置１に対して提供する。
【００１９】
例えば、ＤＥ３０は、複数段のスロット（図示省略）を備え、これらのスロットに、記憶装置３１を装着することにより、実ボリューム容量を随時変更することができる。また、複数の記憶装置３１を用いてＲＡＩＤ（Redundant Arrays of Inexpensive Disks）を構成することができる。
【００２０】
記憶装置３１は、後述するメモリ１０６と比較すると容量の大きい、ＨＤＤ，ＳＳＤ等の記憶装置（ストレージ）であって、種々のデータを格納するものである。なお、以下では、記憶装置のことをドライブもしくはディスクという場合がある。
【００２１】
各ＤＥ３０は、ＣＭ１００ａのデバイスアダプタ（Device Adapter：ＤＡ）１０３，１０３とＣＭ１００ｂのＤＡ１０３，１０３とそれぞれ接続されている。そして、各ＤＥ３０には、ＣＭ１００ａ，１００ｂのいずれからもアクセスして、データの書込や読出を行なうことができる。すなわち、ＤＥ３０の各記憶装置３１に対して、ＣＭ１００ａ，１００ｂのそれぞれを接続することにより、記憶装置３１へのアクセス経路が冗長化されている。
【００２２】
コントローラエンクロージャ（Controller Enclosure：ＣＥ）４０は、１以上（図１に示す例では２つ）のＣＭ１００ａ，１００ｂを備える。
【００２３】
ＣＭ１００ａ，１００ｂは、ストレージ装置１内の動作を制御する制御装置（コントローラ，ストレージ制御装置）であり、ホスト装置２から送信されるＩ／Ｏ要求に従って、ＤＥ３０の記憶装置３１へのデータアクセス制御等、各種制御を行なう。又、ＣＭ１００ａ，１００ｂは互いに同様の構成を有している。以下、ＣＭを示す符号としては、複数のＣＭのうち１つを特定する場合には符号１００ａ，１００ｂを用い、任意のＣＭを指すときには符号１００を用いる。また、ＣＭ１００ａをＣＭ＃１と、ＣＭ１００ｂをＣＭ＃２と、それぞれ表す場合がある。
【００２４】
ＣＭ１００ａ，１００ｂは二重化されており、通常は、ＣＭ１００ａ（ＣＭ＃１）がプライマリとして各種制御を行なう。しかし、プライマリＣＭ１００ａの故障時には、セカンダリのＣＭ１００ｂ（ＣＭ＃２）がプライマリとしてＣＭ１００ａの動作を引き継ぐ。
【００２５】
ＣＭ１００ａ，１００ｂは、ＣＡ１０１，１０２を介してそれぞれホスト装置２に接続される。そして、ＣＭ１００ａ，１００ｂは、ホスト装置２から送信されるリード／ライト等のＩ／Ｏ要求を受信し、ＤＡ１０３等を介して記憶装置３１の制御を行なう。また、ＣＭ１００ａ，１００ｂは、ＰＣＩｅ（Peripheral Component Interconnect Express）等のインタフェース（後述する通信パス１３１，１３２）を介して相互に通信可能に接続される。
【００２６】
ＣＭ１００は、図１に示すように、ＣＡ１０１，１０２と複数（図１に示す例では２つ）のＤＡ１０３，１０３とを備えるとともに、ＣＰＵ１０５，メモリ１０６，フラッシュメモリ１０７およびＩＯＣ（Input Output Controller）１０８を備える。ＣＡ１０１，１０２，ＤＡ１０３，ＣＰＵ１０５，メモリ１０６，フラッシュメモリ１０７，ＩＯＣ１０８は、例えばＰＣＩｅインタフェース１０４を介して相互に通信可能に接続される。
【００２７】
また、ＣＭ１００のＣＰＵ１０５には、チップセット１０９を介して監視制御用のＦＰＧＡ（Flexible Programmable Gate Array）１１０が接続されている。さらに、ＦＰＧＡ１１０には、後述するごとく、性能の異なる２種類の不揮発性記録媒体１２１，１２２が接続されている。
【００２８】
ＣＡ１０１，１０２は、ホスト装置２や管理端末３等から送信されたデータを受信したり、ＣＭ１００から出力するデータをホスト装置２や管理端末３等に送信したりするアダプタである。すなわち、ＣＡ１０１，１０２は、ホスト装置２等の外部装置との間でのデータの入出力を制御する。
【００２９】
ＣＡ１０１は、ＮＡＳを介してホスト装置２や管理端末３と通信可能に接続するネットワークアダプタであり、例えば、ＬＡＮ（Local Area Network）インタフェース等である。各ＣＭ１００は、ＣＡ１０１により図示しない通信回線を介してホスト装置２等とＮＡＳにより接続され、Ｉ／Ｏ要求の受信やデータの送受信等を行なう。図１に示す例においては、ＣＭ１００ａ，１００ｂのそれぞれに２つのＣＡ１０１，１０１が備えられている。
【００３０】
ＣＡ１０２は、ＳＡＮを介してホスト装置２と通信可能に接続するネットワークアダプタであり、例えば、ｉＳＣＳＩ（Internet Small Computer System Interface）インタフェースやＦＣ（Fibre Channel）インタフェースである。各ＣＭ１００は、ＣＡ１０２により図示しない通信回線を介してホスト装置２等とＳＡＮにより接続され、Ｉ／Ｏ要求の受信やデータの送受信等を行なう。図１に示す例においては、ＣＭ１００ａ，１００ｂのそれぞれに１つのＣＡ１０２が備えられている。
【００３１】
ＤＡ１０３は、ＤＥ３０や記憶装置３１等と通信可能に接続するためのインタフェースである。ＤＡ１０３は、ＤＥ３０の記憶装置３１が接続され、各ＣＭ１００は、ホスト装置２から受信したＩ／Ｏ要求に基づき、記憶装置３１に対するアクセス制御を行なう。
【００３２】
各ＣＭ１００は、ＤＡ１０３を介して、記憶装置３１に対するデータの書込や読出を行なう。また、図１に示す例においては、ＣＭ１００ａ，１００ｂのそれぞれに２つのＤＡ１０３，１０３が備えられている。そして、ＣＭ１００ａ，１００ｂのそれぞれにおいて、各ＤＡ１０３にＤＥ３０が接続されている。
【００３３】
これにより、ＤＥ３０の記憶装置３１には、ＣＭ１００ａ，１００ｂのいずれからもデータの書込や読出を行なうことができる。
【００３４】
フラッシュメモリ１０７は、ＣＰＵ１０５が実行するプログラムや種々のデータ等を格納する記憶装置である。
【００３５】
メモリ（メインメモリ，第１メモリ領域）１０６は、種々のデータやプログラムを一時的に格納する記憶装置であり、制御プログラム１６０を格納するほか、キャッシュ領域１６１やログ情報記憶領域１６２を有する（図２参照）。制御プログラム１６０は、例えば、本実施形態の制御機能（例えば、図２に示すログ発生割込み通知部１５２としての機能）を実現すべくＣＰＵ１０５が実行するプログラムであり、メモリ１０６あるいはフラッシュメモリ１０７に保存される。キャッシュ領域１６１は、ホスト装置２から受信したデータや、ホスト装置２に対して送信するデータを一時的に格納する。ログ情報記憶領域１６２は、ＣＭ１００を含むストレージ装置１で発生する各種ログ情報を一時的に記憶保存する。なお、メモリ１０６は、前述した記憶装置（ドライブ）３１と比較するとアクセス速度は高速であるが容量の小さい、ＲＡＭ（Random Access Memory）等である。
【００３６】
ＩＯＣ１０８は、各ＣＭ１００内におけるデータ転送を制御する制御装置であり、例えば、メモリ１０６に格納されたデータをＣＰＵ１０５を介することなく転送させるＤＭＡ（Direct Memory Access）転送を実現する。
【００３７】
ＣＰＵ１０５は、種々の制御や演算を行なう処理装置（第１処理部）であり、例えばマルチコアプロセッサ（マルチコアＣＰＵ）である。ＣＰＵ１０５は、メモリ１０６，フラッシュメモリ１０７等に格納されたＯＳ（Operating System）やプログラムを実行することにより、種々の機能を実現する。特に、本実施形態において、ＣＰＵ１０５は、制御プログラム１６０を実行することで、後述するログ発生割込み通知部１５２（図２参照）としての機能を果たす。
【００３８】
冗長化された二つのＣＭ１００ａとＣＭ１００ｂとの間には、二つの通信パス１３１，１３２が設けられている。
【００３９】
第１通信パス１３１は、ＣＭ１００ａのＣＰＵ１０５とＣＭ１００ｂのＣＰＵ１０５との間を接続するＣＰＵ間通信パス（パス＃１という場合がある）である。第１通信パス１３１は、高速で大容量の通信が可能であり、ＣＭ１００間でユーザデータのやり取りを行なうために用いられる。なお、図８を参照しながら後述する比較対象技術において、第１通信パス１３１は、ＣＰＵ１０５間でログ情報のやり取りを行ないログ情報を二重化するためにも用いられる。これに対し、本実施形態において、第１通信パス１３１は、ＣＭ１００間でのユーザデータのやり取りに用いられるが、ＣＭ１００間でのログ情報のやり取りには用いられない。
【００４０】
第２通信パス１３２は、ＣＭ１００ａのＦＰＧＡ１１０とＣＭ１００ｂのＦＰＧＡ１００との間を接続するＦＰＧＡ間通信パス（パス＃２という場合がある）である。第２通信パス１３２は、監視制御用ＦＰＧＡ１１０間でストレージ装置１の監視制御情報のやり取りを行なうために用いられる。なお、図８を参照しながら後述する比較対象技術において、第２通信パス１３２は、ＦＰＧＡ１１０間で監視制御情報のやり取りを行なうためだけに用いられる。これに対し、本実施形態において、第２通信パス１３２は、ＣＭ１００間での監視制御情報のやり取りのほか、ＣＭ１００間でログ情報のやり取りを行ないログ情報を二重化するためにも用いられる。
【００４１】
一方、各ＣＭ１００において、チップセット１０９，ＦＰＧＡ１１０，不揮発性記録媒体１２１，１２２は、ストレージ装置１の監視制御機能を果たす。
【００４２】
チップセット１０９は、ＣＰＵ１０５とＦＰＧＡ１１０との間のデータの受渡しを管理する。
【００４３】
ＦＰＧＡ１１０は、ストレージ装置１の監視制御を行なう処理装置（第２処理部）である。本実施形態のＦＰＧＡ１１０には、制御プログラム１４０，第１テーブル１４１および第２テーブル１４２が組み込まれている（図２参照）。ＦＰＧＡ１１０は、制御プログラム１４０を実行することで、ストレージ装置１の監視制御機能を実現する。その際、ＦＰＧＡ１１０は、後述するごとく、第１テーブル１４１および第２テーブル１４２を参照しながらログ情報の重要度（ランク）を判定する。
【００４４】
第１不揮発性記録媒体（第２メモリ領域）１２１は、メモリ１０６から読み出されたログ情報を書き込まれて記憶保存する。第１不揮発性記録媒体１２１は、大容量のデータを保存可能であるが、書込み寿命制限の有る媒体（例えば書込み制限回数が所定数以下の媒体）であり、例えばＳＳＤやＵＳＢ（Universal Serial Bus）メモリである。なお、図８を参照しながら後述する比較対象技術において、第１不揮発性記録媒体１２１へのログ情報の書込みは、ＣＰＵ１０５（ＦＷ）によってチップセット１０９経由で実行される。これに対し、本実施形態において、第１不揮発性記録媒体１２１へのログ情報の書込みは、後述するようにＦＰＧＡ１１０によって実行される。また、本実施形態において、第１不揮発性記録媒体１２１には、後述するごとく第２不揮発性記録媒体１２２から読み出されたログ情報が、ＦＰＧＡ１１０によって書き込まれてもよい。なお、以下では、第１不揮発性記録媒体１２１をＮＶＭ＃１という場合がある。ＮＶＭはnon-volatile memoryの略記である。
【００４５】
第２不揮発性記録媒体（第２メモリ領域）１２２は、第２通信パス１３２を介してＦＰＧＡ１１０間でやり取りされる監視制御情報を書き込まれて記憶保存する。第２不揮発性記録媒体１２２は、低容量であるが、書込み寿命制限の有る媒体（例えば書込み制限回数が所定数よりも大きい媒体）であり、例えばＭＲＡＭ（Magnetoresistive Random Access Memory）である。なお、図８を参照しながら後述する比較対象技術において、第２不揮発性記録媒体１２２には、ＦＰＧＡ１１０によって監視制御情報のみが書き込まれる。これに対し、本実施形態において、第２不揮発性記録媒体１２２には、ＦＰＧＡ１１０によって、監視制御情報が書き込まれるとともに、メモリ１０６から読み出されたログ情報が書き込まれる。なお、以下では、第２不揮発性記録媒体１２２をＮＶＭ＃２という場合がある。
【００４６】
〔２〕比較対象技術および本実施形態の概要
ここで、図８を参照しながら、本実施形態と比較する比較対象技術、および、本実施形態の概要について説明する。図８は、比較対象技術におけるログの流れを説明する図である。
【００４７】
ストレージ装置１（図１参照）においてログ情報の発生がＣＭ１００ａのＣＰＵ１０５によって検知されると、当該ログ情報は、ＣＭ１００ａのＣＰＵ１０５（ＦＷ）によって、一旦、メモリ１０６上のログ情報記憶領域１６２（図２参照）に保存される（図８の矢印Ａ１参照）。その後、ＣＭ１００ａにおいて、メモリ１０６上のログ情報は、ＣＭ１００ａのＣＰＵ１０５（ＦＷ）によって、メモリ１０６からチップセット１０９経由で最終的にＮＶＭ＃１に書き込まれて保存される（図８の矢印Ａ２参照）。
【００４８】
また、メモリ１０６上のログ情報は、ＣＭ１００ａのＣＰＵ１０５（ＦＷ）によって、第１通信パス１３１経由でＣＭ１００ｂのＣＰＵ１０５（ＦＷ）に送信され、ＣＭ１００ｂのメモリ１０６に書き込まれる（図８の矢印Ａ３参照）。そして、ＣＭ１００ｂにおいて、メモリ１０６上のログ情報は、ＣＭ１００ｂのＣＰＵ１０５（ＦＷ）によって、メモリ１０６からチップセット１０９経由で最終的にＮＶＭ＃１に書き込まれて保存される（図８の矢印Ａ４参照）。このようにして、ストレージ装置１のログ情報は、第１通信パス１３１を用いて、二つのＣＭ１００におけるＮＶＭ＃１に二重化されて保存される。
【００４９】
上述のごとき比較対象技術では、ＮＶＭ＃１へのログ情報の書込みは、ストレージ装置１における不慮の事故に対応すべく、定期的（例えば５分毎）に、あるいは、ストレージ装置１の電源オフ／オンのタイミング等でＣＰＵ１０５（ＦＷ）によって実行される。書き込み対象のログ情報としては、例えば図３に記載された１３種類のログ情報が挙げられる。
【００５０】
このとき、ＮＶＭ＃１へのログ情報の書込みは、ＮＶＭ＃１におけるログ情報記憶領域を、所定サイズのページ毎に分けて管理される。つまり、ログ情報の書込みは、ログ情報の種類毎に割り当てられる所定サイズのページに対して実行される。ログ情報の書込み量が当該ページの容量に達すると、新たなページが割り当てられ、割り当てられた新たなページに対しログ情報の書込みが実行される。
【００５１】
上述のような書込みタイミングの制御や書込み領域の管理を行なうことで、ストレージ装置１の寿命期間内に、ログ情報を保存する第１不揮発性記録媒体１２１に対する書込み回数が、書込み制限回数を超えてしまう、つまり書込み寿命を超えてしまうことが防止される。ただし、図８に示す比較対象技術では、以下のような状況（１）〜（３）が生じる可能性がある。
【００５２】
（１）ＳＳＤ，ＵＳＢメモリ等の第１不揮発性記録媒体１２１には、上述したように書込み寿命がある。また、ストレージ装置１の寿命期間内に発生する全てのログ情報の容量は極めて大きい。このため、第１不揮発性記録媒体１２１に対するログ情報の書込み制御を行なって、第１不揮発性記録媒体１２１上に全てのログ情報を格納できるようにすることが望まれる。
【００５３】
（２）ＣＭ１００を含むストレージ装置１における異常発生判断は、監視制御用ＦＰＧＡ１１０によって行なわれるが、ログ情報の書込み制御は、ＣＰＵ１０５（ＦＷ）によって行なわれる。このため、ＣＰＵハング等のＣＭ異常が発生した場合、ＦＷは動作することができない。したがって、ＣＭ異常の解析等に必要な異常ＣＭ１００のログ情報を、メモリ１０６から不揮発性記録媒体１２１に採取することも、冗長化された他系のＣＭに転送することもできない。
【００５４】
（３）通常、最新のログ情報はメインメモリ１０６上に保存されており、上述したように、定期的に、あるいは、ストレージ装置１の電源オフ／オンのタイミング等で、ＣＰＵ１０５（ＦＷ）によって、第１不揮発性記録媒体１２１へのログ情報の書込みが実行される。このため、ストレージ装置１のオフ時やリブート時には、ログ情報をメインメモリ１０６から第１不揮発性記録媒体１２１へ書き込む処理（ログ退避）が発生する。当該ログ退避に要する時間によって、ストレージ装置１のオフ処理や、ストレージ装置１の復旧処理が長期化する場合がある。
【００５５】
そこで、本実施形態においては、比較対象技術でファームウェア（ＣＰＵ１０５）によって実行されるログ情報の書込み制御が、監視制御用のＦＰＧＡ１１０によって実行されるよう構成される。つまり、比較対象技術で監視制御情報のみを扱っていたＦＰＧＡ１１０において、監視制御情報に基づく監視制御とともに、ログ情報の書込み制御が行なわれる。さらに、本実施形態においては、性能の異なる二種類の不揮発性記録媒体１２１，１２２が、ログ情報の種類（ログ情報の重要度）に応じて使い分けられるよう構成される。
【００５６】
例えば、上記状況（１）に対応すべく、本実施形態のＦＰＧＡ１１０は、ログ情報の種類を判断し、当該種類に応じたログ情報の重要度を判定し、当該重要度に応じてログ情報の書込み手法や書込み先を制御する。
【００５７】
また、上記状況（２），（３）に対応すべく、本実施形態のＦＰＧＡ１１０は、異常発生時には、自ら監視制御している監視制御情報に基づき異常を検知し、メインメモリ１０６上のログ情報を読み出して不揮発性記録媒体１２１または１２２に書き込む。さらに、本実施形態のＦＰＧＡ１１０は、ＣＰＵ１０５からログ情報の発生（メインメモリ１０６へのログ情報の書込み）の通知を受けると、メモリメモリ１０６に書き込まれたログ情報を読み出して不揮発性記録媒体１２１または１２２に書き込む。つまり、本実施形態では、不揮発性記録媒体１２１または１２２へのログ情報の書込みが、比較対象技術のごとく定期的なタイミング等ではなく、メインメモリ１０６へのログ情報の書込み発生に追随してリアルタイムで行なわれる。
【００５８】
ここで、本実施形態の制御装置（ＣＭ）１００を適用される環境、つまりストレージ装置１の構成は、以下の通りである（図１参照）。つまり、ストレージ装置１においては、ＣＭ（コントローラ）１００が多重化され、ストレージ装置１のログ情報が各ＣＭ１００によって保持されることで多重化保存される。
【００５９】
また、各ＣＭ１００は、性能の異なる二種類の不揮発性記録媒体１２１，１２２を有する。第１不揮発性記録媒体１２１は、ログ情報を記憶する不揮発性の第２メモリ領域で、上述した通り、大容量のデータを保存可能であるが、書込み寿命制限の有る媒体、例えばＳＳＤやＵＳＢメモリである。第２不揮発性記録媒体１２２は、他ＣＭ１００のＦＰＧＡ１１０間でやり取りされる監視制御情報を保存するとともに、ログ情報を記憶する不揮発性の第２メモリ領域としても機能する。第２不揮発性記録媒体１２２は、上述した通り、低容量であるが、書込み寿命制限の有る媒体、例えばＭＲＡＭである。
【００６０】
さらに、各ＣＭ１００は、監視制御情報に基づくストレージ装置１の監視制御と不揮発性記録媒体１２１，１２２へのログ情報の書込み制御との両方を実行可能なＬＳＩ（Large Scale Integration）等を有する。本実施形態では、当該ＬＳＩとして、例えばＦＰＧＡ１１０が用いられる。
【００６１】
このような環境において、各ＣＭ１００におけるＦＰＧＡ１１０は、以下のように動作する。
【００６２】
ストレージ装置１の通常動作時において、ＦＰＧＡ１１０は、ＣＰＵ１０５からログ情報の発生（つまりログ情報のメインメモリ１０６への書込み）を通知する割込み情報を受け取ると、メインメモリ１０６からログ情報を読み出す。
【００６３】
ストレージ装置１の異常発生時において、ＦＰＧＡ１１０は、監視制御情報に基づき異常の発生を検知し、メインメモリ１０６からログ情報を読み出す。
【００６４】
通常動作時または異常発生時において、ＦＰＧＡ１１０は、上述のごとくログ情報を読み出すと、読み出したログ情報の重要度（ランク）を装置状態から判定する。本実施形態において、ログ情報の重要度は、例えば図３および図４を参照しながら後述するごとく、４つのランク＃１〜＃４に分けられる。また、ランク＃１の重要度が最も高く、ランク＃２の重要度が２番目に高く、ランク＃３の重要度が３番目に高く、ランク＃４の重要度が最も低い。
【００６５】
メインメモリ１０６から読み出したログ情報の重要度がランク＃１の場合、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃１に書き込むとともに、第２通信パス１３２経由で他系のＣＭ１００のＦＰＧＡ１１０に送信する。他系のＣＭ１００のＦＰＧＡ１１０は、第２通信パス１３２経由でログ情報を受信すると、受信したログ情報をＮＶＭ＃１に書き込み、ログ情報を二重化保存する。
【００６６】
メインメモリ１０６から読み出したログ情報の重要度がランク＃２の場合、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃２に書き込む。ＮＶＭ＃２においてランク＃２のログ情報の量が所定量（書込み閾値）を超えた場合、ＦＰＧＡ１１０は、所定量のランク＃２のログ情報を、ＮＶＭ＃２からＮＶＭ＃１に書き込むとともに、第２通信パス１３２経由で他系のＣＭ１００のＦＰＧＡ１１０に送信する。他系のＣＭ１００のＦＰＧＡ１１０は、第２通信パス１３２経由でログ情報を受信すると、受信したログ情報をＮＶＭ＃１に書き込み、ログ情報を二重化保存する。この後、ＮＶＭ＃２において、前記所定量のランク＃２のログ情報が保存されていた領域には、新たなログ情報が上書きされる。
【００６７】
メインメモリ１０６から読み出したログ情報の重要度がランク＃３の場合、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃２に書き込む。ＮＶＭ＃２においてランク＃３のログ情報の量が所定量（書込み閾値）を超えた場合、ＦＰＧＡ１１０は、所定量のランク＃３のログ情報を、ＮＶＭ＃２からＮＶＭ＃１に書き込む。この後、ＮＶＭ＃２において、前記所定量のランク＃３のログ情報が保存されていた領域には、新たなログ情報が上書きされる。
【００６８】
メインメモリ１０６から読み出したログ情報の重要度がランク＃４の場合、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃２に書き込む。ＮＶＭ＃２においては、ランク＃４のログ情報を保存する領域が所定量確保されており、ランク＃４のログ情報の量が所定量（書込み閾値）を超えた場合、ＦＰＧＡ１１０は、新たなログ情報をランク＃４用の上記領域に上書き保存する。これにより、ランク＃４のログ情報については、所定量の最新のものが、ＮＶＭ＃２におけるランク＃４用の上記領域に保存される。
【００６９】
このように、本実施形態では、ログ情報の重要度のランクに応じて、ログ情報の格納先の変更や、ログ情報の多重化の有無の変更を行なうことで、二つの不揮発性記録媒体１２１，１２２への書込み制御（例えば書込み流量の制御）が行なわれる。これにより、書込み寿命制限の有るＮＶＭ＃１に対する書込み回数を抑制しながら、ログ情報を重要度の高い順にＮＶＭ＃１に確実に二重化保存することができる。
【００７０】
特に、ストレージ装置１の通常動作時には、上記制御により、書き込み寿命の有る第１不揮発性記録媒体１２１へのログ情報の書込み量を減らすことができ、書込み寿命制限を超えることなく大量のログ情報を第１不揮発性記録媒体１２１に確実に保存することができる。また、不揮発性記録媒体１２１へのログ情報の書込みは、比較対象技術と異なりＦＷ処理に依存しないため、定期的なタイミング等ではなく、メインメモリ１０６へのログ情報の書込み発生に追随してリアルタイムで実行することが可能になる。
【００７１】
また、ストレージ装置１の異常発生時には、ＦＰＧＡ１１０が、メインメモリ１０６からログ情報を読み出すため、ＣＰＵ１０５がハングした状態であってもストレージ装置１のログ情報を採取することが可能になる。これにより、ストレージ装置１で異常が発生してもログ情報を確実に採取することができる。
【００７２】
さらに、上述したようにメインメモリ１０６へのログ情報の書込み発生に追随してリアルタイムで不揮発性記録媒体１２１へのログ情報の書込みが行なわれる。このため、ストレージ装置１のオフ時やリブート時に、比較対象技術のごときログ退避動作が不要になり、ストレージ装置１のオフ操作やリブート処理を短時間で行なうことが可能になる。
【００７３】
〔３〕本実施形態の制御装置の機能構成
ついで、図２〜図４を参照しながら、本実施形態の制御装置（ＣＭ）１００の機能構成について説明する。なお、図２は、ＣＭ１００の機能構成の一例を示すブロック図である。図３は、本実施形態におけるログ種類とログ重要度とを対応付けるテーブル（第１テーブル）１４１の具体例を示す図である。図４は、本実施形態におけるログ重要度と書込み手法とを対応付けるテーブル（第２テーブル）１４２の具体例を示す図である。
【００７４】
本実施形態の各ＣＭ１００において、ＣＰＵ（第１処理部）１０５は、制御プログラム１６０を実行することで、図２に示すように、ログ発生割込み通知部１５２（図２参照）として機能する。制御プログラム１６０は、例えばメモリ１０６に保存されている。
【００７５】
また、本実施形態の各ＣＭ１００において、ＦＰＧＡ（第２処理部）１１０は、制御プログラム１４０を実行することで、図２に示すように、ログ発生判断部１１１，異常発生判断部１１２および書込み制御部１１３として機能する。ＦＰＧＡ１１０には、前述したように、制御プログラム１４０，第１テーブル１４１および第２テーブル１４２が組み込まれている。
【００７６】
なお、制御プログラム１６０，１４０；第１テーブル１４１および第２テーブル１４２は、コンピュータ読取可能な記録媒体であって非一時的な記録媒体に記録された形態で提供される。当該記録媒体としては、磁気ディスク，光ディスク，光磁気ディスクなどが挙げられる。また、光ディスクとしては、ＣＤ（Compact Disk），ＤＶＤ（Digital Versatile Disk），ブルーレイディスクなどが挙げられる。ＣＤは、ＣＤ−ＲＯＭ（Read Only Memory），ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などを含む。ＤＶＤは、ＤＶＤ−ＲＡＭ，ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ，ＤＶＤ＋Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋ＲＷ，ＨＤ(High Definition) ＤＶＤなどを含む。
【００７７】
このとき、ＣＰＵ１０５は、上述のごとき記録媒体から制御プログラム１６０を読み取って内部記憶装置（例えばメモリ１０６やフラッシュメモリ１０７）または外付けの記憶装置に格納して用いてもよい。また、ＣＰＵ１０５は、制御プログラム１６０を、ネットワーク（図示略）を介して受信し内部記憶装置または外付けの記憶装置に格納して用いてもよい。また、ＦＰＧＡ１１０は、制御プログラム１４０，第１テーブル１４１および第２テーブル１４２を、予め組み込まれていてもよいし、非一時的な記録媒体などによって提供され当該記録媒体などからインストールされてもよい。
【００７８】
ＣＰＵ１０５は、Ｃ−ＳＴＳ（CPU-status）レジスタ１５１を有するとともに、ログ発生割込み通知部１５２としての機能を有する。
【００７９】
Ｃ−ＳＴＳレジスタ１５１には、ＣＰＵ１０５によって、ログ情報の発生の有無を管理すべく、例えば下記のごとき情報が設定される。Ｃ−ＳＴＳレジスタ１５１には、ＣＰＵ１０５が新たなログ情報をメインメモリ（第１メモリ領域）１０６に書き込むと、つまり新たなログ情報が発生すると、ログ有り情報（ログ有）が設定される。一方、メインメモリ１０６上のログ情報が不揮発性記録媒体（第２メモリ領域）１２１または１２２に書き込まれると、Ｃ−ＳＴＳレジスタ１５１には、ログ無し情報（ログ無）が設定される。
【００８０】
ログ発生割込み通知部１５２は、新たなログ情報がメインメモリ（第１メモリ領域）１０６に書き込まれると、つまり新たなログ情報が発生すると、ＦＰＧＡ１１０に対し割込み情報（割込みメッセージ）を通知する。
【００８１】
ＦＰＧＡ１１０は、Ｆ−ＳＴＳ（FPGA-status）レジスタ１１４を有するとともに、ログ発生判断部１１１，異常発生判断部１１２および書込み制御部１１３としての機能を有する。以下、ログ発生判断部１１１，異常発生判断部１１２，書込み制御部１１３およびＦ−ＳＴＳレジスタ１１４について説明する。
【００８２】
Ｆ−ＳＴＳレジスタ１１４には、ＦＰＧＡ１１０によって、ログ情報の書込み状態を管理すべく、例えば下記のごとき情報が設定される。Ｆ−ＳＴＳレジスタ１１４には、ＦＰＧＡ１１０がメインメモリ１０６からログ情報を読み出すと、ログ情報の書込み中である旨を示す実行中情報（Run）が設定される。一方、ログ情報の書込みに係る動作を完了すると、Ｆ−ＳＴＳレジスタ１１４には、ログ情報の書込みを行なっていないアイドル状態である旨を示すアイドル情報（Idle）が設定される。
【００８３】
ログ発生判断部１１１は、メインメモリ１０６に制御対象のストレージ装置１のログ情報が記憶されたか否か、つまり新たなログ情報が発生したか否かを判断する。本実施形態において、ログ発生判断部１１１は、ＣＰＵ１０５のログ発生割込み通知部１５２から割り込みメッセージを受けると、メインメモリ１０６に新たなログ情報が記憶された（発生した）と判断する。
【００８４】
異常発生判断部１１２は、ストレージ装置１の監視制御情報に基づきストレージ装置１の動作状態に異常が発生したか否かを判断する。
【００８５】
書込み制御部１１３は、下記書込みタイミングで、ログ情報をメインメモリ１０６からＮＶＭ＃１またはＮＶＭ＃２に書き込む制御を行なう。書込みタイミングは、メインメモリ１０６に新たなログ情報が記憶されたとログ発生判断部１１１が判断したタイミング、もしくは、ストレージ装置１の動作状態に異常が発生したと異常発生判断部１１２が判断したタイミングである。
【００８６】
書込み制御部１１３は、重要度判定部１１３ａ，選択部１１３ｂおよび書込み量判定部１１３ｃとしての機能を有する。
【００８７】
重要度判定部（ランク判定部）１１３ａは、メインメモリ１０６から読み出したログ情報の重要度（本実施形態では当該ログ情報がランク＃１〜＃４のいずれに属するか）を判定する。本実施形態において、ランク判定部１１３ａは、読み出したログ情報と図３に示す第１テーブル１４１とを参照し、読み出したログ情報の種類（ログ種類）がランク＃１〜＃４のいずれに属するかを判断することで、読み出したログ情報の種類を判定する。
【００８８】
選択部１１３ｂは、ランク判定部１１３ａが判定したログ情報の重要度に応じて、ログ情報のＮＶＭ＃１またはＮＶＭ＃２への書込み手法を選択し変更する。本実施形態において、選択部１１３ｂは、ランク判定部１１３ａが判定した前記重要度をキーにして、図４に示す第２テーブル１４２を検索することで、前記重要度に応じた書込み手法を選択する。これにより、書込み制御部１１３は、選択部１１３ｂが選択した書込み手法でログ情報の書込み制御を行なう。
【００８９】
書込み量判定部１１３ｃは、書込み制御部１１３が下記のようなログ情報の書込み制御を行なう際に用いられるもので、ＮＶＭ＃２（第２不揮発性記録媒体１２２）に書き込まれたログ情報の格納量が所定サイズ（所定量，書込み閾値）を超えたか否かを判定する。
【００９０】
本実施形態において、性能の異なる複数種類（本実施形態では２種類）の不揮発性記録媒体の中から、ログ情報の重要度に応じた不揮発性記録媒体が、第２メモリ領域として選択され、選択された不揮発性記録媒体にログ情報が書き込まれる。性能の異なる複数種類の不揮発性記録媒体は、書込み制限回数が所定数以下のＮＶＭ＃１（書込み寿命制限の有る記録媒体１２１）と書込み制限回数が前記所定数よりも大きいＮＶＭ＃２（書込み寿命制限の無い記録媒体１２２）とを含む。
【００９１】
選択部１１３ｂは、ログ情報の重要度に応じて、ＮＶＭ＃１とＮＶＭ＃２とのいずれか一方を、第２メモリ領域として選択する。書込み制御部１１３は、選択部１１３ｂが選択したＮＶＭ＃１またはＮＶＭ＃２にログ情報を書き込む。ＮＶＭ＃２にログ情報を書き込んだ場合、ＮＶＭ＃２に書き込まれたログ情報の格納量が所定サイズを超えたか否かを、書込み量判定部１１３ｃが判定する。ログ情報の格納量が所定サイズを超えたと判定した場合、書込み制御部１１３は、ＮＶＭ＃２に書き込まれたログ情報を、ＮＶＭ＃１に移動させる制御を行なう。
【００９２】
また、本実施形態において、ＦＰＧＡ１１０は、自ＣＭ１００ａとともに冗長構成を成す他ＣＭ１００ｂにおけるＮＶＭ＃１に、第２通信パス１３２と他ＣＭ１００ｂにおけるＦＰＧＡ１１０とを介して接続される。このとき、選択部１１３ｂは、ログ情報の重要度に応じて、他ＣＭ１００ｂにおけるＮＶＭ＃１を第２メモリ領域として選択してもよい。そして、自ＣＭ１００ａの書込み制御部１１３は、第２通信パス１３２を介して、選択した他ＣＭ１００ｂにおけるＮＶＭ＃１にログ情報を書き込む制御を行なう。なお、本実施形態では、他ＣＭ１００ｂにおけるＮＶＭ＃１を第２メモリ領域として選択する場合について説明しているが、他ＣＭ１００ｂにおけるＮＶＭ＃２を第２メモリ領域として選択してもよい。
【００９３】
ここで、図３および図４を参照しながら、第１テーブル１４１および第２テーブル１４２の具体例について説明するとともに、図４に示す第２テーブル１４２に基づいて選択され実行される、ＮＶＭ＃１，ＮＶＭ＃２へのログ情報の書込み手法について説明する。
【００９４】
図３に示すように、第１テーブル１４１は、ログ情報の種類（ログ種類）とログ情報のランク（ログ重要度）とを対応付けるテーブルである。第１テーブル１４１において、ログ情報の重要度は、例えば４つのランク＃１〜＃４に分けられる。そして、例えば、ログ種類Degrade/Alarm, Panic, Degrade factor, Errorが、最も重要度の高いランク＃１に対応付けられる。ログ種類Recovered Error, Rebuild Copy back, Copy Session, Environmentが、２番目に重要度の高いランク＃２に対応付けられる。ログ種類Powerが、３番目に重要度の高いランク＃３に対応付けられる。ログ種類Operation, Event, FRU Information, Otherが、最も重要度の低いランク＃４に対応付けられる。
【００９５】
図４に示すように、第２テーブル１４２は、ログ情報のランク（ログ重要度）とＦＰＧＡ１１０によるログ情報の書込み手法とを対応付けるテーブルである。
【００９６】
ランク＃１に属するログ種類は、例えばＣＭ１００の一方の電源が落ちた状態であるデグレード（デグレード要因）に起因して発生するログ情報の種類に相当し、最も重要度の高いログ種類として認識される。そのため、読み出したログ情報の重要度がランク＃１の場合、図４に示すように、ＦＰＧＡ１１０（書込み制御部１１３）は、自ＣＭ１００において、読み出したログ情報を、最優先でＮＶＭ＃１に書き込む。また、ＦＰＧＡ１１０（書込み制御部１１３）は、読み出したログ情報を、第２通信パス１３２経由で他ＣＭ１００のＦＰＧＡ１１０に送信する。他ＣＭ１００のＦＰＧＡ１１０（書込み制御部１１３）は、第２通信パス１３２経由でログ情報を受信すると、受信したログ情報を最優先でＮＶＭ＃１に書き込み、ログ情報を二重化保存する。このとき、ＦＰＧＡ１１０（書込み制御部１１３）は、読み出したログ情報のＮＶＭ＃２への書込みを行なわない。
【００９７】
ランク＃２に属するログ種類は、例えばデグレード発生直前の状態（ソフトエラー発生状態）であって修復中の状態であるＲＡＳ（Remote Access Service）処理に起因して発生するログ情報の種類に相当し、デグレード状態に次いで重要度の高いログ種類として認識される。そのため、読み出したログ情報の重要度がランク＃２の場合、図４に示すように、ＦＰＧＡ１１０（書込み制御部１１３）は、まず、読み出したログ情報を、ＮＶＭ＃２に書き込む。そして、ＮＶＭ＃２においてランク＃２のログ情報の格納量が所定サイズ（所定量，書込み閾値）を超えた場合、ＦＰＧＡ１１０（書込み制御部１１３）は、所定サイズのランク＃２のログ情報を、ＮＶＭ＃２からＮＶＭ＃１に移動させるとともに、第２通信パス１３２経由で他ＣＭ１００のＦＰＧＡ１１０に送信する。他ＣＭ１００のＦＰＧＡ１１０（書込み制御部１１３）は、第２通信パス１３２経由でログ情報を受信すると、受信したログ情報をＮＶＭ＃２に書き込み、ログ情報を二重化保存する。この後、ＮＶＭ＃２において、前記所定サイズのランク＃２のログ情報が保存されていた領域には、新たなログ情報が上書きされる。
【００９８】
ランク＃３に属するログ種類は、例えばＯＦＦ／ＯＮ（初期診断中）に起因して発生するログ情報の種類に相当し、ＲＡＳ処理状態に次いで重要度の高いログ種類として認識される。そのため、読み出したログ情報の重要度がランク＃３の場合、図４に示すように、ＦＰＧＡ１１０（書込み制御部１１３）は、まず、読み出したログ情報を、ＮＶＭ＃２に書き込む。そして、ＮＶＭ＃２においてランク＃３のログ情報の格納量が所定サイズ（所定量，書込み閾値）を超えた場合、ＦＰＧＡ１１０（書込み制御部１１３）は、所定サイズのランク＃３のログ情報を、ＮＶＭ＃２からＮＶＭ＃１に移動させる。このとき、ＦＰＧＡ１１０（書込み制御部１１３）は、他ＣＭ１００のＮＶＭ＃１への書込みを行なわない。この後、ＮＶＭ＃２において、前記所定サイズのランク＃３のログ情報が保存されていた領域には、新たなログ情報が上書きされる。
【００９９】
ランク＃４に属するログ種類は、例えば装置環境情報（通常動作中）に係るログ情報の種類に相当し、最も重要度の低いログ種類として認識される。そのため、読み出したログ情報の重要度がランク＃４の場合、図４に示すように、ＦＰＧＡ１１０（書込み制御部１１３）は、読み出したログ情報を、ＮＶＭ＃２に書き込む。このとき、ＦＰＧＡ１１０（書込み制御部１１３）は、ランク＃４のログ情報について、ＮＶＭ＃２からＮＶＭ＃１への移動も、他ＣＭ１００のＮＶＭ＃１への書込みも行なわない。なお、前述したように、ＮＶＭ＃２においては、ランク＃４のログ情報を保存する領域が所定量確保されており、ランク＃４のログ情報の格納量が所定サイズを超えた場合、ＦＰＧＡ１１０（書込み制御部１１３）は、新たなログ情報をランク＃４用の上記領域に上書き保存する。これにより、ランク＃４のログ情報については、所定量の最新のものが、ＮＶＭ＃２におけるランク＃４用の上記領域に保存される。
【０１００】
なお、ＮＶＭ＃２においては、ランク＃２〜＃４のログ情報は、ランク毎に分けて保存される。その際、ランク＃２およびランク＃３のログ情報を保存する領域の容量と、ランク＃４のログ情報を保存する領域の容量との比は、例えば５対１とする。これは、ランク＃４のログ情報については最新のもののみが残っていれば問題ないため、ランク＃４のログ情報を保存する領域の容量は、ランク＃２およびランク＃３のログ情報を保存する領域の容量よりも少なくてよいからである。
【０１０１】
〔４〕本実施形態の制御装置の動作
次に、上述のごとく構成された本実施形態のストレージ装置１におけるＣＭ１００の動作について、図５〜図７に示すフローチャートに従って説明する。
【０１０２】
比較対象技術において、ログ情報の書込み制御はＣＰＵ１０５（ＦＷ）のみによって行なわれるため、ＦＷが動作すれば問題無い。しかし、本実施形態では、監視制御用のＦＰＧＡ１１０によってログ情報の書込み制御が行なわれる。このため、本実施形態では、ＣＰＵ１０５の状態（ログ情報発生の有無情報）を設定されるＣ−ＳＴＳレジスタ１５１、および、ＦＰＧＡ１１０の状態（ログ情報の書込み中であるか否かに係る情報）を設定されるＦ−ＳＴＳレジスタ１１４が用いられる。また、メインメモリ１０６上には、比較対象技術と同様、ログ情報用のメモリ領域（第１メモリ領域）が確保される。
【０１０３】
ストレージ装置１の通常動作時にログ情報が発生すると、ＣＰＵ１０５（ＦＷ）は、Ｃ−ＳＴＳレジスタ１５１に“ログ有”が既に設定されているかを判定する（図５のステップＳ１１）。“ログ有”が既に設定されている場合（ステップＳ１１のＹＥＳルート）、ＣＰＵ１０５は、ＦＰＧＡ１１０が前回発生したログ情報についての書込み処理中であると判断し、Ｃ−ＳＴＳレジスタ１５１の状態が“ログ無”になるまで待機する（図５のステップＳ１５からステップＳ１１）。
【０１０４】
Ｃ−ＳＴＳレジスタ１５１に“ログ有”が設定されていない場合（ステップＳ１１のＮＯルート）、つまりＦＰＧＡ１１０がログ情報についての書込み処理中でない場合、ＣＰＵ１０５（ＦＷ）は、以下の動作を行なう（図５のステップＳ１２，Ｓ１３）。ステップＳ１２において、ＣＰＵ１０５（ＦＷ）は、新たなログ情報をメインメモリ（第１メモリ領域）１０６に格納し、Ｃ−ＳＴＳレジスタ１５１に“ログ有”を設定する。また、ステップＳ１３において、ＣＰＵ１０５（ＦＷ）のログ発生割込み通知部１５２は、ＦＰＧＡ１１０に対し割込みメッセージを通知する。
【０１０５】
ＦＰＧＡ１１０は、ＣＰＵ１０５から割込みメッセージを通知されると、ログ発生判断部１１１の機能によって新たなログ情報が発生したと判断する。そして、ＦＰＧＡ１１０は、メインメモリ１０６（第１メモリ領域）におけるログ情報を、先頭アドレスから順に読み出し、Ｆ−ＳＴＳレジスタ１１４に“Run”を設定する（図５のステップＳ１４）。この後、ＦＰＧＡ１１０は、図７に示すフローチャートに従って実行される書込み制御処理へ移行する。
【０１０６】
一方、ストレージ装置１の異常発生時、ＦＰＧＡ１１０の異常発生判断部１１２は、ストレージ装置１の監視制御情報に基づきストレージ装置１の動作状態に異常が発生したことを検知する（図６のステップＳ２１）。
【０１０７】
異常発生が検知されると、ＦＰＧＡ１１０は、当該異常発生の要因に係るログ情報を含むと考えられるメインメモリ１０６（第１メモリ領域）におけるログ情報を、先頭アドレスから順に読み出す。そして、ＦＰＧＡ１１０は、Ｆ−ＳＴＳレジスタ１１４に“Run”を設定する（図６のステップＳ２２）。この後、ＦＰＧＡ１１０は、図７に示すフローチャート（ステップＳ３１〜Ｓ４１）に従って実行される書込み制御処理へ移行する。
【０１０８】
図７に示す書込み制御処理において、まず、ＦＰＧＡ１１０のランク判定部１１３ａは、メモリ１０６から読み出されたログ情報の重要度が、ランク＃１であるか否かを判断する（ステップＳ３１）。重要度がランク＃１の場合（ステップＳ３１のＹＥＳルート）、ＦＰＧＡ１１０の書込み制御部１１３は、メモリ１０６から読み出されたログ情報を、ＮＶＭ＃１に書き込む（ステップＳ３２）。その後、書込み制御部１１３は、メモリ１０６から読み出されたログ情報を、第２通信パス１３２経由で他ＣＭ１００のＦＰＧＡ１１０に送信し、他ＣＭ１００のＮＶＭ＃１に書き込み、ログ情報を二重化保存する（ステップＳ３３）。
【０１０９】
そして、ＦＰＧＡ１１０は、ログ情報の書込みに係る動作を完了すると、Ｆ−ＳＴＳレジスタ１１４に“Idle”を設定し（ステップＳ３４）、Ｃ−ＳＴＳレジスタ１５１に“ログ無”を設定し（ステップＳ３５）、処理を終了する。なお、Ｆ−ＳＴＳレジスタ１１４に“Run”が設定されている状態（ログ情報の書込み中の状態）で新たなログ情報が発生した場合、Ｆ−ＳＴＳ１１４に“Idle”が設定されるまで待機してから、ログ情報のメモリ１０６への格納が行なわれる。
【０１１０】
メモリ１０６から読み出されたログ情報の重要度がランク＃１でない場合（ステップＳ３１のＮＯルート）、つまり重要度がランク＃２〜＃４のいずれかである場合、書込み制御部１１３は、メモリ１０６から読み出されたログ情報をＮＶＭ＃２に書き込む（ステップＳ３６）。
【０１１１】
ログ情報がＮＶＭ＃２に書き込まれると、ＦＰＧＡ１１０の書込み量判定部１１３ｃは、ＮＶＭ＃２に書き込まれたログ情報の格納量が所定サイズ（書込み閾値）を超えたか否かを判定する（ステップＳ３７）。ログ情報の格納量が所定サイズを超えていない場合（ステップＳ３７のＮＯルート；ランク＃２〜＃４のいずれかに相当する場合）、ＦＰＧＡ１１０はステップＳ３４の処理に移行する。
【０１１２】
ログ情報の格納量が所定サイズを超えている場合（ステップＳ３７のＹＥＳルート）、ランク判定部１１３ａは、メモリ１０６から読み出されたログ情報の重要度が、ランク＃２または＃３であるか否かを判断する（ステップＳ３８）。重要度がランク＃２でも＃３でもない場合つまりランク＃４の場合（ステップＳ３８のＮＯルート）、ＦＰＧＡ１１０は、所定サイズの最新のログ情報だけをメモリ２０６上に残し、ステップＳ３４の処理に移行する。
【０１１３】
重要度がランク＃２または＃３である場合（ステップＳ３８のＹＥＳルート）、書込み制御部１１３は、所定サイズのランク＃２または＃３のログ情報を、ＮＶＭ＃２からＮＶＭ＃１に書き込む（ステップＳ３９）。
【０１１４】
ログ情報をＮＶＭ＃２からＮＶＭ＃１に移動させた後、ランク判定部１１３ａは、メモリ１０６から読み出されたログ情報の重要度が、ランク＃２であるか否かを判断する（ステップＳ４０）。重要度がランク＃２でない場合つまりランク＃３の場合（ステップＳ４０のＮＯルート）、ＦＰＧＡ１１０はステップＳ３４の処理に移行する。
【０１１５】
重要度がランク＃２である場合（ステップＳ４０のＹＥＳルート）、書込み制御部１１３は、メモリ１０６から読み出されたログ情報を、第２通信パス１３２経由で他ＣＭ１００のＦＰＧＡ１１０に送信し、他ＣＭ１００のＮＶＭ＃１に書き込み、ログ情報を二重化保存する（ステップＳ４１）。この後、ＦＰＧＡ１１０はステップＳ３４の処理に移行する。
【０１１６】
上述のごとく図７に示すフローチャートに従った書込み制御処理を行なうことで、ランク＃１〜＃４のログ情報は、それぞれ図９〜図１２に示すように、書込み制御されることになる。ただし、図９〜図１２では、ストレージ装置１の通常動作時にログ情報が発生した場合の処理手順が示されている。
【０１１７】
ここで、図９を参照しながら、本実施形態におけるランク＃１のログの流れについて説明する。
【０１１８】
ＣＭ１００ａのＣＰＵ１０５（ＦＷ）は、新たなログ情報が発生すると、当該ログ情報を、一旦、メインメモリ１０６上のログ情報記憶領域１６２に保存する（図９の矢印Ａ１参照）。これに伴い、ＣＰＵ１０５（ＦＷ）は、ＦＰＧＡ１１０に対し割込みメッセージを通知する（図９の矢印Ｂ１参照）。
【０１１９】
ＦＰＧＡ１１０は、ＣＰＵ１０５（ＦＷ）から割込みメッセージを通知されると、メインメモリ１０６におけるログ情報を読み出す（図９の矢印Ｂ２参照）。そして、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃１に書き込むとともに（図９の矢印Ｂ３参照）、パス＃２経由で他ＣＭ１００のＮＶＭ＃１に書き込み、ログ情報を二重化保存する（図９の矢印Ｂ４参照）。
【０１２０】
ついで、図１０を参照しながら、本実施形態におけるランク＃２のログの流れについて説明する。
【０１２１】
ＣＭ１００ａのＣＰＵ１０５（ＦＷ）は、新たなログ情報が発生すると、当該ログ情報を、一旦、メインメモリ１０６上のログ情報記憶領域１６２に保存する（図１０の矢印Ａ１参照）。これに伴い、ＣＰＵ１０５（ＦＷ）は、ＦＰＧＡ１１０に対し割込みメッセージを通知する（図１０の矢印Ｂ１参照）。
【０１２２】
ＦＰＧＡ１１０は、ＣＰＵ１０５（ＦＷ）から割込みメッセージを通知されると、メインメモリ１０６におけるログ情報を読み出す（図１０の矢印Ｂ２参照）。そして、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃２に書き込む（図１０の矢印Ｃ１参照）。このとき、ＮＶＭ＃２においてランク＃２のログ情報の格納量が書込み閾値を超えた場合、ＦＰＧＡ１１０は、所定サイズのランク＃２のログ情報を、ＮＶＭ＃２からＮＶＭ＃１に書き込む（図１０の矢印Ｃ２参照）。この後、ＦＰＧＡ１１０は、所定サイズのランク＃２のログ情報を、パス＃２経由で他ＣＭ１００のＮＶＭ＃１に書き込み、ログ情報を二重化保存する（図１０の矢印Ｃ３参照）。
【０１２３】
ついで、図１１を参照しながら、本実施形態におけるランク＃３のログの流れについて説明する。
【０１２４】
ＣＭ１００ａのＣＰＵ１０５（ＦＷ）は、新たなログ情報が発生すると、当該ログ情報を、一旦、メインメモリ１０６上のログ情報記憶領域１６２に保存する（図１１の矢印Ａ１参照）。これに伴い、ＣＰＵ１０５（ＦＷ）は、ＦＰＧＡ１１０に対し割込みメッセージを通知する（図１１の矢印Ｂ１参照）。
【０１２５】
ＦＰＧＡ１１０は、ＣＰＵ１０５（ＦＷ）から割込みメッセージを通知されると、メインメモリ１０６におけるログ情報を読み出す（図１１の矢印Ｂ２参照）。そして、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃２に書き込む（図１１の矢印Ｃ１参照）。このとき、ＮＶＭ＃２においてランク＃２のログ情報の格納量が書込み閾値を超えた場合、ＦＰＧＡ１１０は、所定サイズのランク＃２のログ情報を、ＮＶＭ＃２からＮＶＭ＃１に書き込む（図１１の矢印Ｃ２参照）。
【０１２６】
ついで、図１２を参照しながら、本実施形態におけるランク＃４のログの流れについて説明する。
【０１２７】
ＣＭ１００ａのＣＰＵ１０５（ＦＷ）は、新たなログ情報が発生すると、当該ログ情報を、一旦、メインメモリ１０６上のログ情報記憶領域１６２に保存する（図１２の矢印Ａ１参照）。これに伴い、ＣＰＵ１０５（ＦＷ）は、ＦＰＧＡ１１０に対し割込みメッセージを通知する（図１２の矢印Ｂ１参照）。
【０１２８】
ＦＰＧＡ１１０は、ＣＰＵ１０５（ＦＷ）から割込みメッセージを通知されると、メインメモリ１０６におけるログ情報を読み出す（図１２の矢印Ｂ２参照）。そして、ＦＰＧＡ１１０は、読み出したログ情報を、ＮＶＭ＃２に書き込む（図１２の矢印Ｃ１参照）。このとき、前述したように、ＮＶＭ＃２においては、ランク＃４のログ情報を保存する領域が所定量確保されており、ランク＃４のログ情報の格納量が所定サイズを超えた場合、ＦＰＧＡ１１０は、新たなログ情報をランク＃４用の上記領域に上書き保存する。これにより、ランク＃４のログ情報については、所定量の最新のものが、ＮＶＭ＃２におけるランク＃４用の上記領域に保存される。
【０１２９】
上述したように、本実施形態の制御装置（ＣＭ）１００によれば、監視制御用のＦＰＧＡ１１０が、ＣＰＵ１０５によるファームウェア処理に依存することなく、ログ情報の書込み制御を行なう。このため、定期的なタイミング等ではなく、メインメモリ１０６へのログ情報の書込み発生に追随してリアルタイムでログ情報をＮＶＭ＃１またはＮＶＭ＃２に書き込むことが可能になる。したがって、ストレージ装置１の異常発生時には、ＦＰＧＡ１１０が、メインメモリ１０６からログ情報を読み出し、第２通信パス１３２経由でログ情報を他ＣＭ１００に転送できる。このため、ＣＰＵ１０５がハングした状態であってもストレージ装置１のログ情報を採取したり転送したりすることが可能になる。これにより、ストレージ装置１で異常が発生してもログ情報を確実に採取して保存することができる。
【０１３０】
また、本実施形態では、ログ情報の重要度のランクに応じて、ログ情報の格納先の変更や、ログ情報の多重化の有無の変更を行なうことで、二つの不揮発性記録媒体１２１，１２２（ＮＶＭ＃１，ＮＶＭ＃２）への書込み制御（例えば書込み流量の制御）が行なわれる。これにより、書込み寿命制限の有るＮＶＭ＃１に対する書込み回数を抑制しながら、ログ情報を重要度の高い順にＮＶＭ＃１に確実に二重化保存することができる。
【０１３１】
特に、ストレージ装置１の通常動作時には、上記制御により、書き込み寿命の有るＮＶＭ＃１へのログ情報の書込み量を減らすことができ、書込み寿命制限を超えることなく大量のログ情報をＮＶＭ＃１に確実に保存することができる。
【０１３２】
また、上述したように、ＦＰＧＡ１１０によって、メインメモリ１０６へのログ情報の書込み発生に追随してリアルタイムでＮＶＭ＃１またはＮＶＭ＃２へのログ情報の書込みが行なわれる。このため、ストレージ装置１のオフ時やリブート時には、最新のログ情報がＮＶＭ＃１またはＮＶＭ＃２に存在する。したがって、比較対象技術のごときログ退避動作が不要になり、メインメモリ１０６からのログ情報の掃出し時間を短縮もしくは０にすることができ、ストレージ装置１のオフ操作やリブート処理を短時間で行なうことが可能になる。
【０１３３】
さらに、ＦＰＧＡ１１０がログ情報の書込み制御を含むログ管理を行なうことで、ＣＰＵ１０５（ＦＷ）においてログ管理に要する負荷を軽減することができる。また、ログ情報は、リアルタイムでメインメモリ１０６からＮＶＭ＃１またはＮＶＭ＃２に書き込まれる。このため、メインメモリ１０６に大量のログ情報を保持している必要がなくなり、メインメモリ１０６を他のユーザデータの処理等のために有効活用することが可能になり、装置性能が大きく向上する。
【０１３４】
また、本実施形態では、ＦＰＧＡ１１０によってＮＶＭ＃１への書込み頻度や書込みサイズが制御される。このため、ＮＶＭ＃１に対しては、最も重要度の低いランク＃４のログ情報の書込みは省略され、ランク＃２，＃３のログ情報については、ＮＶＭ＃２からＮＶＭ＃１への所定サイズのシーケンシャルライト処理のみが行なわれる。したがって、ＮＶＭ＃１の長寿命化を実現することができる。ただし、最も重要度の高いランク＃１のログ情報については、ＮＶＭ＃１に対して直ちに書き込まれるので、最も重要度の高いログ情報をＮＶＭ＃１に確実に保存することができる。
【０１３５】
〔５〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
【０１３６】
上述した実施形態では、２つの制御装置（ＣＭ）を備える場合について説明したが、本発明は、これに限定されるものでない。本発明は、例えば３以上の制御装置（ＣＭ）を備える場合についても、上述した実施形態と同様に適用され、上述した実施形態と同様の作用効果を得ることができる。
【０１３７】
また、上述した実施形態では、制御対象／監視対象の情報処理装置がストレージ装置である場合について説明したが、本発明は、これに限定されるものない。本発明は、例えばサーバ装置等の情報処理装置にも、上述した実施形態と同様に適用され、上述した実施形態と同様の作用効果を得ることができる。
【０１３８】
さらに、上述した実施形態では、第１処理部がＣＰＵであり第２処理部ＦＰＧＡである場合について説明したが、本発明は、これに限定されるものでない。第１処理部は、ＣＰＵに代え、ＦＰＧＡ，ＭＰＵ（Micro Processing Unit），ＤＳＰ（Digital Signal Processor），ＡＳＩＣ（Application Specific Integrated Circuit），ＰＬＤ（Programmable Logic Device）のいずれか一つであってもよいし、ＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤ，ＦＰＧＡのうちの２種類以上の要素の組み合わせであってもよい。同様に、第２処理部は、ＦＰＧＡに代え、ＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤのいずれか一つであってもよいし、ＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤ，ＦＰＧＡのうちの２種類以上の要素の組み合わせであってもよい。
【０１３９】
〔６〕付記
以上の各実施形態を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
情報処理装置の制御を行なう第１処理部と、
前記第１処理部によって前記情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域と、
前記情報処理装置の動作状態の監視制御を行なう第２処理部と、
前記ログ情報を記憶する不揮発性の第２メモリ領域と、を備え、
前記第２処理部は、
前記第１メモリ領域に前記ログ情報が記憶されたか否かを判断し、
前記第１メモリ領域に前記ログ情報が記憶されたと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、制御装置。
【０１４０】
（付記２）
前記第１処理部は、前記ログ情報を前記第１メモリ領域に書き込むと前記第２処理部に対し割込み情報を通知し、
前記第２処理部は、前記第１処理部から前記割込み情報を受けると、前記第１メモリ領域に前記ログ情報が記憶されたと判断する、付記１に記載の制御装置。
【０１４１】
（付記３）
前記第２処理部は、
前記監視制御に係る情報に基づき前記情報処理装置の動作状態に異常が発生したか否かを判断し、
前記情報処理装置の動作状態に異常が発生したと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、付記１または付記２に記載の制御装置。
【０１４２】
（付記４）
前記第２処理部は、
前記ログ情報の重要度を判定し、
判定した前記ログ情報の重要度に応じた前記ログ情報の書込み制御を行なう、付記１〜付記３のいずれか一項に記載の制御装置。
【０１４３】
（付記５）
前記第２処理部は、
性能の異なる複数種類の不揮発性記録媒体の中から、前記ログ情報の重要度に応じた不揮発性記録媒体を、前記第２メモリ領域として選択し、
選択した不揮発性記録媒体に前記ログ情報を書き込む制御を行なう、付記４に記載の制御装置。
【０１４４】
（付記６）
前記性能の異なる複数種類の不揮発性記録媒体は、書込み制限回数が所定数以下の第１不揮発性記録媒体と書込み制限回数が前記所定数よりも大きい第２不揮発性記録媒体とを含み、
前記第２処理部は、
前記ログ情報の重要度に応じて、前記第１不揮発性記録媒体と前記第２不揮発性記録媒体とのいずれか一方を、前記第２メモリ領域として選択し、
選択した第１または第２不揮発性記録媒体に前記ログ情報を書き込み、
前記第２不揮発性記録媒体に書き込まれた前記ログ情報の量が所定量を超えた場合、前記第２不揮発性記録媒体に書き込まれた前記ログ情報を、前記第１不揮発性記録媒体に移動させる制御を行なう、付記５に記載の制御装置。
【０１４５】
（付記７）
前記第２処理部は、
前記制御装置とともに冗長構成を成す他の制御装置における不揮発性記録媒体に、通信パスを介して接続され、
前記ログ情報の重要度に応じて、前記他の制御装置における不揮発性記録媒体を、前記第２メモリ領域として選択し、
前記通信パスを介して、選択した前記他の制御装置における不揮発性記録媒体に前記ログ情報を書き込む制御を行なう、付記４〜付記６のいずれか一項に記載の制御装置。
【０１４６】
（付記８）
情報処理装置の制御を行なう第１処理部と、前記第１処理部によって前記情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域と、前記情報処理装置の動作状態の監視制御を行なう第２処理部と、前記ログ情報を記憶する不揮発性の第２メモリ領域と、を備えた制御装置において実行されるプログラムであって、
前記第１メモリ領域に前記ログ情報が記憶されたか否かを判断し、
前記第１メモリ領域に前記ログ情報が記憶されたと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、
処理を、前記第２処理部に実行させる、制御プログラム。
【０１４７】
（付記９）
前記ログ情報を前記第１メモリ領域に書き込むと前記第２処理部に対し割込み情報を通知する処理を、前記第１処理部に実行させるとともに、
前記第１処理部から前記割込み情報を受けると、前記第１メモリ領域に前記ログ情報が記憶されたと判断する処理を、前記第２処理部に実行させる、付記８に記載の制御プログラム。
【０１４８】
（付記１０）
前記監視制御に係る情報に基づき前記情報処理装置の動作状態に異常が発生したか否かを判断し、
前記情報処理装置の動作状態に異常が発生したと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、
処理を、前記第２処理部に実行させる、付記８または付記９に記載の制御プログラム。
【０１４９】
（付記１１）
前記ログ情報の重要度を判定し、
判定した前記ログ情報の重要度に応じた前記ログ情報の書込み制御を行なう、
処理を、前記第２処理部に実行させる、付記８〜付記１０のいずれか一項に記載の制御プログラム。
【０１５０】
（付記１２）
性能の異なる複数種類の不揮発性記録媒体の中から、前記ログ情報の重要度に応じた不揮発性記録媒体を、前記第２メモリ領域として選択し、
選択した不揮発性記録媒体に前記ログ情報を書き込む、
処理を、前記第２処理部に実行させる、付記１１に記載の制御プログラム。
【０１５１】
（付記１３）
前記性能の異なる複数種類の不揮発性記録媒体は、書込み制限回数が所定数以下の第１不揮発性記録媒体と書込み制限回数が前記所定数よりも大きい第２不揮発性記録媒体とを含み、
前記ログ情報の重要度に応じて、前記第１不揮発性記録媒体と前記第２不揮発性記録媒体とのいずれか一方を、前記第２メモリ領域として選択し、
選択した第１または第２不揮発性記録媒体に前記ログ情報を書き込み、
前記第２不揮発性記録媒体に書き込まれた前記ログ情報の量が所定量を超えた場合、前記第２不揮発性記録媒体に書き込まれた前記ログ情報を、前記第１不揮発性記録媒体に移動させる、
処理を、前記第２処理部に実行させる、付記１２に記載の制御プログラム。
【０１５２】
（付記１４）
前記ログ情報の重要度に応じて、前記制御装置とともに冗長構成を成す他の制御装置における不揮発性記録媒体を、前記第２メモリ領域として選択し、
通信パスを介して、選択した前記他の制御装置における不揮発性記録媒体に前記ログ情報を書き込む、
処理を、前記第２処理部に実行させる、付記１１〜付記１３のいずれか一項に記載の制御プログラム。
【０１５３】
（付記１５）
情報処理装置の制御を行なう第１処理部と、前記第１処理部によって前記情報処理装置のログ情報を書き込まれて一時的に記憶する第１メモリ領域と、前記情報処理装置の動作状態の監視制御を行なう第２処理部と、前記ログ情報を記憶する不揮発性の第２メモリ領域と、を備えた制御装置による制御方法であって、
前記第２処理部が、
前記第１メモリ領域に前記ログ情報が記憶されたか否かを判断し、
前記第１メモリ領域に前記ログ情報が記憶されたと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、制御方法。
【０１５４】
（付記１６）
前記第１処理部が、前記ログ情報を前記第１メモリ領域に書き込むと前記第２処理部に対し割込み情報を通知し、
前記第２処理部が、前記第１処理部から前記割込み情報を受けると、前記第１メモリ領域に前記ログ情報が記憶されたと判断する、付記１５に記載の制御方法。
【０１５５】
（付記１７）
前記第２処理部が、
前記監視制御に係る情報に基づき前記情報処理装置の動作状態に異常が発生したか否かを判断し、
前記情報処理装置の動作状態に異常が発生したと判断した場合、前記ログ情報を前記第１メモリ領域から読み出して前記第２メモリ領域に書き込む制御を行なう、付記１５または付記１６に記載の制御方法。
【０１５６】
（付記１８）
前記第２処理部が、
前記ログ情報の重要度を判定し、
判定した前記ログ情報の重要度に応じた前記ログ情報の書込み制御を行なう、付記１５〜付記１７のいずれか一項に記載の制御方法。
【０１５７】
（付記１９）
前記第２処理部が、
性能の異なる複数種類の不揮発性記録媒体の中から、前記ログ情報の重要度に応じた不揮発性記録媒体を、前記第２メモリ領域として選択し、
選択した不揮発性記録媒体に前記ログ情報を書き込む制御を行なう、付記１８に記載の制御方法。
【０１５８】
（付記２０）
前記第２処理部が、
前記制御装置とともに冗長構成を成す他の制御装置における不揮発性記録媒体に、通信パスを介して接続され、
前記ログ情報の重要度に応じて、前記他の制御装置における不揮発性記録媒体を、前記第２メモリ領域として選択し、
前記通信パスを介して、選択した前記他の制御装置における不揮発性記録媒体に前記ログ情報を書き込む制御を行なう、付記１８または付記１９に記載の制御方法。
【符号の説明】
【０１５９】
１    ストレージ装置（ストレージシステム；情報処理装置）
２    ホスト装置（サーバ）
３    管理端末
１００，１００ａ，１００ｂ    ＣＭ（制御装置）
１０１，１０２    ＣＡ
１０３    ＤＡ
１０４    ＰＣＩｅインタフェース
１０５    ＣＰＵ（第１処理部，コンピュータ）
１０６    メモリ（メインメモリ，第１メモリ領域）
１０７    フラッシュメモリ
１０８    ＩＯＣ
１０９    チップセット
１１０    ＦＰＧＡ（第２処理部，コンピュータ）
１１１    ログ発生判断部
１１２    異常発生判断部
１１３    書込み制御部
１１３ａ    重要度判定部（ランク判定部）
１１３ｂ    選択部
１１３ｃ    書込み量判定部
１１４    Ｆ−ＳＴＳレジスタ
１２１    第１不揮発性記録媒体（第２メモリ領域，ＮＶＭ＃１）
１２２    第２不揮発性記録媒体（第２メモリ領域，ＮＶＭ＃２）
１３１    ＣＰＵ間通信パス（第１通信パス，パス＃１）
１３２    ＦＰＧＡ間通信パス（第２通信パス，パス＃２）
１４０    制御プログラム
１４１    ログ種類とログ重要度とを対応付けるテーブル（第１テーブル）
１４２    ログ重要度と書込み手法とを対応付けるテーブル（第２テーブル）
１５１    Ｃ−ＳＴＳレジスタ
１５２    ログ発生割込み通知部
１６０    制御プログラム
１６１    キャッシュ領域
１６２    ログ情報記憶領域（第１メモリ領域）
３０    ＤＥ（ドライブエンクロージャ）
３１    記憶装置（ドライブ）
４０    ＣＥ（コントローラエンクロージャ）
【図１】
2017091456.tif 000003
【図２】
2017091456.tif 000004
【図３】
2017091456.tif 000005
【図４】
2017091456.tif 000006
【図５】
2017091456.tif 000007
【図６】
2017091456.tif 000008
【図７】
2017091456.tif 000009
【図８】
2017091456.tif 000010
【図９】
2017091456.tif 000011
【図１０】
2017091456.tif 000012
【図１１】
2017091456.tif 000013
【図１２】
2017091456.tif 000014