(57)【要約】      （修正有）【課題】より効率的なタイミングでログを外部装置に送信する。【解決手段】ログ生成支援装置１１１は、対象装置のログを保持するバッファ部２０７と、バッファ部におけるログの蓄積量が第１閾値を超えたこと基づきログの送信を指示する第１の動作モードと、経過時間が第２閾値を超えたことに基づきログの送信を指示する第２の動作モードと、の２つの動作モードを有し、当該２つの動作モードを切り替えて動作可能に構成されたバッファ管理部２０３と、指示手段による指示に基づきバッファに蓄積されたログを外部装置に送信する転送部２０９と、を有する。バッファ管理部は、所定の条件を満たすことを検知した場合に第１の動作モードと第２の動作モードとを切り替える。【選択図】図２
2018120489.tif 000002
【特許請求の範囲】
【請求項１】
制御装置であって、
対象装置のログを保持するバッファと、
前記バッファにおけるログの蓄積量が第１閾値を超えたこと基づきログの送信を指示する第１の動作モードと、経過時間が第２閾値を超えたことに基づきログの送信を指示する第２の動作モードと、の２つの動作モードを有し、該２つの動作モードを切り替えて動作可能に構成された指示手段と、
前記指示手段による指示に基づき前記バッファに蓄積されたログを外部装置に送信する送信手段と、
を有し、
前記指示手段は、所定の条件を満たすことを検知した場合に前記第１の動作モードと前記第２の動作モードとを切り替える
ことを特徴とする制御装置。
【請求項２】
前記指示手段は、前記対象装置の異常を検知した場合に前記第２の動作モードに切り替える
ことを特徴とする請求項１に記載の制御装置。
【請求項３】
前記指示手段は、前記バッファに保持されたログの内容に基づいて前記異常を検知する
ことを特徴とする請求項２に記載の制御装置。
【請求項４】
前記指示手段は、前記第２の動作モードで動作中に前記バッファに所定内容のログが所定回数書き込まれた場合に動作モードを前記第１の動作モードに切り替える
ことを特徴とする請求項２又は３に記載の制御装置。
【請求項５】
前記指示手段は、前記対象装置に対するユーザ操作を検知した場合に前記第２の動作モードに切り替える
ことを特徴とする請求項１に記載の制御装置。
【請求項６】
前記指示手段は、前記外部装置が特定の転送先であることを検知した場合に前記第２の動作モードに切り替える
ことを特徴とする請求項１に記載の制御装置。
【請求項７】
前記指示手段は、前記対象装置が特定の動作状態であることを検知した場合に前記第２の動作モードに切り替える
ことを特徴とする請求項１に記載の制御装置。
【請求項８】
前記対象装置の動作状態を取得する取得手段と、
前記取得手段により取得された前記対象装置の動作状態に応じて前記第１閾値を変更する変更手段と、
を更に有する
ことを特徴とする請求項１乃至７の何れか１項に記載の制御装置。
【請求項９】
前記変更手段は、
前記対象装置が通常状態のクロック周波数とは異なるクロック周波数で動作している場合に、前記第１閾値を前記バッファに保持可能なログ容量の最大値に変更する
ことを特徴とする請求項８に記載の制御装置。
【請求項１０】
前記第１閾値の指定を受け付ける第１の受付手段を更に有する
ことを特徴とする請求項１乃至９の何れか１項に記載の制御装置。
【請求項１１】
前記第２閾値の指定を受け付ける第２の受付手段を更に有する
ことを特徴とする請求項１乃至１０の何れか１項に記載の制御装置。
【請求項１２】
前記制御装置は、前記対象装置と同一のネットワークに配置されており、
前記外部装置は、前記対象装置とは異なるネットワークに配置されている
ことを特徴とする請求項１乃至１１の何れか１項に記載の制御装置。
【請求項１３】
制御装置の制御方法であって、
対象装置のログをバッファに保持する保持工程と、
所定の条件を満たすか否かを検知する検知工程と、
前記検知工程により前記所定の条件を満たすことを検知した場合に、前記バッファにおけるログの蓄積量が第１閾値を超えたこと基づきログの送信を指示する第１の動作モードと、経過時間が第２閾値を超えたことに基づきログの送信を指示する第２の動作モードとを切替える切替工程と、
前記第１の動作モード、もしくは、前記第２の動作モードに従って、前記ログを外部装置へ送信する送信工程と、
を含むことを特徴とする制御方法。
【請求項１４】
コンピュータを、請求項１乃至１２の何れか１項に記載の制御装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置にログ記録する技術に関するものであり、特にログの送信タイミングを決定する技術に関するものである。
【背景技術】
【０００２】
機器の障害解析や性能解析などを行うために、機器内部の情報（ログ）を取得することは一般的に実施されている。ログは、情報処理装置に搭載されるＣＰＵが特定の処理を実行した際に、処理の記録情報として生成される場合が多い。例えば情報処理装置に搭載される各種ハードウェアリソースの使用権を取得、解放した際に、該ハードウェア情報と使用権の変更時刻をログとして生成する。また、情報処理装置が通信機能を持っていれば、どのタイミングでどの相手と通信を行ったかといった情報がログとして生成される。さらに、情報処理装置が予期しないエラー状態になった場合には、搭載されている各種ハードウェアの状態や、ＣＰＵのキャッシュメモリのダンプ情報がログとして生成される。
【０００３】
また、情報処理装置に障害や予期しないエラーが発生して特定のサブシステムにリセットがかけられた場合においても後からログを参照可能とすべく、ログを外部へ保存（ログ保存処理）するように設計していることがある。一般にログは多いほど様々な解析に有用であるが、ソフトウェアによるログ保存処理が増加すると他の処理に遅延が発生してしまう可能性がある。そこで、ソフトウェアは専用ハードウェアのレジスタにログを書き込むよう構成し、ログ保存処理を当該専用ハードウェアに代行させる手法が提案されている。特許文献１では、ログ生成支援装置内のログ蓄積量を監視して、閾値を超えた場合に外部サーバに出力する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２２１４３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ログを外部に保存するシステムにおいては、頻繁にログ保存処理を実行するとアクセス競合の発生により当該システムの性能劣化リスクが上昇する。専用ハードウェアに大容量のバッファを搭載することにより頻繁なログ保存処理を抑制することは可能であるが、リセット等が発生した際にログが消滅し該ログを参照できないリスクが上昇する。
【０００６】
本発明はこのような問題を鑑みてなされたものであり、より効率的なタイミングでログを外部装置に送信可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述の問題点を解決するため、本発明に係る制御装置は以下の構成を備える。すなわち、制御装置は、対象装置のログを保持するバッファと、前記バッファにおけるログの蓄積量が第１閾値を超えたこと基づきログの送信を指示する第１の動作モードと、経過時間が第２閾値を超えたことに基づきログの送信を指示する第２の動作モードと、の２つの動作モードを有し、該２つの動作モードを切り替えて動作可能に構成された指示手段と、前記指示手段による指示に基づき前記バッファに蓄積されたログを外部装置に送信する送信手段と、を有し、前記指示手段は、所定の条件を満たすことを検知した場合に前記第１の動作モードと前記第２の動作モードとを切り替える。
【発明の効果】
【０００８】
本発明によれば、より効率的なタイミングでログを外部装置に送信可能とする技術を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態に係る情報処理装置の全体構成図である。
【図２】第１実施形態に係るログ生成支援装置のブロック図である。
【図３】第１実施形態に係るログ生成支援装置の動作を示すフローチャートである。
【図４】蓄積量の閾値／時間の閾値変更処理の動作を示すフローチャートである。
【図５】ログ書き込み処理の動作を示すフローチャートである。
【図６】動作モードの切り替え処理の動作を示すフローチャートである。
【図７】時間計測処理の動作を示すフローチャートである。
【図８】第２実施形態に係る情報処理システムの全体構成図である。
【図９】第２実施形態に係るログ生成支援装置の動作を示すフローチャートである。
【図１０】閾値変更処理の動作を示すフローチャートである。
【図１１】ログ一時保存処理の動作を示すフローチャートである。
【図１２】動作モードの切り替え処理の動作を示すフローチャートである。
【図１３】時間計測処理の動作を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に、図面を参照して、この発明の好適な実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【００１１】
（第１実施形態）
本発明に係る制御装置の第１実施形態として、情報処理装置内に配置されるログ生成支援装置を例に挙げて以下に説明する。
【００１２】
＜装置構成＞
図１は、第１実施形態に係る情報処理装置の全体構成図である。情報処理装置１０１は、メインシステム部１０２とネットワーク通信部１０３を有する。メインシステム部１０２は、情報処理装置のアプリケーションを制御するためのシステムである。例えば、プリンタであれば印刷、プロジェクタであれば投影に関わる制御を行う。また、メインシステム部１０２は通信に関わる処理は行わず、ネットワーク通信部１０３により通信に関わる処理が行われる。
【００１３】
メインシステム部１０２には、メインＣＰＵ１０４、メインメモリ１０５、メインバス１０６が含まれる。メインＣＰＵ１０４は、情報処理装置１０１全体のアプリケーション制御を担う。メインメモリ１０５は、メインＣＰＵ１０４およびプロトコル処理部１０９と暗号処理部１１２が実行するプログラムが格納されており、またデータ用バッファメモリとしての役割を担う。さらに本実施形態においては、ログの格納場所としての役割も担う。また、メインメモリ１０５を不揮発メモリにしておくことでメインシステム部１０２がリセットされても、後からメモリに書き込まれている情報を参照することが可能である。メインバス１０６は、メインＣＰＵ１０４からメインメモリ１０５、ネットワーク通信部１０３へのアクセスおよびデータ転送に使用される。
【００１４】
ネットワーク通信部１０３には、ローカルバス１０７、通信制御部１０８、プロトコル処理部１０９、ローカルメモリ１１０、ログ生成支援装置１１１、暗号処理部１１２が含まれる。ネットワーク通信部１０３は、例えばＴＣＰ／ＩＰプロトコル処理を実行することにより、情報処理装置１０１にＬＡＮネットワーク１１４を介した通信を可能にする。ローカルバス１０７は、各処理部（プロトコル処理部１０９や暗号処理部１１２）から通信制御部１０８、ログ生成支援装置１１１、ローカルメモリ１１０、およびメインシステム部１０２へのアクセスおよびデータ転送に使用される。また各処理部間のアクセスやデータ転送にも使用される。
【００１５】
通信制御部１０８は、ＬＡＮネットワーク１０９に対して伝送フレームの送受信を行う。例えばＬＡＮネットワーク１１４がイーサネット（登録商標）の場合、通信制御部１０８は、イーサネット（登録商標）のＭＡＣ処理（伝送メディア制御処理）や、伝送フレームの送受信を行う。情報処理装置１０１は、通信制御部１０８を介して、外部から情報処理装置１０１に対する処理を指示する受付けることが可能である。例えば、情報処理装置１０１がプリンタであれば印刷処理の開始指示を外部から受け付け、情報処理装置１０１がプロジェクタであれば投影処理の開始指示を受け付ける。また、情報処理装置１０１がネットワークカメラであれば撮像処理の開始指示などを受け付ける。
【００１６】
プロトコル処理部１０９、暗号処理部１１２は、通信プロトコル処理専用のハードウェア回路装置、あるいは通信プロトコル処理用に設計されたマイクロプロセッサである。これらは、汎用的なＴＣＰ／ＩＰプロトコルの通信処理を行う。より具体的には、ＩＰｖ４、ＩＰｖ６、ＩＰｓｅｃ、ＩＣＭＰ、ＵＤＰ、ＴＣＰ等の各通信プロトコル処理や、送信フロー制御や輻輳制御、通信エラー制御等を行う。またプロトコル処理部１０９、暗号処理部１１２は１つの機能ブロックとして構成してもよいし、それぞれを複数のマイクロプロセッサによるマルチプロセッサ構成としてもよい。さらに、マイクロプロセッサによる処理と一部の機能をハードウェアによるアクセラレーションを行う構成としてもよい。ローカルメモリ１１０は、ネットワーク通信部１０３内の処理における一時記憶装置として使用する。
【００１７】
クロック生成部１１３は、クロック信号を生成しメインシステム部１０２およびネットワーク通信部１０３へ供給する。また、メインＣＰＵ１０２からの指示により、クロック信号の停止およびクロック周波数の変更を行う。
【００１８】
図２は、第１実施形態に係るログ生成支援装置のブロック図である。ログ生成支援装置１１１は、対象装置である情報処理装置１０１のログを指定された場所（例えば、所定の外部装置）に転送する。なお、メインシステム部１０２、ネットワーク通信部１０３などの個々の機能部を対象装置としてもよい。なお、ログ生成支援装置は、ログの転送タイミングを決定する動作モードとして２種類の動作モードを切り替えて動作可能に構成されているが、詳細については後述する。
【００１９】
レジスタ部２０１には、プロトコル処理部１０９や暗号処理部１１２やメインＣＰＵ１０４によって、ログ生成支援装置１１１の設定やログが書き込まれる。設定の例としては、生成したログ転送の転送場所や、ログ転送の開始判定に用いる閾値である。なお、本実施形態においては、閾値には時間に関する閾値と蓄積量に関する閾値の２つが存在するが、詳細については後述する。またレジスタ部２０１は、書き込みを受け付けた後に応答信号を返す。該応答信号により、レジスタ部２０１に書き込みを行った処理部もしくはＣＰＵは、即座に他の処理へ移行することが可能となる。これにより、プロトコル処理部１０９や暗号処理部１１２がメインメモリ１０５などへ直接ログを書き込むよりも処理完了までにかかる時間が短くなるため、システム性能低下が少なくなるメリットがある。
【００２０】
レジスタ部２０１に書き込まれた各種設定やログはバッファ管理部２０３で一元的に管理する。バッファ管理部２０３はレジスタ部２０１に書き込まれたログをバッファ部２０７に書き込む。レジスタ部２０１に書き込まれた内容をそのままバッファ部２０７に書き込んでもよいし、新しく情報（以降では付加情報と呼ぶ）を追加してもよい。付加情報として、例えば入力されたログのシーケンス番号であったり、タイマ部２０５から得られる時間情報であったり、ログの終了・開始位置を示す識別子であったり、ログ生成支援装置１１１の設定であってもよい。ログ生成支援装置１１１がこれらの情報を生成することで、ログ生成におけるメインＣＰＵ１０４や各処理部の処理負荷を減らすことが出来る。その結果、性能低下のリスクを少なくすることが出来る。
【００２１】
ログに付加情報を追加するかどうかを判断する第１の方法として、ログ生成用のレジスタを複数種類用意することが挙げられる。この方法では、ログそのものを外部から書き込むレジスタＡと付加情報の生成を要求するレジスタＢを用意して、必要な時に外部がそれらのレジスタに書き込みを行うものである。付加情報に応じて、該レジスタを複数用意してもよい。たとえば、時間情報を付加する時はレジスタＢ−１、シーケンス番号を付加する時はレジスタＢ−２を使用するなどである。
【００２２】
第２の方法として、ログ生成用レジスタにログを書き込むフィールドと付加情報に関するフィールドを用意するやり方が挙げられる。たとえば、３２ビットのログ生成用レジスタ内の上位４ビットを付加情報の要求、下位２８ビットをログとして使用する。ログ生成用レジスタ内の上位４ビットのいずれかが'１'である場合は、付加情報をログに追加する。たとえば下位ビットからシーケンス番号の要求、時間情報の要求、ログ開始の識別子要求、ログ終了の識別子要求のなどに設定しておけばよい。もちろんそれぞれのビットの配置はどこでもかまわないし、付加情報の要求を'１'ではなく'０'で判断しても構わない。また、一度に付加情報を１つではなく２つ以上要求しても設計上構わない。
【００２３】
第１の方法のメリットは、レジスタのビット幅をログ情報として使用できるため、１回のレジスタアクセスで情報量が多くなることである。第１の方法のデメリットは、付加情報を要求するために別のレジスタに書き込みを行うため、ログ保存処理完了までにかかる処理時間を要することである。第２の方法のメリットは、１つのレジスタへの書き込みでログ情報の書き込みと付加情報の指定できるため、ログ保存処理にかかる時間が第１の方法よりも少なくすむことである。第２の方法のデメリットは、１つのレジスタにログと付加情報の２種類のフィールドを用意するので、ログそのものの情報量が少なくなることである。以降、本実施形態では付加情報もログに含むものとする。
【００２４】
バッファ管理部２０３は、バッファ部２０７にログを書き込むだけでなく、バッファ部２０７に書き込んだ量も未転送のログとして管理するが、詳しくは後述する。ログバッファ部への書き込みを行う機能ブロックで書き込み量も管理することで、回路規模の削減や管理の平易化が見込める。また、バッファ管理部２０３ではタイマ部２０５からタイマ値を受け取る。ここで受け取るタイマ値は前述した付加情報としての時間情報に利用する。また、後述する時間管理による転送開始指示のトリガタイミングとしても利用する。
【００２５】
タイマ部２０５は、クロックが供給されている間、タイマ値をインクリメントし続け、入力されるクロック周波数に応じた時間情報を出力するものである。
【００２６】
バッファ部２０７は、バッファ管理部２０３から書き込まれるログを一時的に蓄積する。バッファ部２０７はメモリで構成してもよいしＦＩＦＯで構成してもよいが、ＦＩＦＯの場合は現時点の蓄積量を示すステータス信号を出力するものが好ましい。メモリとＦＩＦＯで同じ量の情報を蓄積させる場合、ＦＩＦＯのほうが全体のサイズが大きくなる傾向があるため、メモリで構成する方がコストの側面では好ましい。
【００２７】
転送部２０９は、バッファ管理部２０３から転送開始の指示を受けると、バッファ部２０７からログを読み込み、指示された場所に対して書き込みを行う。本実施形態では、メインメモリ１０５がログの転送先としている。バッファ部２０７およびメインメモリ１０５はどちらも転送部２０９からみて支配下にある。したがって、転送先であるメインメモリ１０５にログは必ず書き込まれる。
【００２８】
動作検出部２１０は、メインシステム部１０２およびネットワーク通信部１０３の動作状態を検出し、バッファ管理部２０３へ通知する。本実施形態において動作検出部２１０は、メインシステム部１０２およびネットワーク通信部１０３に供給されるクロック信号が入力され、クロック信号の状態から動作状態を検出するものとする。また、動作状態の遷移も検出するものとする。
【００２９】
例えば、メインシステム部１０２およびネットワーク通信部１０３へクロック信号が供給されている場合は「通常状態」と判断する。また、ネットワーク通信部１０３にのみクロック信号が供給されている場合やネットワーク通信部１０３に供給されるクロック周波数が通常状態よりも低い場合に「ネットワークスタンバイ状態」と判断する。ネットワークスタンバイ状態は、通常状態より消費電力が低く、外部ネットワークを介して起動メッセージの受信を待ち受けている状態を指す。ネットワーク通信部１０３に供給されるクロック周波数が通常状態よりも高い場合に「性能優先状態」と判断する。クロック周波数が高いので通常状態よりも高速に処理を行うことが出来る。異常検出部２１２は、情報処理装置１０１内の異常を検知すると、バッファ管理部２０３に対して通知を行う。
【００３０】
異常を検知する第１の例は、レジスタ部２０１に書き込まれるログの中にＷＡＲＮＩＮＧやＥＲＲＯＲやＦＡＴＡＬを示す識別子が含まれている場合である。また、レジスタ部２０１の設定によりどの識別子がログ中に含まれている時に異常と判断するかを変更できるように構成しても構わない。
【００３１】
あるいは、第２の例として、ローカルバス１０７に接続している信号をスヌープして、予期しないアドレスに対して書き込みや読み込みが発生した場合である。第２の例により、ネットワークを介して行われる不正アクセスなどを検知することが可能である。本実施形態では、異常検出部はログ生成支援装置１１１の内部に配置しているが、ログ生成支援装置１１１の外部であっても構わない。以上がログ生成支援装置１１１についての説明である。
【００３２】
＜装置の動作＞
図３は、第１実施形態に係るログ生成支援装置の動作を示すフローチャートである。具体的には、バッファ管理部２０３が、転送部２０９に転送開始の指示を発行する動作を示している。上述したように、ログ生成支援装置１１１は、２種類の動作モードを有している。具体的には、蓄積量に基づき送信タイミングを判断する第１のモードと、経過時間に基づき送信タイミングを判断する第２のモードと、である。ここでは、初期の動作モードとして第１の動作モードで動作することを想定する。
【００３３】
Ｓ３０１では、ログ生成支援装置１１１は、情報処理装置１０１に電源が投入され、ネットワーク通信部１０３が起動した時点で動作を開始する。また、電源投入以外にもネットワーク通信部１０３がリセットされた場合もＳ３０１から動作を開始する。また、本フローが一度終了した後も再びＳ３０１から動作を開始する。なお、ネットワーク通信部１０３がリセットされた場合、時間に関する閾値と蓄積量に関する閾値は、ログ生成支援装置１１１の設計上の初期値となる。
【００３４】
Ｓ３０２では、ログ生成支援装置１１１は、バッファ部２０３に未転送のログはないため、未転送ログカウント値を”０”に設定する。
【００３５】
Ｓ３０３では、ログ生成支援装置１１１は、現在、外へログを転送するタイミングを時間経過で判断するよう設定されているか否かを判定する。時間経過で判断している場合はＳ３０５へ進み、そうでない場合（蓄積量で判断している場合）はＳ３０４進む。
【００３６】
Ｓ３０４では、ログ生成支援装置１１１は、蓄積量の閾値を変更する処理を開始する。該閾値はバッファ部２０３に蓄積したログの量で転送タイミングを判断する場合に使用する。処理の詳細については図４（ａ）を参照して後述する。該処理が完了した後、Ｓ３０６に進む。
【００３７】
Ｓ３０５では、ログ生成支援装置１１１は、時間経過の閾値を変更する処理を開始する。該閾値はバッファ部２０３にログが蓄積し始めてから所定の時間経過したかどうかで転送タイミングを判断する場合に使用する。処理の詳細については図４（ｂ）を参照して後述する。該処理が完了した後、Ｓ３０６に進む。
【００３８】
Ｓ３０６では、ログ生成支援装置１１１は、ログ生成支援装置１１１のレジスタにログが書き込まれたかどうかを条件に分岐する。書き込まれた場合はＳ３０７に進み、書き込まれていない場合はＳ３０８に進む。Ｓ３０７では、ログ生成支援装置１１１は、ログの書き込み処理を開始する。処理の詳細については図５を参照して後述する。
【００３９】
Ｓ３０８では、ログ生成支援装置１１１は、異常検出部２１２からの異常通知の有無を判定する。異常通知があった場合にはＳ３０９に進み、ない場合にはＳ３１０に進む。Ｓ３０９では、ログ生成支援装置１１１は、切り替え処理Ａを開始する。ここでは、第１の動作モードで動作中に異常通知があった場合に第２の動作モードに遷移する（切替）。処理の詳細については図６（ａ）を参照して後述する。該処理が完了した後、Ｓ３１０に進む。
【００４０】
Ｓ３１０では、ログ生成支援装置１１１は、「現時点での転送タイミングの制御における閾値を超えていること」そして「バッファ部２０７に未転送のログがあること」の両方を満たすかどうかを条件に分岐する。両方を満たす場合はＳ３１１に進み、そうでない場合はＳ３０３に進む。
【００４１】
Ｓ３１１では、ログ生成支援装置１１１は、転送部２０９に対して転送開始の指示を発行する。転送指示を受け取った転送部２０９はバッファ部２０７からログを読み込んで、転送先であるメインメモリ１０５に書き込みを行う。該指示を発行した後、Ｓ３１２に進む。Ｓ３１２では、ログ生成支援装置１１１は、時間計測処理を開始する。処理の詳細については図７を参照して後述する。該処理完了後、Ｓ３１３に進む。Ｓ３１３では、ログ生成支援装置１１１は、切り替え処理Ｂを開始する。ここでは、第２の動作モードで動作していた場合に第１の動作モードに遷移することになる。処理の詳細については図６（ｂ）を参照して後述する。該処理完了後、Ｓ３１４に進み本フローは終了する。
【００４２】
図４は、蓄積量の閾値／時間の閾値に係る変更処理の動作を示すフローチャートである。図４（ａ）は、蓄積量の閾値に係る変更処理（Ｓ３０４）の動作を示すフローチャートである。具体的には、バッファ管理部２０３が転送部２０９に転送開始の指示を発行するか否かを判断するために使用する「蓄積量の閾値」を変更する動作である。
【００４３】
Ｓ４０１では、バッファ管理部２０３は、レジスタ部２０１内にあるログ蓄積量の閾値を指定する領域において、閾値が指定されているか否かを判定する。閾値が指定されている場合にはＳ４０３に進み、そうでない場合にはＳ４０２に進む。
【００４４】
Ｓ４０２では、バッファ管理部２０３は、性能優先状態もしくはネットワークスタンバイ状態であるかどうかを判定する。性能優先状態もしくはネットワークスタンバイ状態の場合にはＳ４０４に進み、そうでない場合にはＳ４０５に進む。
【００４５】
Ｓ４０３では、バッファ管理部２０３は、外部から書き込まれた値をログ蓄積量の閾値に変更を行う。こうすることで、外部から容易に閾値を変更することが可能となる。変更後、Ｓ４０７に進んで本フローは終了する。
【００４６】
Ｓ４０４では、バッファ管理部２０３は、閾値をバッファ部２０７が保持可能なログ容量の最大値に変更する。このように閾値を変更することでログ生成支援装置１１１外に転送回数が最小に抑えることが出来る。その結果、性能優先状態では、情報処理装置１０１のシステム性能が低下するリスクを最小限に抑えることができる。ネットワークスタンバイ状態では、クロックを供給する時間を抑えることが出来るためより少電力な状態を維持することが出来る。変更後、Ｓ４０７に進んで本フローは終了する。
【００４７】
Ｓ４０５では、バッファ管理部２０３は、通常状態に遷移したかどうかを判定する。通常状態に遷移した場合はＳ４０６に進み、遷移していない場合はＳ４０７に進み閾値を変更せずに本フローは終了する。
【００４８】
Ｓ４０６では、バッファ管理部２０３は、ログ蓄積量の閾値を初期値に設定する。その後、Ｓ４０７に進んで本フローは終了する。なお、初期値はバッファ部２０７が保持できる最大値よりも小さいものとする。
【００４９】
図４（ｂ）は、時間の閾値に係る変更処理（Ｓ３０５）の動作を示すフローチャートである。具体的には、バッファ管理部２０３が転送部２０９に転送開始の指示を発行するか否かを判断するために使用する「時間の閾値」を変更する動作である。
【００５０】
Ｓ５０１では、バッファ管理部２０３は、レジスタ部２０１内にある時間の閾値を指定する領域において、閾値が指定されているか否かを判定する。閾値が指定されている場合にはＳ５０２に進み、そうでない場合にはＳ５０３に進む。
【００５１】
Ｓ５０２では、バッファ管理部２０３は、外部から書き込まれた値を時間の閾値に変更を行う。こうすることで、外部から容易に閾値を変更することが可能となる。変更後、Ｓ４０７に進んで本フローは終了する。
【００５２】
図５は、ログ書き込み処理（Ｓ３０７）の動作を示すフローチャートである。具体的には、バッファ管理部２０３がバッファ部２０１にログを書き込む動作を示している。
【００５３】
Ｓ６０１では、バッファ管理部２０３は、バッファ部２０７に蓄積しているログの蓄積量で転送タイミングを制御しているかどうかを判定する。蓄積量で制御している場合はＳ６０４に進み、そうでない場合（時間で制御している場合）はＳ６０２に進む。
【００５４】
Ｓ６０２では、バッファ管理部２０３は、外部からレジスタ部２０１に書き込まれたログ種別を判定する。ログ種別が”ＷＡＲＮＩＮＧ”、”ＥＲＲＯＲ”、”ＦＡＴＡＬ”の何れかである場合はＳ６０４に進み、それ以外である場合はＳ６０３に進む。
【００５５】
ここでログ種別について説明する。後から管理しやすいようにログにはタグを付加している場合が多く、本実施形態のログ種別もタグの一種である。ここでは、ログ種別は”ＦＡＴＡＬ”、”ＥＲＲＯＲ”、”ＷＡＲＮＩＮＧ”、”ＩＮＦＯ”、”ＤＥＢＵＧ”の合計５つとしている。
【００５６】
”ＦＡＴＡＬ”や”ＥＲＲＯＲ”は、情報処理装置１１１やネットワーク通信部１０３に深刻な処理が発生した場合や、演算処理を実行した後に設計時には想定外の値になった場合などの時に付与されるものとしている。ＦＡＴＡＬのほうがＥＲＲＯＲよりもより重大かつ深刻な情報である。たとえば、通信コネクションが突然強制的に切断された場合や、意図しない相手とコネクションを確立した時などである。”ＷＡＲＮＩＮＧ”は、ＦＡＴＡＬやＥＲＲＯＲほど重大もしくは深刻な情報ではないが、警告するべき情報である場合に付与する。”ＤＥＢＵＧ”は、設計者が情報処理装置１０１やネットワーク通信部１０３などをデバッグする際に有用となる詳細情報に付与するものとする。よって、１つの処理あたりにＩＮＦＯが付与されるログよりもＤＥＢＵＧが付与されるログの方が多く存在するものとする。
【００５７】
Ｓ６０３では、バッファ管理部２０３は、通常ログカウント値をログ種別に応じてインクリメントする。本実施形態では、ログ種別がＩＮＦＯの時は通常ログカウント値を２インクリメントし、ＤＥＢＵＧの時は通常ログカウント値を１インクリメントする。ログ種別がＤＥＢＵＧのように、異常が収束するまでに頻繁に発生するログに関しては、ＩＮＦＯなどのログよりもインクリメントする数を少なくする方が好ましい。理由については後述する。インクリメント後、Ｓ６０４に進む。
【００５８】
Ｓ６０４では、バッファ管理部２０３は、未転送ログカウント値をインクリメントする。インクリメント後、Ｓ６０５に進む。
【００５９】
Ｓ６０５では、バッファ管理部２０３は、レジスタ部２０１に書き込まれたログをバッファ部２０７に書き込みを行う。書き込み後Ｓ６０６に進む。
【００６０】
Ｓ６０６では、バッファ管理部２０３は、Ｓ６０５の書き込みがバッファ部２０７のスタート地点への書き込みであるかどうかを条件に分岐する。スタート地点への書き込みである場合にはＳ６０７へ進み、そうでない場合にはＳ６０８へ進む。
【００６１】
Ｓ６０７では、バッファ管理部２０３は、タイマ部２０５から得られるタイマ値をバッファ管理部２０３内で一時的に保持する。スタート地点へのログ書き込みが発生した時の時間情報を保持することで、外部への転送が開始するまでにどれくらいの時間を要したかを計算することが可能となる。この計算値の使用用途についてはＳ３１２にて後述する。その後Ｓ６０８に進み本フローは終了する。
【００６２】
図６は、動作モードの切り替え処理の動作を示すフローチャートである。図６（ａ）は、蓄積量の閾値から時間の閾値に転送タイミングを判断するように切り替える処理（切り替え処理Ａ）（Ｓ３０９）を示すフローチャートである。
【００６３】
Ｓ７０１では、バッファ管理部２０３は、バッファ部２０７に蓄積しているログの蓄積量で転送タイミングを制御しているかどうかを判定する。蓄積量で制御している場合はＳ７０２に進み、制御していない場合（時間で制御している場合）はＳ７０３にすすむ。
【００６４】
Ｓ７０２では、バッファ管理部２０３は、転送タイミングを時間の閾値を用いて制御するように変更する。変更後Ｓ７０３に進む。異常を検知した時は、ネットワーク通信部がリセットされる可能性が上昇する。したがって、時間の閾値で転送タイミングを制御するように切り替えることで、バッファ部２０７に未転送のログが残っている時にリセットされ、ログが消滅するリスクを少なくすることが出来る。
【００６５】
Ｓ７０３では、バッファ管理部２０３は、通常ログカウント値を”０”に設定する。セットした後Ｓ７０４に進み本フローは終了する。
【００６６】
図７は、時間計測処理（Ｓ３１２）の動作を示すフローチャートである。具体的には、バッファ管理部２０３が、ログを受け取ってから外部へ転送するまでに要した時間を計測する処理である、
Ｓ８０１では、バッファ管理部２０３は、バッファ管理部２０３で一時的に保持していた時間情報とタイマ部２０５から得られる時間情報の差を計算する。この計算値はログを受け取ってから外部へ転送を開始するまでの所要時間を示している。
【００６７】
Ｓ８０２では、バッファ管理部２０３は、Ｓ８０１で得られた計算値が時間の閾値よりも小さいかどうかを条件に分岐する。小さい場合はＳ８０３へ進み、そうでない場合はＳ８０４に進んで本フローは終了する。
【００６８】
Ｓ８０３では、バッファ管理部２０３は、時間の閾値をＳ８０１で得られた計算値に変更する。ここで、変更するメリットについて述べる。時間の閾値で転送タイミングを制御する場合、バッファ部２０５が未転送のログで満杯の状態で新しくログをバッファ部２０５に書き込みが発生することを防ぐ必要がある。Ｓ８０１からＳ８０３およびＳ６０７の処理を行うことでログを外部に転送する時間間隔を計測して時間の閾値を変更することで、前述した状況が発生するリスクを低くすることが可能となる。
【００６９】
図６（ｂ）は、時間の閾値から蓄積量の閾値に転送タイミングを判断するように切り替える処理（切り替え処理Ｂ）（Ｓ３１３）を示すフローチャートである。
【００７０】
Ｓ９０１では、バッファ管理部２０３は、「時間で転送タイミングを制御している」かつ「通常ログカウント値が指定値以上になっている」かどうかを判定する。すなわち、第２の動作モードで動作中に所定内容（”ＷＡＲＮＩＮＧ”、”ＥＲＲＯＲ”、”ＦＡＴＡＬ”以外）のログが所定回数書き込まれたか否かを判定する。どちらも満たす場合はＳ９０２に進み、どちらか一方でも満たさない場合はＳ９０３に進んで本フローは終了する。
【００７１】
指定値をレジスタ部２０１の特定領域の値とすれば、閾値を時間に変更してからもう一度蓄積量に戻る時のタイミングを外部から制御することが可能になる。ログ種別に応じてインクリメントする数を変更することで、異常発生してから情報処理装置１０１内で行われる処理が十分行われ、発生した異常が収束（解消）する。異常が収束すればネットワーク通信部１０３がリセットされるリスクが減少する。よって、時間で転送タイミングを制御するよりもログの閾値で転送タイミングを制御する方がシステムの性能が出やすい。後述するが通常ログカウント値を参照して、一定値以上であれば転送タイミングを切り替えるのである。
【００７２】
Ｓ９０２では、バッファ管理部２０３は、バッファ部２０７に蓄積しているログの蓄積量で転送タイミングを制御するように切り替える。切り替え後Ｓ９０３に進み本フローは終了する。
【００７３】
以上説明したとおり第１実施形態によれば、ログ生成支援装置１１４は外部へログ転送を開始するタイミングを決定する動作モードを状況に応じて切り替える。この構成により、情報処理装置１０１のシステム性能劣化とリセット発生によるログ消失リスクの双方を効率的に低減することが可能となる。
【００７４】
なお、上述の説明においては、対象装置である情報処理装置１０１の異常を検知した場合に第２のモードに切り替え、当該異常が解消されたと判断した場合に第１のモードに切り替える形態について説明した。しかしながら、装置異常以外の条件を動作モードの切り替えの条件としてもよい。例えば、情報処理装置１０１に対するユーザ操作の検知を条件として動作モードを切り替えるよう構成してもよい。また、ログの転送先が特定の転送先であることの検知を条件にして動作モードを切り替えるよう構成してもよい。更に、情報処理装置１０１が特定の動作状態（例えば、上述の「ネットワークスタンバイ状態」）であることの検知を条件にして動作モードを切り替えるよう構成してもよい。
【００７５】
（第２実施形態）
第２実施形態では、制御装置であるログ生成支援装置をネットワーク内に配置する形態について説明する。
【００７６】
＜装置構成＞
図８は、第２実施形態に係る情報処理システムの全体構成図である。
【００７７】
装置１００１は、ログ生成支援装置に対してログの送信やログ生成支援装置の設定などを行う。装置１００１は汎用的なＰＣやネットワークカメラ、車載などの製品群でもかまわない。少なくとも装置１００１には外部とネットワークを介して通信を実行できるものとする。
【００７８】
装置１００１とログ生成支援装置１００２は同一のＬＡＮネットワークに存在することを想定する。ＬＡＮの形態は、有線ＬＡＮでも無線ＬＡＮでもかまわない。ただし、装置１００１とログ生成支援装置１００２は同一のＬＡＮネットワークに存在しない形態であっても適用は可能である。また、ここでは、装置１００１とログ生成支援装置１００２はＴＣＰ／ＩＰ通信によりログの送受信を行うものとする。ログ生成支援装置１００２は内部にバッファを持ち、装置１００１から受信したログを一時的に保持する。
【００７９】
ログ生成支援装置１００２は、受け取ったログをルータＡ１００４およびルータＢ１００７を介してログサーバ１００９に送信する。ログサーバ１００９とログ生成支援装置１００２はＬＡＮネットワークを介してお互いに通信できるものとする。またルータＡ１００４とルータＢ１００７は有線ＬＡＮや無線ＬＡＮといったネットワークを介して接続されているものとする。ログ生成支援装置１００２からログサーバ１００９までのネットワークではＴＣＰ／ＩＰプロトコル通信を使用できるものとする。ＴＣＰ／ＩＰプロトコルであれば送信先に通信パケットが届くことを保証されているからである。ＴＣＰ／ＩＰ以外のプロトコルでも再送処理等が規定されているプロトコルであってもよい。これらのプロトコルによりログを送信することで、ログサーバにログが確実に保存される。ログサーバは受信したログを一元的に管理する。ログ改ざんを防ぐために特定の通信ポートのみを解放してセキュリティを向上することが望ましい。
【００８０】
ログ生成支援装置１００２は、装置１００１から受けとったログが一定以上溜まってからログサーバ１００９に対してログの一括送信を実施する。通信パケットロストのことを考慮して、ログ生成支援装置１００２のバッファ最大容量よりも少ないところを閾値にして一括送信することが望ましい。バッファ最大容量に達してからログサーバに送信すると、装置１００１から送られてくるログを取りこぼしてしまう可能性があるからである。
【００８１】
ログ生成支援装置１００２は、内部に異常検知機構を持っているものとする。該機構は装置１００１から送られたログを解析して異常を検知するものでも良いし、ログ生成支援装置１００２に発生した異常を検知するものでも良い。後者の例として例えばルータＡ１００４を介して外部のネットワークからログ生成支援装置１００２に攻撃を検知した時などである。
【００８２】
ログ生成支援装置１００２は、該機構により異常を検知した場合に、ログを送信するタイミングを制御する時に時間の閾値を使用するように切り替える。時間の閾値で制御することで、ログ生成支援装置１００２内のバッファにログがとどまっている状態でログ生成支援装置１００２のリセット等によって、ログが消滅するリスクを抑えることが出来る。また、外部からの攻撃によりログが改ざんや削除されるリスクを減少させることが可能となり、本来のログが消滅することを防ぐことが出来る。時間で制御している状態で一定回数のログを装置１００１から受信したら、異常が収束したとみなしてもう一度ログ蓄積量で制御するように変更する。
【００８３】
また、ログ生成支援装置１００２には時間情報を取得する手段を持つ。取得方法として、例えばＮＴＰ（Network Time Protocol）を使用してもよいし他の手段を用いても構わない。ログ生成支援装置１００２に入力されるログにはそのログがいつ発生したかを示す時間情報が組み込まれているものとする。
【００８４】
＜装置の動作＞
図９は、第２実施形態に係るログ生成支援装置の動作を示すフローチャートである。具体的には、ログ生成支援装置１００２がログサーバにログを送信する処理を示している。
【００８５】
Ｓ１１０１では、ログ生成支援装置１００２は、情報処理装置１００２に電源が投入され、ネットワーク通信が可能になった状態でスタートする。また、電源投入以外にもログ生成支援装置１００２がリセットされた後もＳ１１０１から動作を開始する。また、本フローが一度終了した後も、再びＳ１１０１から動作を開始する。
【００８６】
Ｓ１１０２では、ログ生成支援装置１００２は、ログサーバ１００９とコネクションが確立しているかどうかを判断基準に分岐する。確立していない場合はＳ１１０３へ進み、確立している場合はＳ１１０４に進む。Ｓ１１０４では、ログ生成支援装置１００２は、ログサーバ１００９とコネクションを確立する。
【００８７】
Ｓ１１０５では、ログ生成支援装置１００２は、ログ生成支援装置１００２の内部にあるバッファにはログはないため、未転送ログカウント値を”０”に設定する。
【００８８】
Ｓ１１０５では、ログ生成支援装置１００２は、閾値の変更処理を開始する。処理の詳細については図１０を参照して後述する。該処理が完了した後、Ｓ１１０６に進む。
【００８９】
Ｓ１１０６では、ログ生成支援装置１００２は、ネットワークを介して装置１００１からログを受信したかどうかを判断基準に分岐する。受信した場合はＳ１１０７に進み、受信していない場合はＳ１１０８に進む。
【００９０】
Ｓ１１０７では、ログ生成支援装置１００２は、ログ生成支援装置１００２内のバッファへログの一時的に保存する処理を開始する。処理の詳細については図１１を参照して後述する。該処理が完了した後、Ｓ１１０８に進む。
【００９１】
Ｓ１１０８では、ログ生成支援装置１００２は、異常を検知したかどうかを判定する。異常があった場合にはＳ１１０９に進み、ない場合にはＳ１１１０に進む。
【００９２】
Ｓ１１０９では、ログ生成支援装置１００２は、切り替え処理Ａを開始する。処理の詳細については図１２（ａ）を参照して後述する。該処理が完了した後、Ｓ１１１０に進む。
【００９３】
Ｓ１１１０では、ログ生成支援装置１００２は、「現時点での転送タイミングの制御における閾値を超えていること」そして「ログ生成支援装置１００２内のバッファにログがあること」の両方を満たすかどうかを判定する。両方を満たす場合はＳ１１１１に進み、そうでない場合はＳ１１０５に進む。
【００９４】
Ｓ１１１１では、ログ生成支援装置１００２は、ログサーバ１００９にログを送信する。その後、Ｓ１１１２に進む。Ｓ１１１２では、ログ生成支援装置１００２は、時間計測処理を開始する。処理の詳細については図１３を参照して後述する。該処理完了後、Ｓ１１１３に進む。Ｓ１１１３では、ログ生成支援装置１００２は、切り替え処理Ｂを開始する。処理の詳細については図１２（ｂ）を参照して後述する。該処理完了後、Ｓ１１１４に進み本フローは終了し、もう一度Ｓ１１０１から開始する。
【００９５】
図１０は、閾値変更処理（Ｓ１１０５）の動作を示すフローチャートである。具体的には、ログ生成支援装置１００２がバッファにあるログをログサーバ１００９に送信するタイミングを制御するために使用する閾値を変更する処理を示している。
【００９６】
Ｓ１２０１では、ログ生成支援装置１００２は、時間の閾値もしくは蓄積量の閾値を外部の端末から指定されているかどうかを判定する。指定されている場合はＳ１２０２に進み、指定されていない場合はＳ１２０３に進み閾値を変更せずに本フローは終了する。
【００９７】
Ｓ１２０２では、ログ生成支援装置１００２は、指定された値に閾値を変更する。変更後Ｓ１２０３に進み本フローを終了する。
【００９８】
図１１は、ログ一時保存処理（Ｓ１１０７）の動作を示すフローチャートである。具体的には、ログ生成支援装置１００２が装置１００１から受信したログをログ生成支援装置１００２内にあるバッファに一時的に保存する処理を示している。
【００９９】
Ｓ１３０１では、ログ生成支援装置１００２は、ログの蓄積量によってバッファからログを送信するタイミングを制御するかどうかを判定する。蓄積量によって制御する場合はＳ１３０４に進み、制御しない場合（時間によって制御する場合）はＳ１３０２に進む。
【０１００】
Ｓ１３０２では、ログ生成支援装置１００２は、装置１００１から受信したログのログ種別を判定する。ログ種別が”ＷＡＲＮＩＮＧ”、”ＥＲＲＯＲ”、”ＦＡＴＡＬ”の何れかである場合はＳ１３０４に進み、それ以外である場合はＳ１３０３に進む。ログ種別は、第１実施形態と同様であるため説明は省略する。
【０１０１】
Ｓ１３０３では、ログ生成支援装置１００２は、通常ログカウント値をログ種別に応じてインクリメントする。該インクリメントの方法は第１実施形態と同等とする。Ｓ１３０４では、ログ生成支援装置１００２は、未転送ログカウント値をインクリメントしてＳ１３０５に進む。Ｓ１３０５では、ログ生成支援装置１００２は、受信したログをログ生成支援装置１００２内にあるバッファに一時的に保存し、Ｓ１３０６に進む。
【０１０２】
Ｓ１３０６では、ログ生成支援装置１００２は、未転送ログカウント値がログ一つ分であるかどうかを判断基準に分岐する。１つ分である場合はＳ１３０７に進み、そうでない場合はＳ１３０８に進み処理を終了する。Ｓ１３０７では、ログ生成支援装置１００２は、現時点の時間情報を参照、取得を行う。ログを受信し始めた時の時間情報を保持して、本フローは終了する。ここで取得した時間情報は後述の処理において使用する。
【０１０３】
図１２は、動作モードの切り替え処理の動作を示すフローチャートである。図１２（ａ）は、蓄積量の閾値から時間の閾値に転送タイミングを判断するように切り替える処理（切り替え処理Ａ）（Ｓ１１０９）を示すフローチャートである。
【０１０４】
Ｓ１４０１では、ログ生成支援装置１００２は、バッファの蓄積量で送信タイミングを制御しているかどうかを判定する。蓄積量で制御している場合はＳ１４０２に進み、していない場合（時間で制御している場合）はＳ１４０３に進む。
【０１０５】
Ｓ１４０２では、ログ生成支援装置１００２は、時間により送信タイミングを切り替えるように変更し、Ｓ１４０３に進む。第１実施形態でも述べているが、異常を検知した際の前後のログは非常に重要であるため、ログが消失しないように制御する必要がある。蓄積量ではなく時間により送信タイミングを制御するように切り替えて、ログがログ生成支援装置１００１内でとどまっている時間を短くすることで、リセットや想定外の処理やセキュリティ攻撃によってログが消失するリスクを少なくすることが出来る。
【０１０６】
Ｓ１４０３では、ログ生成支援装置１００２は、通常ログカウント値を”０”にして本フローは終了する。通常ログカウント値は第１実施形態と同じように活用する。
【０１０７】
図１３は、時間計測処理（Ｓ１１１２）の動作を示すフローチャートである。具体的には、ログ生成支援装置１００２がログを受け取ってからログサーバ１００９へ転送するまでに要した時間を計測する処理を示している。
【０１０８】
Ｓ１５０１では、ログ生成支援装置１００２は、現時点の時間情報を参照、取得してＳ１３０７で得られた時間情報との差を計算する。この計算値はログを受け取ってからログサーバへ転送を開始するまでの所要時間を示している。
【０１０９】
Ｓ１５０２では、ログ生成支援装置１００２は、Ｓ１５０１で得られた計算値が時間の閾値よりも小さいかどうかを条件に分岐する。小さい場合はＳ１５０３へ進み、そうでない場合はＳ１５０４に進んで本フローは終了する。
【０１１０】
Ｓ１５０３では、ログ生成支援装置１００２は、時間の閾値をＳ１５０１で得られた計算値に変更する。ここで、変更するメリットは第１実施形態と同等である。
【０１１１】
図１２（ｂ）は、時間の閾値から蓄積量の閾値に転送タイミングを判断するように切り替える処理（切り替え処理Ｂ）（Ｓ１１１３）を示すフローチャートである。
【０１１２】
Ｓ１６０１では、ログ生成支援装置１００２は、「時間で転送タイミングを制御している」かつ「通常ログカウント値が指定値以上になっている」かどうかを判定する。どちらも満たす場合はＳ１６０２に進み、どちらか一方でも満たさない場合はＳ１６０３に進んで本フローは終了する。
【０１１３】
Ｓ１６０２では、ログ生成支援装置１００２は、バッファに蓄積しているログの蓄積量で送信タイミングを制御するように切り替える。切り替え後Ｓ９０３に進み本フローは終了する。
【０１１４】
以上説明したとおり第２実施形態によれば、ログ生成支援装置１００２はログサーバ１００９へログ転送を開始するタイミングを決定する動作モードを状況に応じて切り替える。この構成により、システムの処理性能劣化とリセット発生やセキュリティ攻撃によるログ消失リスクの双方を効率的に低減することが可能となる。
【０１１５】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１６】
１１１  ログ生成支援装置；  ２０１  レジスタ部；  ２０３  バッファ管理部；  ２０５  タイマ部；  ２０７  バッファ部；  ２０９  転送部；  ２１０  動作検出部；  ２１２  異常検出部
【図１】
2018120489.tif 000003
【図２】
2018120489.tif 000004
【図３】
2018120489.tif 000005
【図４】
2018120489.tif 000006
【図５】
2018120489.tif 000007
【図６】
2018120489.tif 000008
【図７】
2018120489.tif 000009
【図８】
2018120489.tif 000010
【図９】
2018120489.tif 000011
【図１０】
2018120489.tif 000012
【図１１】
2018120489.tif 000013
【図１２】
2018120489.tif 000014
【図１３】
2018120489.tif 000015