(57)【要約】      （修正有）【課題】記録内容を出力するプログラムの動作状況に応じて、記録内容が設定されるログデータの制限サイズを調整する情報処理装置を提供する。【解決手段】自ら動作している間に記録内容を出力する第１プログラムの動作量に基づいて、当該記録内容が設定されるログデータの予測サイズを算出する第１算出部９０７と、第１プログラムに含められ或いは第１プログラムと別に設けられた、ログデータを管理する第２プログラムに、予測サイズを通知する通知部９１９とを有する。更に、第１算出部は、動作量の想定値に対する動作量の実測値の比を、データ追加量の想定値に乗じて、データ追加量の予測値を算出し、予測値に基づいて、予測サイズを算出する。【選択図】図９
2016151966.tif 000002
【特許請求の範囲】
【請求項１】
自ら動作している間に記録内容を出力する第１プログラムの動作量に基づいて、当該記録内容が設定されるログデータの第１予測サイズを算出する算出部と、
前記第１プログラムに含められ或いは前記第１プログラムと別に設けられた、前記ログデータを管理する第２プログラムに、前記第１予測サイズを通知する通知部と
を有する情報処理装置。
【請求項２】
前記算出部は、前記動作量の想定値に対する前記動作量の実測値の比を、データ追加量の想定値に乗じて、前記データ追加量の予測値を算出し、
前記予測値に基づいて、前記第１予測サイズを算出する
請求項１記載の情報処理装置。
【請求項３】
前記算出部は、他の基準によって前記ログデータの第２予測サイズを算出し、
前記第２予測サイズが前記第１予測サイズより大きい場合に、前記通知部は、前記第２予測サイズを前記第１予測サイズとして通知する
請求項１又は２記載の情報処理装置。
【請求項４】
更に、
前記第１予測サイズに基づいて、前記ログデータの格納場所における容量不足が生じると判定した場合に、前記ログデータ又は前記ログデータとともに前記格納場所に格納されている他のログデータのうち、移動させるログデータを選定し、当該移動させるログデータの格納場所を変更する変更部
を有し、
前記通知部は、前記移動させるログデータを管理するプログラムに、変更された前記格納場所を通知する
請求項１乃至３のいずれか１つ記載の情報処理装置。
【請求項５】
更に、
予め用意されている格納場所のいずれにおいても、前記移動させるログデータを格納するための容量が不足していると判定した場合に、前記予め用意されている格納場所に格納されているログデータのうち、重要度の低いログデータのサイズを削減する削減部
を有し、
前記通知部は、前記重要度の低いログデータを管理するプログラムに、削減された前記サイズを通知する
請求項４記載の情報処理装置。
【請求項６】
自ら動作している間に記録内容を出力する第１プログラムの動作量に基づいて、当該記録内容が設定されるログデータの予測サイズを算出し、
前記第１プログラムに含められ或いは前記第１プログラムと別に設けられた、前記ログデータを管理する第２プログラムに、前記予測サイズを通知する
処理をコンピュータにより実行する情報処理方法。
【請求項７】
自ら動作している間に記録内容を出力する第１プログラムを動作させるための第１の情報処理装置と、第２の情報処理装置とを含むシステムであって、
前記第２の情報処理装置は、
前記第１プログラムの動作量に基づいて、前記記録内容が設定されるログデータの予測サイズを算出する算出部と、
前記予測サイズを前記第１の情報処理装置に通知する通知部と
を有し、
前記第１の情報処理装置は、
前記通知を受けた場合に、前記予測サイズに基づいて前記ログデータの制限サイズを更新する更新部
を有するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムのロギング技術に関する。
【背景技術】
【０００２】
例えば、自ら動作している間に記録内容を出力するアプリケーションプログラムが複数動作する分散システムでは、ログデータがストレージ装置の容量を圧迫しないように、予めログデータのサイズに制限を設けることが多い。
【０００３】
しかし、設定されている制限のサイズが小さ過ぎれば、当初予定していた保存期間分の記録が残らないことがある。
【０００４】
一方、設定されている制限のサイズが大き過ぎれば、ストレージ装置の容量を無駄遣いすることになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−２４４６４５号公報
【特許文献２】特開２０１２−７９３５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、一側面では、記録内容を出力するプログラムの動作状況に応じて、当該記録内容が設定されるログデータの制限サイズを調整することである。
【課題を解決するための手段】
【０００７】
一態様に係る情報処理装置は、自ら動作している間に記録内容を出力する第１プログラムの動作量に基づいて、当該記録内容が設定されるログデータの第１予測サイズを算出する算出部と、第１プログラムに含められ或いは第１プログラムと別に設けられた、ログデータを管理する第２プログラムに、第１予測サイズを通知する通知部とを有する。
【発明の効果】
【０００８】
一側面としては、記録内容を出力するプログラムの動作状況に応じて、当該記録内容が設定されるログデータの制限サイズを調整することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、分散システムの構成例を示す図である。
【図２】図２は、サーバ装置のモジュール構成例を示す図である。
【図３】図３は、ログデータの配置例を示す図である。
【図４】図４は、ログ管理部のモジュール構成例を示す図である。
【図５】図５は、レコード削除処理フローの例を示す図である。
【図６】図６は、レコード追加処理フローの例を示す図である。
【図７】図７は、第１更新処理フローの例を示す図である。
【図８】図８は、第２更新処理フローの例を示す図である。
【図９】図９は、管理装置のモジュール構成例を示す図である。
【図１０】図１０は、プログラムテーブルの例を示す図である。
【図１１】図１１は、サーバテーブルの例を示す図である。
【図１２】図１２は、ＣＰＵ（Central Processing Unit）使用率テーブルの例を示す図である。
【図１３】図１３は、収集処理フローの例を示す図である。
【図１４】図１４は、メイン処理フローの例を示す図である。
【図１５】図１５は、ログデータの構成例を示す図である。
【図１６】図１６は、予測処理フローの例を示す図である。
【図１７】図１７は、第１サイズ算出処理フローの例を示す図である。
【図１８】図１８は、第２サイズ算出処理フローの例を示す図である。
【図１９】図１９は、第３サイズ算出処理フローの例を示す図である。
【図２０】図２０は、ログデータが格納されている様子を示す図である。
【図２１】図２１は、ログデータが格納されている様子を示す図である。
【図２２】図２２は、ログデータが格納されている様子を示す図である。
【図２３】図２３は、ログデータが格納されている様子を示す図である。
【図２４】図２４は、ログデータが格納されている様子を示す図である。
【図２５】図２５は、ログデータが格納されている様子を示す図である。
【図２６】図２６は、確認処理フローの例を示す図である。
【図２７】図２７は、変更処理フローの例を示す図である。
【図２８】図２８は、削減処理フローの例を示す図である。
【図２９】図２９は、通知処理フローの例を示す図である。
【図３０】図３０は、通知処理フローの例を示す図である。
【図３１】図３１は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１０】
図１に、分散システムの構成例を示す。この例で、分散システムは３つのサーバ装置１０１を含んでいる。この例で、サーバ装置名が「Ｘ」であるサーバ装置１０１を、サーバ装置１０１Ｘと記す。同様に、サーバ装置名が「Ｙ」であるサーバ装置１０１を、サーバ装置１０１Ｙと記す。サーバ装置名が「Ｚ」であるサーバ装置１０１を、サーバ装置１０１Ｚと記す。
【００１１】
サーバ装置１０１Ｘ、サーバ装置１０１Ｙ及びサーバ装置１０１Ｚは、ＬＡＮ（Local Area Network）を介して互いに接続している。分散システムで用いられるアプリケーションプログラムは、サーバ装置１０１Ｘ、サーバ装置１０１Ｙ及びサーバ装置１０１Ｚのいずれかにおいて動作する。アプリケーションプログラムは、動作している間にログデータを出力する。出力されたログデータは、サーバ装置１０１Ｘ、サーバ装置１０１Ｙ及びサーバ装置１０１Ｚのいずれかにおいて保持される。
【００１２】
管理装置１０３は、アプリケーションプログラムの動作状況を監視し、その動作状況に応じてログデータの出力に関する指示を、アプリケーションプログラムに対して行う。そのため、管理装置１０３は、ＬＡＮを介してサーバ装置１０１Ｘ、サーバ装置１０１Ｙ及びサーバ装置１０１Ｚに接続している。
【００１３】
図２に、サーバ装置１０１のモジュール構成例を示す。サーバ装置１０１は、アプリケーションプログラム２０１、記憶部２０７及びネットワークファイルシステム２１１を有している。アプリケーションプログラム２０１は、サーバ装置１０１で動作しているプログラムであって、動作中にログデータを出力する。記憶部２０７は、例えばサーバ装置１０１に設けられているハードディスクドライブに相当する。ネットワークファイルシステム２１１は、他のサーバ装置１０１に設けられているネットワークファイルシステム２１１と連動し、各サーバ装置１０１の記憶部２０７におけるフォルダやファイルを管理する。
【００１４】
アプリケーションプログラム２０１は、メイン処理部２０３及びログ管理部２０５を有している。メイン処理部２０３は、アプリケーションプログラム２０１の主たる処理を行う。メイン処理部２０３は、当該主たる処理をプロセッサに実行させるメインプログラムによって実現される。メイン処理部２０３は、自ら動作している間に記録内容を出力する。ログ管理部２０５は、メイン処理部２０３から記録内容を受け付けて、記録日時に対応付けて記録内容をログデータに書き込む。ログ管理部２０５は、後述するログ管理部２０５における処理（レコード削除処理、レコード追加処理、第１更新処理及び第２更新処理）をプロセッサに実行させるログ管理プログラムによって実現される。この例では、ログ管理部２０５がアプリケーションプログラム２０１に含まれるが、ログ管理部２０５をアプリケーションプログラム２０１の外に設けるようにしてもよい。
【００１５】
記憶部２０７は、ログ領域２０９を有している。ログ領域２０９は、ログデータを記憶するための領域である。
【００１６】
図３に、ログデータの配置例を示す。図３に示すように、サーバ装置１０１Ｘにおいて、プログラム名が「Ａ」であるアプリケーションプログラム２０１が動作している。更に、サーバ装置１０１Ｘにおいて、プログラム名が「Ｂ」であるアプリケーションプログラム２０１とプログラム名がＣであるアプリケーションプログラム２０１も動作している。この例で、プログラム名が「Ａ」であるアプリケーションプログラム２０１を、アプリケーションプログラム２０１Ａと記す。同様に、プログラム名が「Ｂ」であるアプリケーションプログラム２０１を、アプリケーションプログラム２０１Ｂと記す。同様に、プログラム名が「Ｃ」であるアプリケーションプログラム２０１を、アプリケーションプログラム２０１Ｃと記す。
【００１７】
アプリケーションプログラム２０１Ａは、データ名が「ａ」であるログデータを出力する。アプリケーションプログラム２０１Ｂは、データ名が「ｂ」であるログデータを出力する。アプリケーションプログラム２０１Ｃは、データ名が「ｃ」であるログデータを出力する。この例で、データ名が「ａ」であるログデータを、ログデータａと記す。同様に、データ名が「ｂ」であるログデータを、ログデータｂと記す。同様に、データ名が「ｃ」であるログデータを、ログデータｃと記す。
【００１８】
ログデータａ、ログデータｂ及びログデータｃは、サーバ装置１０１Ｘに設けられたログ領域２０９に格納されている。この例で、サーバ装置１０１Ｘに設けられたログ領域２０９を、ログ領域２０９Ｘと記す。ログ領域２０９Ｘのフォルダ名は、「ＳｅｒｖｅｒＸ」である。
【００１９】
同様に、サーバ装置１０１Ｙにおいて、プログラム名が「Ｄ」であるアプリケーションプログラム２０１とプログラム名が「Ｅ」であるアプリケーションプログラム２０１が動作している。この例で、プログラム名が「Ｄ」であるアプリケーションプログラム２０１を、アプリケーションプログラム２０１Ｄと記す。同様に、プログラム名が「Ｅ」であるアプリケーションプログラム２０１を、アプリケーションプログラム２０１Ｅと記す。
【００２０】
アプリケーションプログラム２０１Ｄは、データ名が「ｄ」であるログデータを出力する。アプリケーションプログラム２０１Ｅは、データ名が「ｅ」であるログデータを出力する。この例で、データ名が「ｄ」であるログデータを、ログデータｄと記す。同様に、データ名が「ｅ」であるログデータを、ログデータｅと記す。
【００２１】
ログデータｄ及びログデータｅは、サーバ装置１０１Ｙに設けられたログ領域２０９に格納されている。この例で、サーバ装置１０１Ｙに設けられたログ領域２０９を、ログ領域２０９Ｙと記す。ログ領域２０９Ｙのフォルダ名は、「ＳｅｒｖｅｒＹ」である。
【００２２】
同様に、サーバ装置１０１Ｚにおいて、プログラム名が「Ｆ」であるアプリケーションプログラム２０１とプログラム名が「Ｇ」であるアプリケーションプログラム２０１が動作している。この例で、プログラム名が「Ｆ」であるアプリケーションプログラム２０１を、アプリケーションプログラム２０１Ｆと記す。同様に、プログラム名が「Ｇ」であるアプリケーションプログラム２０１を、アプリケーションプログラム２０１Ｇと記す。
【００２３】
アプリケーションプログラム２０１Ｆは、データ名が「ｆ」であるログデータを出力する。アプリケーションプログラム２０１Ｇは、データ名が「ｇ」であるログデータを出力する。この例で、データ名が「ｆ」であるログデータを、ログデータｆと記す。同様に、データ名が「ｇ」であるログデータを、ログデータｇと記す。
【００２４】
ログデータｆ及びログデータｇは、サーバ装置１０１Ｚに設けられたログ領域２０９に格納されている。この例で、サーバ装置１０１Ｚに設けられたログ領域２０９を、ログ領域２０９Ｚと記す。ログ領域２０９Ｚのフォルダ名は、「ＳｅｒｖｅｒＺ」である。
【００２５】
ログ領域２０９Ｘ、ログ領域２０９Ｙ及びログ領域２０９Ｚは、夫々サーバ装置１０１Ｘ、サーバ装置１０１Ｙ及びサーバ装置１０１Ｚにおいて共用される。つまり、サーバ装置１０１Ｘで動作するアプリケーションプログラム２０１Ａ、アプリケーションプログラム２０１Ｂ及びアプリケーションプログラム２０１Ｃは、ネットワークファイルシステム２１１を介してパス「／ＳｅｒｖｅｒＹ」に対する操作を行うことによって、サーバ装置１０１Ｙのログ領域２０９Ｙにアクセスする。同様に、サーバ装置１０１Ｘで動作するアプリケーションプログラム２０１Ａ、アプリケーションプログラム２０１Ｂ及びアプリケーションプログラム２０１Ｃは、ネットワークファイルシステム２１１を介してパス「／ＳｅｒｖｅｒＺ」に対する操作を行うことによって、サーバ装置１０１Ｚのログ領域２０９Ｚにアクセスする。
【００２６】
同様に、サーバ装置１０１Ｙで動作するアプリケーションプログラム２０１Ｄ及びアプリケーションプログラム２０１Ｅは、ネットワークファイルシステム２１１を介してパス「／ＳｅｒｖｅｒＸ」に対する操作を行うことによって、サーバ装置１０１Ｘのログ領域２０９Ｘにアクセスする。同様に、サーバ装置１０１Ｙで動作するアプリケーションプログラム２０１Ｄ及びアプリケーションプログラム２０１Ｅは、ネットワークファイルシステム２１１を介してパス「／ＳｅｒｖｅｒＺ」に対する操作を行うことによって、サーバ装置１０１Ｚのログ領域２０９Ｚにアクセスする。
【００２７】
同様に、サーバ装置１０１Ｚで動作するアプリケーションプログラム２０１Ｆ及びアプリケーションプログラム２０１Ｇは、ネットワークファイルシステム２１１を介してパス「／ＳｅｒｖｅｒＸ」に対する操作を行うことによって、サーバ装置１０１Ｘのログ領域２０９Ｘにアクセスする。同様に、サーバ装置１０１Ｚで動作するアプリケーションプログラム２０１Ｆ及びアプリケーションプログラム２０１Ｇは、ネットワークファイルシステム２１１を介してパス「／ＳｅｒｖｅｒＹ」に対する操作を行うことによって、サーバ装置１０１Ｙのログ領域２０９Ｙにアクセスする。
【００２８】
図３は、各アプリケーションプログラム２０１が出力するログデータが、当該アプリケーションプログラム２０１が動作しているサーバ装置１０１に設けられているログ領域２０９に格納される様子を示している。つまり、アプリケーションプログラム２０１と、そのアプリケーションプログラム２０１が出力するログデータは、同じサーバ装置１０１に存在する。
【００２９】
但し、各アプリケーションプログラム２０１が出力するログデータが、当該アプリケーションプログラム２０１が動作しているサーバ装置１０１以外のサーバ装置１０１に設けられているログ領域２０９に格納されるようにしてもよい。つまり、ログデータの格納場所は変更されることがある。例えば、図３でログ領域２０９Ｘに格納されているログデータａをログ領域２０９Ｙに移す場合には、アプリケーションプログラム２０１Ａは、ログデータａをパス「／ＳｅｒｖｅｒＸ」のフォルダからパス「／ＳｅｒｖｅｒＹ」のフォルダへ移動させる。ネットワークファイルシステム２１１は、ネットワークを介してログデータａをログ領域２０９Ｙへ移動する。その後、アプリケーションプログラム２０１Ａは、パス「／ＳｅｒｖｅｒＹ」のフォルダに設けられたログデータａに対してデータ操作を行う。他のアプリケーションプログラム２０１と他のログ領域２０９とにおいても、同様である。
【００３０】
尚、この例におけるログデータはファイル形式であるが、ログデータはファイル形式以外の形式であってもよい。また、この例における格納場所はフォルダ形式であるが、格納場所はフォルダ形式以外の形式であってもよい。
【００３１】
図４に、ログ管理部２０５のモジュール構成例を示す。ログ管理部２０５は、レコード追加部４０１、制限サイズ記憶部４０３、格納場所記憶部４０５、第１更新部４０７、第２更新部４０９及びレコード削除部４１１を有して得る。
【００３２】
レコード追加部４０１は、アプリケーションプログラム２０１から受け付けた記録内容と記録日時を含むレコードを、ログデータに追加する。以下では、ログデータにおけるレコードを、ログレコードという。制限サイズ記憶部４０３は、ログデータの制限サイズを記憶する。制限サイズは、出力されるログデータのサイズの最大値を示す。格納場所記憶部４０５は、ログデータの格納場所を記憶する。第１更新部４０７は、制限サイズ記憶部４０３に記憶されている制限サイズを更新し、余分なログレコードを削除する。第２更新部４０９は、格納場所記憶部４０５に記憶されている格納場所を更新する。レコード削除部４１１は、ログデータが制限サイズを超えていないかを確認し、制限サイズを超えている場合には最も古いログレコードを順次削除し、ログデータが制限サイズを超えないようにする。
【００３３】
上述したアプリケーションプログラム２０１、メイン処理部２０３、ログ管理部２０５、ネットワークファイルシステム２１１、レコード追加部４０１、第１更新部４０７、第２更新部４０９及びレコード削除部４１１は、ハードウエア資源（例えば、図３１）と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。
【００３４】
上述した記憶部２０７、制限サイズ記憶部４０３及び格納場所記憶部４０５は、ハードウエア資源（例えば、図３１）を用いて実現される。
【００３５】
以下、ログ管理部２０５における４つの処理について説明する。これらの４つの処理は、並行する。
【００３６】
まず、レコード削除処理について説明する。図５に、レコード削除処理フローの例を示す。レコード削除部４１１は、ログデータが制限サイズを超えているか否かを判定する（Ｓ５０１）。ログデータが制限サイズを超えていると判定した場合には、レコード削除部４１１は、ログデータに設定されている記録日時のうち、最も古い記録日時を特定する（Ｓ５０３）。レコード削除部４１１は、当該記録日時が設定されているログレコードを削除する（Ｓ５０５）。そして、Ｓ５０１の処理に戻って、上述した処理を繰り返す。尚、ログレコードを削除すると、ログデータのサイズはログレコードに相当するデータ量だけ小さくなるものとする。
【００３７】
一方、Ｓ５０１においてログデータが制限サイズを超えていないと判定した場合には、Ｓ５０１の処理を繰り返す。
【００３８】
次に、レコード追加処理について説明する。図６に、レコード追加処理フローの例を示す。レコード追加部４０１は、待機して、メイン処理部２０３から記録内容を受け付ける（Ｓ６０１）。記録内容を受け付けると、レコード追加部４０１は、現在のログデータのサイズを特定する（Ｓ６０３）。例えばログデータがファイル形式であれば、レコード追加部４０１は、格納場所記憶部４０５から格納場所を読み、当該格納場所に格納されているログデータのファイルサイズをネットワークファイルシステム２１１から取得する。次に、レコード追加部４０１は、制限サイズ記憶部４０３から制限サイズを読み、現在のログデータのサイズにレコードサイズを加えると制限サイズを超えるか否かを判定する（Ｓ６０５）。
【００３９】
現在のログデータのサイズにレコードサイズを加えると制限サイズを超えると判定した場合には、レコード追加部４０１は、ログデータに設定されている記録日時のうち、最も古い記録日時を特定し、最も古い記録日時が設定されているログレコードを削除する（Ｓ６０７）。そして、Ｓ６０９の処理に移る。
【００４０】
一方、現在のログデータのサイズにレコードサイズを加えても制限サイズを超えないと判定した場合には、そのままＳ６０９の処理に移る。
【００４１】
Ｓ６０９において、レコード追加部４０１は、現在の日時を特定する。特定された現在の日時は、新しいログレコードの記録日時として用いられる。レコード追加部４０１は、格納場所記憶部４０５から格納場所を読み、当該格納場所に格納されているログデータに新しいログレコードを追加する（Ｓ６１１）。レコード追加部４０１は、新しいログレコードに記録日時と記録内容を設定する（Ｓ６１３）。そして、Ｓ６０１に戻って上述した処理を繰り返す。
【００４２】
次に、制限サイズを更新し、余分なログレコードを削除する第１更新処理について説明する。図７に、第１更新処理フローの例を示す。第１更新部４０７は、待機して、管理装置１０３から制限サイズを受け付ける（Ｓ７０１）。そして、第１更新部４０７は、制限サイズ記憶部４０３に記憶されている制限サイズを更新する（Ｓ７０３）。
【００４３】
第１更新部４０７は、図６に示したＳ６０３の場合と同様に、現在のログデータサイズを特定する（Ｓ７０５）。第１更新部４０７は、現在のログデータサイズが制限サイズを超えているか否かを判定する（Ｓ７０７）。現在のログデータサイズが制限サイズを超えていないと判定した場合には、Ｓ７０１の処理に戻って、上述した処理を繰り返す。
【００４４】
一方、現在のログデータサイズが制限サイズを超えていると判定した場合には、第１更新部４０７は、削除するログレコードを選択する（Ｓ７０９）。具体的には、第１更新部４０７は、まず現在のログデータサイズと制限サイズとの差をログレコード長で除して、削除するログレコードの数を求める。そして、第１更新部４０７は、記録日時が古い順に当該ログレコード数のログレコードを抽出する。
【００４５】
そして、第１更新部４０７は、選択したログレコードを削除し（Ｓ７１１）、Ｓ７０１の処理に戻って、上述した処理を繰り返す。
【００４６】
最後に、格納場所を更新する第２更新処理について説明する。図８に、第２更新処理フローの例を示す。第２更新部４０９は、待機して、管理装置１０３から格納場所を示すデータ（例えば、パス）を受け付ける（Ｓ８０１）。そして、第２更新部４０９は、格納場所記憶部４０５に記憶されている格納場所を示すデータを更新する（Ｓ８０３）。更に、第２更新部４０９は、元の格納場所から新たな格納場所へログデータを移動する（Ｓ８０５）。例えば、第２更新部４０９は、元の格納場所であるフォルダから新たな格納場所であるフォルダへログデータのファイルを移動させる。
【００４７】
続いて、管理装置１０３について説明する。図９に、管理装置１０３のモジュール構成例を示す。管理装置１０３は、収集部９０１、制御部９０３、予測部９０５、確認部９１１、通知部９１９、プログラムテーブル記憶部９３１、サーバテーブル記憶部９３３及び使用率テーブル記憶部９３５を有している。
【００４８】
収集部９０１は、周期的に各アプリケーションプログラム２０１のＣＰＵ使用率を収集する。ＣＰＵ使用率は、アプリケーションプログラム２０１の動作量に相当する。制御部９０３は、管理装置１０３における処理を制御する。
【００４９】
予測部９０５は、周期的にアプリケーションプログラム２０１が出力するログデータのサイズを予測して、都度ログデータの制限サイズを更新する。予測部９０５は、第１算出部９０７及び第１変更部９０９を有している。第１算出部９０７は、次の周期におけるログデータの予測サイズを算出する。第１変更部９０９は、予測サイズに基づいて、アプリケーションプログラム２０１が出力するログデータの制限サイズを決定する。
【００５０】
確認部９１１は、ログ領域２０９にログデータが収まることを確認する。また、確認部９１１は、ログ領域２０９にログデータが収まらない場合の対処も行う。確認部９１１は、第２算出部９１３、第２変更部９１５及び削減部９１７を有している。第２算出部９１３は、各サーバ装置１０１のログ領域２０９における空き容量を算出する。第２変更部９１５は、ログデータの格納場所を決定する。削減部９１７は、重要度の低いログデータを選定して、そのログデータの制限サイズを決定する。
【００５１】
通知部９１９は、アプリケーションプログラム２０１に、変更された制限サイズ及び変更された格納場所を通知する。
【００５２】
プログラムテーブル記憶部９３１は、アプリケーションプログラム２０１に関するデータが設定されているプログラムテーブルを記憶する。プログラムテーブルについては、図１０を用いて後述する。サーバテーブル記憶部９３３は、サーバ装置１０１に関するデータが設定されているサーバテーブルを記憶する。サーバテーブルについては、図１１を用いて後述する。使用率テーブル記憶部９３５は、アプリケーションプログラム２０１のＣＰＵ使用率を記録するためのＣＰＵ使用率テーブルを記憶する。ＣＰＵ使用率テーブルについては、図１２を用いて後述する。
【００５３】
図１０に、プログラムテーブルの例を示す。プログラムテーブルは、各アプリケーションプログラム２０１に対応するレコードを有している。以下では、プログラムテーブルにおけるレコードをプログラムレコードという。プログラムレコードは、プログラム名を設定するためのフィールドと、サーバ装置名を設定するためのフィールドと、ログデータ名を設定するためのフィールドと、重要度を設定するためのフィールドと、格納場所を設定するためのフィールドとを有している。
【００５４】
プログラム名は、当該アプリケーションプログラム２０１の名前である。サーバ装置名は、当該アプリケーションプログラム２０１が動作しているサーバ装置１０１を指す。ログデータ名は、当該アプリケーションプログラム２０１が出力するログデータの名前である。
【００５５】
重要度は、当該アプリケーションプログラム２０１が出力するログデータの重要さの程度を示す。この例では、「１」乃至「５」の値が重要度に設定される。値が小さいほど、重要度が低く、値が大きいほど、重要度が高い。格納場所は、当該アプリケーションプログラム２０１が出力するログデータが格納される場所を指す。この例の場合、サーバ装置１０１Ｘに設けられたログ領域２０９Ｘのパス「／ＳｅｒｖｅｒＸ」、サーバ装置１０１Ｙに設けられたログ領域２０９Ｙのパス「／ＳｅｒｖｅｒＹ」又はサーバ装置１０１Ｚに設けられたログ領域２０９Ｚのパス「／ＳｅｒｖｅｒＺ」が、格納場所に設定される。
【００５６】
更に、プログラムレコードは、標準出力レートを設定するためのフィールドと、ＣＰＵ使用率の標準値を設定するためのフィールドと、保存時間を設定するためのフィールドと、余裕量を設定するためのフィールドと、標準サイズを設定するためのフィールドと、最小サイズを設定するためのフィールドと、制限サイズを設定するためのフィールドと、第１通知フラグのフィールドと、第２通知フラグのフィールドと、第３通知フラグのフィールドとを有している。
【００５７】
標準出力レートは、プログラムレコードに係るアプリケーションプログラム２０１がログデータにデータを追加するレートについての想定値である。この例における標準出力レートの単位は、１時間当たりのキロバイト（ＫＢ／ｈ）である。
【００５８】
ＣＰＵ使用率の標準値は、プログラムレコードに係るアプリケーションプログラム２０１がサーバ装置１０１のＣＰＵを使用する率の想定値である。この例におけるＣＰＵ使用率の標準値の単位は、パーセント（％）である。
【００５９】
保存時間は、上述した通り、ログデータにおいて記録内容を保存する期間の長さである。この例における保存時間の単位は、時間（ｈ）である。
【００６０】
余裕量は、標準サイズに余裕を与えるために加えられる容量である。この例における余裕量の単位は、キロバイト（ＫＢ）である。
【００６１】
標準サイズは、プログラムレコードに係るアプリケーションプログラム２０１が出力するログデータのサイズについて、想定された値である。通常は、分散システムの設計段階において運用状態を想定し、ログデータによる解析のために充分な情報を得るための標準サイズが決定される。この例で、標準サイズは、標準出力レート×保存時間＋余裕量の式によって算出される。この例における標準サイズの単位は、キロバイト（ＫＢ）である。
【００６２】
最小サイズは、プログラムレコードに係るアプリケーションプログラム２０１が出力するログデータのサイズについて、保証される最小の値である。この例における最小サイズの単位は、キロバイト（ＫＢ）である。
【００６３】
制限サイズは、プログラムレコードに係るアプリケーションプログラム２０１が動作している時点において出力し得る最大のログデータのサイズである。制限サイズは、運用状況に応じて都度更新される。この例における制限サイズの単位は、キロバイト（ＫＢ）である。
【００６４】
第１通知フラグは、プログラムレコードに係るアプリケーションプログラム２０１に、後述する予測処理によって変更された制限サイズを通知すべきか否かを示す。プログラムレコードに係るアプリケーションプログラム２０１に当該制限サイズを通知すべき状況において、第１通知フラグに「ＯＮ」が設定される。プログラムレコードに係るアプリケーションプログラム２０１に当該制限サイズを通知すべき状況でなければ、第１通知フラグに「ＯＦＦ」が設定される。尚、第１通知フラグの初期値は、「ＯＦＦ」である。
【００６５】
第２通知フラグは、プログラムレコードに係るアプリケーションプログラム２０１に格納場所を通知すべきか否かを示す。プログラムレコードに係るアプリケーションプログラム２０１に格納場所を通知すべき状況において、第２通知フラグに「ＯＮ」が設定される。プログラムレコードに係るアプリケーションプログラム２０１に格納場所を通知すべき状況でなければ、第２通知フラグに「ＯＦＦ」が設定される。尚、第２通知フラグの初期値は、「ＯＦＦ」である。
【００６６】
第３通知フラグは、プログラムレコードに係るアプリケーションプログラム２０１に、後述する削減処理によって変更された制限サイズを通知すべきか否かを示す。プログラムレコードに係るアプリケーションプログラム２０１に当該制限サイズを通知すべき状況において、第３通知フラグに「ＯＮ」が設定される。プログラムレコードに係るアプリケーションプログラム２０１に当該制限サイズを通知すべき状況でなければ、第３通知フラグに「ＯＦＦ」が設定される。尚、第３通知フラグの初期値は、「ＯＦＦ」である。
【００６７】
この例における第１プログラムレコードは、名前が「Ａ」であるアプリケーションプログラム２０１Ａが、サーバ装置１０１Ｘで動作し、名前が「ａ」であるログデータａを出力することを示している。また、第１プログラムレコードは、ログデータａの重要度は「５」であり、ログデータａがパス「／ＳｅｒｖｅｒＸ」のフォルダに格納されていることを示している。
【００６８】
更に、この例における第１プログラムレコードによれば、アプリケーションプログラム２０１Ａは、通常「４８０」（ＫＢ／ｈ）のレートでログデータａにデータを追加すると想定され、サーバ装置１０１ＸにおいてＣＰＵ使用率「８」パーセントで動作すると想定されている。更に、ログデータａは、通常「２５０００」（ＫＢ）（余裕量「１０００」ＫＢを含む。）以下のサイズで足りると想定されている。
【００６９】
そして、第１プログラムレコードは、ログデータａには、少なくとも「１０００」（ＫＢ）のサイズが割り当てられることを示している。第１通知フラグ乃至第３通知フラグには、いずれも初期値「ＯＦＦ」が設定されているので、アプリケーションプログラム２０１Ａに対して通知を行うべき状況ではないことを示している。
【００７０】
同じく第２プログラムレコードは、名前が「Ｂ」であるアプリケーションプログラム２０１Ｂが、サーバ装置１０１Ｘで動作し、名前が「ｂ」であるログデータｂを出力することを示している。また、第２プログラムレコードは、ログデータｂの重要度は「３」であり、ログデータｂがパス「／ＳｅｒｖｅｒＸ」のフォルダに格納されていることを示している。
【００７１】
更に、この例における第２プログラムレコードによれば、アプリケーションプログラム２０１Ｂは、通常「３６０」（ＫＢ／ｈ）のレートでログデータｂにデータを追加すると想定され、サーバ装置１０１ＸにおいてＣＰＵ使用率「５」パーセントで動作すると想定されている。更に、ログデータｂは、通常「１９０００」（ＫＢ）（余裕量「１０００」ＫＢを含む。）以下のサイズで足りると想定されている。
【００７２】
そして、第２プログラムレコードは、ログデータｂには、少なくとも「１０００」（ＫＢ）のサイズが割り当てられることを示している。第１通知フラグ乃至第３通知フラグには、いずれも初期値「ＯＦＦ」が設定されているので、アプリケーションプログラム２０１Ｂに対して通知を行うべき状況ではないことを示している。
【００７３】
図１１に、サーバテーブルの例を示す。サーバテーブルは、各サーバ装置１０１に対応するレコードを有している。以下では、サーバテーブルにおけるレコードをサーバレコードという。サーバレコードは、サーバ装置名を設定するためのフィールドと、ログ領域サイズを設定するためのフィールドと、空き容量を設定するためのフィールドとを有している。
【００７４】
サーバ装置名は、当該サーバ装置１０１の名前である。ログ領域サイズは、当該サーバ装置１０１に設けられたログ領域２０９のサイズである。この例におけるログ領域サイズの単位は、キロバイト（ＫＢ）である。空き容量は、当該サーバ装置１０１に設けられたログ領域２０９における空き容量を指す。空き容量は、運用状況に応じて変化する。この例における空き容量の単位は、キロバイト（ＫＢ）である。
【００７５】
この例における第１サーバレコードは、名前が「Ｘ」であるサーバ装置１０１Ｘに設けられたログ領域２０９Ｘのサイズが「５５０００」（ＫＢ）であることを示している。更に、第１サーバレコードは、この時点における当該ログ領域２０９の空き容量は、「０」（ＫＢ）であることを示している。
【００７６】
同じく第２サーバレコードは、名前が「Ｙ」であるサーバ装置１０１Ｙに設けられたログ領域２０９Ｙのサイズが「５００００」（ＫＢ）であることを示している。更に、第２サーバレコードは、この時点における当該ログ領域２０９Ｙの空き容量は、「０」（ＫＢ）であることを示している。
【００７７】
図１２に、ＣＰＵ使用率テーブルの例を示す。この例では、各アプリケーションプログラム２０１のＣＰＵ使用率が取得されるタイミングで、ＣＰＵ使用率テーブルに新たなレコードが追加される。以下では、ＣＰＵ使用率テーブルにおけるレコードを使用率レコードという。使用率レコードは、取得日時を設定するためのフィールドと、各アプリケーションプログラム２０１のＣＰＵ使用率を設定するためのフィールドとを有している。この例では、１分の間隔でＣＰＵ使用率が記録されている。この例におけるＣＰＵ使用率の単位は、パーセント（％）である。
【００７８】
この例における第１使用率レコードは、２０１４年８月１日の０時０分０秒において、アプリケーションプログラム２０１ａのＣＰＵ使用率が「８．５」（％）であったことを示し、同じくアプリケーションプログラム２０１ｂのＣＰＵ使用率が「４．５」（％）であったことを示している。
【００７９】
同じく第２使用率レコードは、２０１４年８月１日の０時１分０秒において、アプリケーションプログラム２０１ａのＣＰＵ使用率が「８．５」（％）であったことを示し、同じくアプリケーションプログラム２０１ｂのＣＰＵ使用率が「４．５」（％）であったことを示している。
【００８０】
上述した収集部９０１、制御部９０３、予測部９０５、第１算出部９０７、第１変更部９０９、確認部９１１、第２算出部９１３、第２変更部９１５、削減部９１７及び通知部９１９は、ハードウエア資源（例えば、図３１）と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。
【００８１】
上述したプログラムテーブル記憶部９３１、サーバテーブル記憶部９３３及び使用率テーブル記憶部９３５は、ハードウエア資源（例えば、図３１）を用いて実現される。
【００８２】
続いて、管理装置１０３における処理について説明する。図１３に、収集処理フローの例を示す。管理装置１０３において周期的に各アプリケーションプログラム２０１のＣＰＵ使用率を収集する処理は、後述するメイン処理と並行する。
【００８３】
収集部９０１は、所定時間の経過を待つ（Ｓ１３０１）。この例における所定時間は１分である。つまり、１分おきにＳ１３０３乃至Ｓ１３０７の処理が実行される。
【００８４】
収集部９０１は、プログラムテーブルで管理されているアプリケーションプログラム２０１を１つ特定する（Ｓ１３０３）。収集部９０１は、特定したアプリケーションプログラム２０１のＣＰＵ使用率を取得し、取得日時に対応付けてＣＰＵ使用率をＣＰＵ使用率テーブルに記憶する（Ｓ１３０５）。収集部９０１は、例えば特定したアプリケーションプログラム２０１が動作しているサーバ装置１０１のオペレーティングシステムからアプリケーションプログラム２０１のＣＰＵ使用率を取得する。
【００８５】
そして、収集部９０１は、未処理のアプリケーションプログラム２０１があるか否かを判定する（Ｓ１３０７）。未処理のアプリケーションプログラム２０１があると判定した場合には、Ｓ１３０３に示した処理に戻って、上述した処理を繰り返す。一方、未処理のアプリケーションプログラム２０１がないと判定した場合には、Ｓ１３０１に示した処理に戻って、上述した処理を繰り返す。
【００８６】
次に、管理装置１０３におけるメイン処理について説明する。図１４に、メイン処理フローの例を示す。制御部９０３は、周期的にログデータの制限サイズを見直すために、１周期に相当する時間の経過を待つ（Ｓ１４０１）。この例における１周期は、１時間である。つまり、１時間おきにＳ１４０３乃至Ｓ１４１１の処理が実行される。
【００８７】
制御部９０３は、プログラムテーブルで管理されているアプリケーションプログラム２０１を１つ特定する（Ｓ１４０３）。予測部９０５は、特定したアプリケーションプログラム２０１が出力するログデータに関する予測処理を実行する（Ｓ１４０５）。予測処理では、次の周期が終了する時点におけるログデータのサイズを予測する。
【００８８】
ここで、ログデータのサイズについて説明する。図１５に、ログデータの構成例を示す。左側のブロックは、現時点におけるログデータの構成を示している。横幅は、ログレコード長を示している。縦方向は、ログレコード数を示している。横長の矩形は、ログレコードを模式的に示している。上述した通り、ログレコードは、記録日時と記録内容とを含んでいる。この例では、上方向が新しく、下方向が古くなるように、時系列にログレコードが配置されているものと想定する。
【００８９】
そして、記録日時を周期によって区分けすると、ログレコードは図１５の矢印で示した各範囲に分けられる。この例で、保存期間は５０周期を含む。但し、周期の数は、５０に限らない。
【００９０】
範囲１５０１に含まれるログレコードは、最新の周期において追加されたものである。最新の周期は、保存期間に含まれる周期のうち最後の周期に相当する。範囲１５０２に含まれるログレコードは、１回前の周期において追加されたものである。範囲１５０３に含まれるログレコードは、２回前の周期において追加されたものである。途中の周期は、省略する。範囲１５４９に含まれるログレコードは、４８回前の周期において追加されたものである。範囲１５５０に含まれるログレコードは、４９回前の周期において追加されたものである。つまり、この例で最も古い４９回前の周期は、保存期間に含まれる周期のうち最初の周期に相当する。
【００９１】
そして、最も古い周期において追加された範囲１５５０のログレコードは、次の周期において保存期間を超えるので、消去される。右側のブロックは、次の周期が終了する時点におけるログデータの構成を示している。次の周期では、新たなログレコードが追加される。範囲１５００に示したログレコードは、次の周期において追加されると想定されるものである。
【００９２】
以下では、現在のログデータのうち、最も古い周期に追加されたログレコードを除くデータのサイズを、残存サイズという。本実施の形態では、次の周期で追加されるデータ量を予測して、その予測値を残存サイズに加えて、次の周期が終了する時点におけるログデータの予測サイズを求める。
【００９３】
図１５の例で、残存サイズは、現在のログデータのサイズから、範囲１５５０のログレコードの数にログレコード長を乗じた積を引いた値である。予測値は、図１５に示した範囲１５５０に含まれるログレコードの数にログレコード長を乗じた値である。
【００９４】
以下、予測処理について説明する。図１６に、予測処理フローの例を示す。第１算出部９０７は、予測処理において３種類の予測サイズを算出し、３種類の予測サイズのうち最大のサイズの値を選択する。
【００９５】
まず、第１算出部９０７は、第１サイズ算出処理を実行する（Ｓ１６０１）。第１サイズ算出処理では、ＣＰＵ使用率に基づくログデータサイズの予測値（以下、第１予測サイズという。）が算出される。第１サイズ算出処理については、図１７を用いて後述する。
【００９６】
次に、第１算出部９０７は、第２サイズ算出処理を実行する（Ｓ１６０３）。第２サイズ算出処理では、最新周期と同じ量のデータが次の周期において追加されるものと想定して、ログデータサイズの予測値（以下、第２予測サイズという。）を算出する。第２サイズ算出処理については、図１８を用いて後述する。
【００９７】
更に、第１算出部９０７は、第３サイズ算出処理を実行する（Ｓ１６０５）。第３サイズ算出処理では、標準追加量のデータが次の周期において追加されるものと想定して、ログデータサイズの予測値（以下、第３予測サイズという。）を算出する。標準追加量は、１周期において追加されるデータ量の想定値である。第３サイズ算出処理については、図１９を用いて後述する。
【００９８】
第１変更部９０９は、第１サイズ算出処理（Ｓ１６０１）で算出した第１予測サイズ、第２サイズ算出処理（Ｓ１６０３）で算出した第２予測サイズ及び第３サイズ算出処理（Ｓ１６０５）で算出した第３予測サイズのうち、最大の予測サイズを選択する（Ｓ１６０７）。
【００９９】
第１変更部９０９は、選択した最大の予測サイズに基づいて、図１４のＳ１４０３で特定したアプリケーションプログラム２０１が出力するログデータの制限サイズを変更する（Ｓ１６０９）。具体的には、第１変更部９０９は、プログラムテーブルにおける当該アプリケーションプログラム２０１のレコードの制限サイズに、Ｓ１６０７で選択した最大のサイズの値を設定する。
【０１００】
この例における第１変更部９０９は、第１予測サイズ乃至第３予測サイズのうち最大のサイズの値を制限サイズに設定するが、第１予測サイズ及び第２予測サイズのうち大きい方のサイズの値を制限サイズに設定するようにしてもよい。あるいは、第１変更部９０９は、第２予測サイズ及び第３予測サイズのうち大きい方のサイズの値を制限サイズに設定するようにしてもよい。あるいは、第１変更部９０９は、第１予測サイズ及び第３予測サイズのうち大きい方のサイズの値を制限サイズに設定するようにしてもよい。あるいは、第１変更部９０９は、第１予測サイズの値を制限サイズに設定するようにしてもよい。あるいは、第１変更部９０９は、第２予測サイズの値を制限サイズに設定するようにしてもよい。あるいは、第１変更部９０９は、第３予測サイズの値を制限サイズに設定するようにしてもよい。
【０１０１】
第１変更部９０９は、プログラムテーブルにおいて当該アプリケーションプログラム２０１のレコードの第１通知フラグに「ＯＮ」を設定する（Ｓ１６１１）。但し、制限サイズが変わらない場合には、第１変更部９０９は、第１通知フラグを「ＯＦＦ」のままとする。
【０１０２】
そして、図１６に示した予測処理を終えると、図１４に示したＳ１４０７の処理に移る。
【０１０３】
続いて、上述した第１サイズ算出処理乃至第３サイズ算出処理について、順次説明する。図１７に、第１サイズ算出処理フローの例を示す。第１算出部９０７は、図１４のＳ１４０３において特定したアプリケーションプログラム２０１が出力するログデータの現在のサイズを取得する（Ｓ１７０１）。具体的には、第１算出部９０７は、プログラムテーブルから、当該アプリケーションプログラム２０１に対応する格納場所とログデータ名とを取得する。そして、第１算出部９０７は、例えばいずれかのサーバ装置１０１におけるネットワークファイルシステム２１１に格納場所とログデータ名とを含むパスを渡して、ログデータのファイルサイズを取得する。
【０１０４】
第１算出部９０７は、当該ログデータについて、現在の保存期間のうち最も古い周期における追加量を算出する（Ｓ１７０３）。この例では、５０時間前から４９時間前までの期間が最も古い周期に相当する。従って、５０時間前から４９時間前までの期間に含まれる記録日時が設定されているログレコードを抽出し、抽出したログレコードのレコード長を合計することによって、最も古い周期における追加量が算出される。最も古い周期は、次の周期において保存期間から外れる。つまり、ここで算出された追加量は、次の周期において削減されるデータの量に相当する。
【０１０５】
そして、第１算出部９０７は、現在のログデータサイズから最も古い周期における追加量を差し引いて、残存データサイズを算出する（Ｓ１７０５）。
【０１０６】
次に、第１算出部９０７は、最新周期におけるＣＰＵ使用率を特定する（Ｓ１７０７）。第１算出部９０７は、例えば、ＣＰＵ使用率テーブルから最新周期に含まれる取得日時に対応するＣＰＵ使用率を抽出し、これらのＣＰＵ使用率の平均を算出する。あるいは、第１算出部９０７は、最新のＣＰＵ使用率を用いるようにしてもよい。
【０１０７】
第１算出部９０７は、プログラムテーブルから、図１４のＳ１４０３で特定したアプリケーションプログラム２０１におけるＣＰＵ使用率の標準値を取得する（Ｓ１７０９）。第１算出部９０７は、Ｓ１７０７で特定した最新周期におけるＣＰＵ使用率をＣＰＵ使用率の標準値で除して、ＣＰＵ使用率の比を算出する（Ｓ１７１１）。
【０１０８】
第１算出部９０７は、プログラムテーブルから、図１４のＳ１４０３で特定したアプリケーションプログラム２０１のレコードにおける標準出力レートを読み、１周期に相当する時間に当該標準出力レートを乗じて１周期における標準追加量を算出する（Ｓ１７１３）。あるいは、プログラムテーブルにアプリケーションプログラム２０１の標準追加量を予め設定しておき、第１算出部９０７は、Ｓ１７１３において当該標準追加量を読むようにしてもよい。
【０１０９】
第１算出部９０７は、１周期における標準追加量にＣＰＵ使用率の比を乗じて、次周期における追加量についての第１予測値を求める（Ｓ１７１５）。
【０１１０】
第１算出部９０７は、Ｓ１７０５で算出した残存データサイズに第１予測値を加えて、第１予測サイズを得る（Ｓ１７１７）。第１サイズ算出処理を終えると、図１６に示したＳ１６０３の処理に移る。
【０１１１】
続いて、第２サイズ算出処理について説明する。図１８に、第２サイズ算出処理フローの例を示す。第１算出部９０７は、最新周期における追加量を特定する（Ｓ１８０１）。具体的には、第１算出部９０７は、図１４のＳ１４０３で特定したアプリケーションプログラム２０１のログデータにおいて最新周期に含まれる記録日時が設定されているログレコードを抽出し、抽出したログレコードのレコード長を合計することによって、最新周期における追加量を求める。最新周期における追加量は、次周期における追加量についての第２予測値に相当する。
【０１１２】
第１算出部９０７は、図１７のＳ１７０５で算出した残存データサイズに第２予測値を加えて、第２予測サイズを得る（Ｓ１８０３）。第２サイズ算出処理を終えると、図１６に示したＳ１６０５の処理に移る。
【０１１３】
続いて、第３サイズ算出処理について説明する。図１９に、第３サイズ算出処理フローの例を示す。第１算出部９０７は、Ｓ１７１３の処理の場合と同様に、図１４のＳ１４０３で特定したアプリケーションプログラム２０１における標準追加量を算出する（Ｓ１９０１）。第１算出部９０７は、Ｓ１７１３の処理で求めた標準追加量を用いるようにしてもよい。標準追加量は、次周期における追加量についての第３予測値に相当する。
【０１１４】
第１算出部９０７は、図１７のＳ１７０５で算出した残存データサイズに第３予測値を加えて、第３予測サイズを得る（Ｓ１９０３）。第３サイズ算出処理を終えると、図１６に示したＳ１６０７の処理に移る。以上で、予測処理についての説明を終える。
【０１１５】
図１４の説明に戻る。Ｓ１４０５に示した予測処理の実行を終えると、制御部９０３は、未処理のアプリケーションプログラム２０１があるか否かを判定する（Ｓ１４０７）。未処理のアプリケーションプログラム２０１があると判定した場合には、Ｓ１４０３に戻って、上述した処理を繰り返す。一方、未処理のアプリケーションプログラム２０１がないと判定した場合には、確認部９１１は、確認処理を実行する（Ｓ１４０９）。
【０１１６】
確認処理について詳述する前に、確認処理の概要について説明する。図２０の上段は、現状において、サーバ装置１０１Ｘのログ領域２０９Ｘに、ログデータａ、ログデータｂ及びログデータｃが収まっている様子を示している。このとき、ログデータａ、ログデータｂ及びログデータｃのデータ量の合計は、ログ領域２０９Ｘの容量以下である。
【０１１７】
図２０の下段は、次の周期が終了する時点におけるログデータａ、ログデータｂ及びログデータｃのデータ量を示している。ログデータａは、次の周期においてデータ量が増えている。一方、ログデータｂは、次の周期においてデータ量が減っている。ログデータｃは、次の周期においてデータ量が変化していない。次の周期が終了する時点において、ログデータａ、ログデータｂ及びログデータｃのデータ量の合計は、上段に示したデータ量の合計と同じである。従って、サーバ装置１０１Ｘのログ領域２０９Ｘに、ログデータａ、ログデータｂ及びログデータｃが収まる。このように、次の周期においてログ領域２０９Ｘの容量が不足しないと予測される場合には、ログデータａ及びログデータｂの制限サイズを変更する処理を行えば足りる。
【０１１８】
確認処理では、このように次の周期においてログデータがログ領域２０９に収まることを確認する。但し、次の周期においてログデータがログ領域２０９に収まらないと判定した場合には、ログデータを他のログ領域２０９へ移動させる処理、あるいは重要度の低いログデータのサイズを制限する処理を行う。以下では、それらの処理について説明する。
【０１１９】
図２１に、図２０の例とは異なる予測結果の例を示す。図２１の上段は、図２０の上段と同様である。図２１の下段は、次の周期が終了する時点におけるログデータａ、ログデータｂ及びログデータｃのデータ量を示している。ログデータｂとログデータｃとは、次の周期においてデータ量が変化していない。但し、ログデータａは、次の周期においてデータ量が増えている。そして、ログデータａ、ログデータｂ及びログデータｃのデータ量の合計は、上段に示したデータ量の合計よりも大きい。その結果、サーバ装置１０１Ｘのログ領域２０９Ｘに、ログデータａ、ログデータｂ及びログデータｃが収まらない。このように、次の周期においてログ領域２０９Ｘの容量が不足すると予測される場合には、容量の不足を防ぐための処理を行う。
【０１２０】
図２２に、次の周期におけるサーバ装置１０１Ｙのログ領域２０９Ｙに関する予測結果と、サーバ装置１０１Ｚのログ領域２０９Ｚに関する予測結果とを示す。サーバ装置１０１Ｘのログ領域２０９Ｘに関する予測結果は、図２１の下段と同様である。
【０１２１】
図示したように、ログ領域２０９Ｚにおける空き容量は小さいが、ログ領域２０９Ｙにおける空き容量は大きい。そして、ログ領域２０９Ｙにおける空き容量は、次の周期の終了時点におけるログデータａのデータ量とログデータｂのデータ量のいずれよりも大きい。このような場合に、ログデータａ又はログデータｂを、ログ領域２０９Ｙに移動させれば、ログ領域２０９Ｘにおいて容量が不足する恐れは解消する。また、ログ領域２０９Ｙにおいても容量が不足する恐れは生じない。
【０１２２】
図２３に、次の周期における別の予測結果を示す。サーバ装置１０１Ｘのログ領域２０９Ｘに関する予測結果と、サーバ装置１０１Ｚのログ領域２０９Ｚに関する予測結果とは、図２２の場合と同様である。図２３に示した例では、ログ領域２０９Ｙにおける空き容量は小さい。従って、ログデータａ、ログデータｂ及びログデータｃのいずれも、ログ領域２０９Ｙ又はログ領域２０９Ｚに収まらない。このように、ログデータの移動によって、ログ領域２０９Ｘにおける容量不足の恐れが解消されない場合には、重要度の低いログデータのサイズを削減することによって、空き容量を増やす。
【０１２３】
図２４に、重要度の低いログデータのサイズを削減する例を示す。この例では、ログデータｃの重要度が低いものとする。そして、重要度が低いログデータｃのサイズが削減されている。他のログデータのサイズは、図２３の場合と同様である。
【０１２４】
ログデータａ、ログデータｂ及びログデータｃのデータ量の合計は、ログ領域２０９Ｘの容量よりも小さい。その結果、ログ領域２０９Ｘにおける容量不足の恐れは解消する。この例では、重要度の低いログデータｃのサイズを削減することによって、ログデータが残らずいずれかのログ領域２０９に収まるようになる。
【０１２５】
図２５に、重要度の低いログデータのサイズを削減する別の例を示す。この例では、ログデータｇの重要度が低いものとする。そして、重要度が低いログデータｇのサイズが削減されている。他のログデータのサイズは、図２３の場合と同様である。
【０１２６】
ログデータｇのサイズを削減した結果、ログ領域２０９Ｚにおける空き容量は大きくなる。そして、ログ領域２０９Ｚにおける空き容量は、次の周期の終了時点におけるログデータａのデータ量とログデータｂのデータ量のいずれよりも大きい。このような場合には、ログデータａ又はログデータｂを、ログ領域２０９Ｚに移動させれば、ログ領域２０９Ｘにおいて空き容量が不足する恐れは解消する。また、ログ領域２０９Ｚにおいても空き容量が不足する恐れは生じない。この例では、重要度の低いログデータｇのサイズを小さくし、更にログデータａ又はログデータｂをログ領域２０９Ｚに移動させることによって、ログデータがいずれかのログ領域２０９に収まるようになる。
【０１２７】
以下、確認処理について詳述する。図２６に、確認処理フローの例を示す。第２算出部９１３は、各サーバ装置１０１のログ領域２０９における空き容量を算出する（Ｓ２６０１）。以下では、サーバ装置１０１のログ領域２０９における空き容量を、サーバ装置１０１の空き容量ということもある。ここで算出された空き容量は、各サーバ装置１０１に対応するサーバレコードに設定される。そして、以下の処理でサーバ装置１０１の空き容量を用いる場合には、サーバレコードから当該空き容量が読み取られる。
【０１２８】
Ｓ２６０１の処理において、第２算出部９１３は、サーバテーブルで管理されているサーバ装置１０１毎に、当該サーバ装置１０１のログ領域２０９を格納場所に設定しているログデータの制限サイズの合計を求める。次に、第２算出部９１３は、サーバテーブルから当該サーバ装置１０１におけるログ領域サイズを取得する。そして、第２算出部９１３は、ログ領域サイズから制限サイズの合計を差し引くことによって、空き容量を求める。
【０１２９】
Ｓ２６０１に示した処理を終えると、確認部９１１は、サーバテーブルで管理されているサーバ装置１０１を１つ特定する（Ｓ２６０３）。第２変更部９１５は、当該サーバ装置１０１の空き容量が０以上であるか否かを判定する（Ｓ２６０５）。当該サーバ装置１０１の空き容量が０以上であると判定した場合には、当該サーバ装置１０１のログ領域２０９において容量が不足することはないと予測される。つまり、図２０に示した例で説明したように、ログデータの移動のような対処は要らない。従って、当該サーバ装置１０１に関する処理を終え、Ｓ２６１３の処理に移る。
【０１３０】
一方、Ｓ２６０５において、当該サーバ装置１０１の空き容量が０より小さいと判定した場合には、図２１に示した例のように、当該サーバ装置１０１のログ領域２０９において容量が不足する恐れがある。本実施の形態では、このようにログ領域２０９における容量不足が予測される場合に、まず変更処理が実行される。また、変更処理によっても容量不足の恐れが解消しない場合には、削減処理が実行される。
【０１３１】
第２変更部９１５は、変更処理を実行する（Ｓ２６０７）。変更処理では、当該サーバ装置１０１のログ領域２０９に格納されているログデータについて、格納場所の変更を試みる。
【０１３２】
図２７に、変更処理フローの例を示す。第２変更部９１５は、図２６のＳ２６０３で特定したサーバ装置１０１のログ領域２０９に格納されているログデータのうち、移動候補のログデータを１つ選定する（Ｓ２７０１）。具体的には、第２変更部９１５は、当該サーバ装置１０１に設けられているログ領域２０９を指すパスを格納場所に設定しているプログラムレコードのうち、１つのプログラムレコードに設定されているログデータ名を特定する。第２変更部９１５は、例えば、それらのプログラムレコードにおける制限サイズの値が小さい順に、ログデータを選定する。あるいは、第２変更部９１５は、それらのプログラムレコードにおける標準出力レートの値が小さい順に、ログデータを選定するようにしてもよい。あるいは、第２変更部９１５は、他の基準によってログデータを順次選定するようにしてもよい。
【０１３３】
次に、第２変更部９１５は、移動先候補のサーバ装置１０１を１つ選定する（Ｓ２７０３）。具体的には、第２変更部９１５は、サーバテーブルで管理されているサーバ装置１０１のうち、図２６のＳ２６０３で特定されたサーバ装置１０１以外のサーバ装置１０１を１つ特定する。例えば、第２変更部９１５は、空き容量が大きい順にサーバ装置１０１を選定する。あるいは、第２変更部９１５は、他の基準によってサーバ装置１０１を順次選定するようにしてもよい。
【０１３４】
第２変更部９１５は、移動候補のログデータの制限サイズが、移動先候補のサーバ装置１０１における空き容量以下であるか否かを判定する（Ｓ２７０５）。当該制限サイズが移動先候補のサーバ装置１０１における空き容量以下であると判定した場合（図２２に示したログデータａ又はログデータｂとログ領域２０９Ｙとの関係に相当する。）には、当該サーバ装置１０１がログデータの移動先となる。第２変更部９１５は、移動候補のログデータの格納場所を、移動先のサーバ装置１０１に設けられたログ領域２０９に変更する（Ｓ２７０７）。
【０１３５】
第２変更部９１５は、プログラムテーブルにおいて、移動候補のログデータに対応する第２通知フラグに「ＯＮ」を設定する（Ｓ２７０８）。
【０１３６】
第２変更部９１５は、移動先のサーバ装置１０１（Ｓ２７０３で選定したサーバ装置１０１）におけるログ領域２０９の空き容量を更新し、移動元のサーバ装置１０１（図２６のＳ２６０３で特定したサーバ装置１０１）におけるログ領域２０９の空き容量を更新する（Ｓ２７０９）。空き容量を算出する方法は、図２６のＳ２６０１に示した処理の場合と同様である。尚、第２変更部９１５は、現在の空き容量に移動候補のログデータの制限サイズを加えることによって、移動元のサーバ装置１０１におけるログ領域２０９の空き容量を更新してもよい。また、第２変更部９１５は、現在の空き容量から移動候補のログデータの制限サイズを引くことによって、移動先のサーバ装置１０１におけるログ領域２０９の空き容量を更新してもよい。
【０１３７】
第２変更部９１５は、移動元のサーバ装置１０１におけるログ領域２０９の空き容量が０以上であるか否かを判定する（Ｓ２７１１）。移動元のサーバ装置１０１におけるログ領域２０９の空き容量が０以上であると判定した場合には、変更処理を終えて、図２６に示したＳ２６０９の処理に移る。この場合は、上述したようにログデータの格納場所を他のサーバ装置１０１のログ領域２０９に変えることによって、図２６のＳ２６０３で特定したサーバ装置１０１のログ領域２０９における容量不足の恐れが解消したことになる。尚、この場合には、Ｓ２６０９における判定でＹＥＳルートを通る。
【０１３８】
一方、移動元のサーバ装置１０１におけるログ領域２０９の空き容量が０より小さいと判定した場合には、Ｓ２７１５の処理に移る。つまり、他のログデータについても、格納場所の変更が試みられる。
【０１３９】
Ｓ２７０５に示した処理の説明に戻る。Ｓ２７０５において、Ｓ２７０１で特定したログデータの制限サイズが移動先候補のサーバ装置１０１におけるログ領域２０９の空き容量より大きいと判定した場合（図２２に示したログ領域２０９Ｚの例、図２３に示したログ領域２０９Ｙの例及びログ領域２０９Ｚの例に相当する。）には、移動先候補のサーバ装置１０１へのログデータの移動は行わない。そして、第２変更部９１５は、未処理のサーバ装置１０１が残っているか否かを判定する（Ｓ２７１３）。未処理のサーバ装置１０１が残っていると判定した場合には、Ｓ２７０３の処理に戻って、上述した処理を繰り返す。つまり、他のサーバ装置１０１のログ領域２０９へのログデータの移動を試みる。
【０１４０】
一方、未処理のサーバ装置１０１が残っていないと判定した場合には、第２変更部９１５は、未処理のログデータが残っているか否かを判定する（Ｓ２７１５）。未処理のログデータが残っていると判定した場合には、Ｓ２７０１の処理に戻って、上述した処理を繰り返す。未処理のログデータが残っていないと判定した場合には、変更処理を終え、図２６に示したＳ２６０９の処理に移る。尚、Ｓ２７１５の判定処理におけるＮＯルートを通じて、変更処理を終える場合には、図２６のＳ２６０３で特定したサーバ装置１０１のログ領域２０９における容量不足の恐れは解消していない。尚、この場合には、Ｓ２６０９における判定でＮＯルートを通る。
【０１４１】
図２６の説明に戻る。削減部９１７は、Ｓ２６０３の処理において特定したサーバ装置１０１におけるログ領域２０９の空き容量が０以上であるか否かを判定する（Ｓ２６０９）。当該サーバ装置１０１におけるログ領域２０９の空き容量が０以上であると判定した場合には、当該サーバ装置１０１のログ領域２０９において容量が不足する恐れは解消したことを意味する。従って、当該サーバ装置１０１に関する処理を終え、Ｓ２６１３の処理に移る。
【０１４２】
一方、Ｓ２６０９において、当該サーバ装置１０１におけるログ領域２０９の空き容量が０より小さいと判定した場合には、図２３に示した例のように、変更処理によって当該サーバ装置１０１のログ領域２０９における容量不足の恐れが解消していない。この場合には、削減部９１７は、削減処理を実行する（Ｓ２６１１）。削減処理では、重要度の低いログデータについて、制限サイズが削減される。
【０１４３】
図２８に、削減処理フローの例を示す。削減部９１７は、図２６に示したＳ２６１１において削減処理を実行する回毎に、低い順に重要度を特定し、プログラムテーブルにおいて当該重要度が設定されているログデータを選定する（Ｓ２８０１）。
【０１４４】
この例では、１回目の削減処理では、優先度に「１」が設定されているログデータを選定し、２回目の削減処理では、優先度に「２」が設定されているログデータを選定する。以降、順に優先度に「３」が設定されているログデータ、優先度に「４」が設定されているログデータ、優先度に「５」が設定されているログデータが選定される。この処理で選定されたログデータは、データ量の削減対象となる。
【０１４５】
削減部９１７は、削減対象のログデータに対応する制限サイズを削減する（Ｓ２８０３）。この例では、プログラムレコードにおける当該ログデータの制限サイズに、当該ログデータの最小サイズが設定される。尚、削減部９１７は、プログラムテーブルにおける制限サイズから所定の削減量に相当する値を引くようにしてもよい。あるいは、削減部９１７は、制限サイズに所定の値を設定するようにしてもよい。また、削減部９１７は、制限サイズに「０」を設定するようにしてもよい。
【０１４６】
削減部９１７は、プログラムテーブルにおいて、削減対象のログデータを出力するアプリケーションプログラム２０１のプログラムレコードを特定し、当該プログラムレコードにおける第３通知フラグに「ＯＮ」を設定する（Ｓ２８０５）。このとき、当該プログラムレコードにおける第１通知フラグに「ＯＦＦ」を設定するようにしてもよい。第１通知フラグあるいは第３通知フラグのいずれかに「ＯＮ」が設定されていれば、制限サイズがアプリケーションプログラム２０１に通知されるからである。
【０１４７】
削減部９１７は、削減対象のログデータが格納されているログ領域２０９の空き容量を更新する（Ｓ２８０７）。空き容量を算出する方法は、図２６のＳ２６０１に示した処理の場合と同様である。尚、削減部９１７は、現在の空き容量にログデータの削減量を加えることによって、当該ログ領域２０９の空き容量を更新するようにしてもよい。削減処理を終えると、図２６に示したＳ２６０５の処理に移る。
【０１４８】
図２６の説明に戻る。上述したように削減処理によってログ領域２０９における空き容量を増加させると、改めてＳ２６０５以降の処理が繰り返される。そして、Ｓ２６０５の判定におけるＹＥＳルートを通る場合（図２４の例に相当する。）あるいはＳ２６０９の判定におけるＹＥＳルートを通る場合（図２５の例に相当する。）には、Ｓ２６０３の処理で特定したサーバ装置１０１のログ領域２０９において容量が不足する恐れが解消したことを意味する。
【０１４９】
一方、Ｓ２６０９の判定におけるＮＯルートを再び通る場合には、Ｓ２６１１において再び削減処理を行い、次に重要度が低いログデータの制限サイズを削減する。
【０１５０】
そして、確認部９１１は、未処理のサーバ装置１０１があるか否かを判定する（Ｓ２６１３）。未処理のサーバ装置１０１があると判定した場合には、Ｓ２６０３の処理に戻って、上述した処理を繰り返す。未処理のサーバ装置１０１がないと判定した場合には、確認処理を終える。確認処理を終えると、図１４に示したＳ１４１１の処理に移る。
【０１５１】
図１４の説明に戻る。通知部９１９は、通知処理を実行する（Ｓ１４１１）。通知処理では、変更された制限サイズ及び変更された格納場所を、アプリケーションプログラム２０１に通知する。
【０１５２】
図２９及び図３０に、通知処理フローの例を示す。この例では、通知部９１９は、削減処理によって削減された制限サイズを最初に通知する。その次に、通知部９１９は、格納場所を通知する。最後に、通知部９１９は、予測処理によって算出された制限サイズを通知する。このようにすれば、アプリケーションプログラム２０１がログデータの格納場所を変更することによって、ログデータの移動先に相当するログ領域２０９の容量を超えることを防げる。
【０１５３】
通知部９１９は、プログラムテーブルで管理されているアプリケーションプログラム２０１を１つ特定する（Ｓ２９０１）。通知部９１９は、当該アプリケーションプログラム２０１のプログラムレコードにおける第３通知フラグに「ＯＮ」が設定されているか否かを判定する（Ｓ２９０３）。当該アプリケーションプログラム２０１のプログラムレコードにおける第３通知フラグに「ＯＮ」が設定されていると判定した場合には、通知部９１９は、当該プログラムレコードにおいて設定されている制限サイズを、当該アプリケーションプログラム２０１に通知する（Ｓ２９０５）。このとき、通知部９１９は、当該第３通知フラグに「ＯＦＦ」を設定する。そして、Ｓ２９０７の処理に移る。
【０１５４】
一方、当該アプリケーションプログラム２０１のプログラムレコードにおける第３通知フラグに「ＯＮ」が設定されていないと判定した場合、つまり当該第３通知フラグに「ＯＦＦ」が設定されている場合には、そのままＳ２９０７の処理に移る。
【０１５５】
通知部９１９は、未処理のアプリケーションプログラム２０１があるか否かを判定する（Ｓ２９０７）。未処理のアプリケーションプログラム２０１があると判定した場合には、Ｓ２９０１の処理に戻って、上述した処理を繰り返す。一方、未処理のアプリケーションプログラム２０１がないと判定した場合には、Ｓ２９０９の処理に移る。
【０１５６】
通知部９１９は、プログラムテーブルで管理されているアプリケーションプログラム２０１を改めて１つ特定する（Ｓ２９０９）。通知部９１９は、当該アプリケーションプログラム２０１のプログラムレコードにおける第２通知フラグに「ＯＮ」が設定されているか否かを判定する（Ｓ２９１１）。当該アプリケーションプログラム２０１のプログラムレコードにおける第２通知フラグに「ＯＮ」が設定されていると判定した場合には、通知部９１９は、当該プログラムレコードにおいて設定されている格納場所を、当該アプリケーションプログラム２０１に通知する（Ｓ２９１３）。このとき、通知部９１９は、当該第２通知フラグに「ＯＦＦ」を設定する。そして、Ｓ２９１５の処理に移る。
【０１５７】
一方、当該アプリケーションプログラム２０１のプログラムレコードにおける第２通知フラグに「ＯＮ」が設定されていないと判定した場合、つまり当該第２通知フラグに「ＯＦＦ」が設定されている場合には、そのままＳ２９１５の処理に移る。
【０１５８】
通知部９１９は、未処理のアプリケーションプログラム２０１があるか否かを判定する（Ｓ２９１５）。未処理のアプリケーションプログラム２０１があると判定した場合には、Ｓ２９０９の処理に戻って、上述した処理を繰り返す。一方、未処理のアプリケーションプログラム２０１がないと判定した場合には、端子Ａを介して図３０に示したＳ３００１の処理に移る。
【０１５９】
図３０の説明に移る。通知部９１９は、プログラムテーブルで管理されているアプリケーションプログラム２０１を改めて１つ特定する（Ｓ３００１）。通知部９１９は、当該アプリケーションプログラム２０１のプログラムレコードにおける第１通知フラグに「ＯＮ」が設定されているか否かを判定する（Ｓ３００３）。当該アプリケーションプログラム２０１のプログラムレコードにおける第１通知フラグに「ＯＮ」が設定されていると判定した場合には、通知部９１９は、当該プログラムレコードにおいて設定されている制限サイズを、当該アプリケーションプログラム２０１に通知する（Ｓ３００５）。このとき、通知部９１９は、当該第１通知フラグに「ＯＦＦ」を設定する。そして、Ｓ３００７の処理に移る。
【０１６０】
一方、当該アプリケーションプログラム２０１のプログラムレコードにおける第１通知フラグに「ＯＮ」が設定されていないと判定した場合、つまり当該第１通知フラグに「ＯＦＦ」が設定されている場合には、そのままＳ３００７の処理に移る。
【０１６１】
通知部９１９は、未処理のアプリケーションプログラム２０１があるか否かを判定する（Ｓ３００７）。未処理のアプリケーションプログラム２０１があると判定した場合には、Ｓ３００１の処理に戻って、上述した処理を繰り返す。一方、未処理のアプリケーションプログラム２０１がないと判定した場合には、通知処理を終える。通知処理を終えると、図１４に示したメイン処理に復帰する。
【０１６２】
図１４の説明に戻る。通知処理を終えると、Ｓ１４０１に戻って、上述した処理を繰り返す。
【０１６３】
本実施の形態によれば、記録内容を出力するアプリケーションプログラムの動作状況に応じて、当該記録内容が設定されるログデータの制限サイズを調整できる。例えば、保存期間に含まれる記録日時のログレコードを喪失しないようにできる。
【０１６４】
更に、アプリケーションプログラムの動作量に関する実測値と想定値との比較によって、ログデータのサイズの多寡をより正しく予測できる。例えば、実際の動作量が想定していた動作量よりも多い場合に、ログデータの制限サイズを大きくすることができる。また、実際の動作量が想定していた動作量よりも少ない場合に、ログデータの制限サイズを小さくすることができる。
【０１６５】
更に、第１予測サイズ乃至第３予測サイズのうち最大の予測サイズを選択するので、アプリケーションプログラムの動作量と相関しない特性によってログデータのサイズが変動する状況において、ログデータサイズの予測を誤ることを防げる。
【０１６６】
更に、ログデータを移動させるので、ログデータの制限サイズ調整による、当該ログデータの格納場所における容量不足を未然に防げる。
【０１６７】
更に、重要度の低いログデータのサイズを削減するので、ログデータの移動先における書き込み領域を確保できる。また、重要度の高い記録内容の喪失を防げる。
【０１６８】
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上述の機能ブロック構成はプログラムモジュール構成に一致しない場合もある。
【０１６９】
また、上で説明した各記憶領域の構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ、処理の順番を入れ替えることや複数の処理を並列に実行させるようにしても良い。
【０１７０】
なお、上で述べたサーバ装置１０１及び管理装置１０３は、コンピュータ装置であって、図３１に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【０１７１】
以上述べた本発明の実施の形態をまとめると、以下のようになる。
【０１７２】
本実施の形態に係る情報処理装置は、自ら動作している間に記録内容を出力する第１プログラムの動作量に基づいて、当該記録内容が設定されるログデータの第１予測サイズを算出する算出部と、第１プログラムに含められ或いは第１プログラムと別に設けられた、ログデータを管理する第２プログラムに、第１予測サイズを通知する通知部とを有する。
【０１７３】
このようにすれば、記録内容を出力する第１プログラムの動作状況に応じて、当該記録内容が設定されるログデータの制限サイズを調整できる。例えば、保存期間に含まれる記録日時のログレコードを喪失しないようにできる。
【０１７４】
上記算出部は、動作量の想定値に対する動作量の実測値の比を、データ追加量の想定値に乗じて、データ追加量の予測値を算出し、予測値に基づいて、第１予測サイズを算出するようにしてもよい。
【０１７５】
このようにすれば、第１プログラムの動作量に関する実測値と想定値との比較によって、ログデータのサイズの多寡をより正しく予測できる。例えば、実際の動作量が想定していた動作量よりも多い場合に、ログデータの制限サイズを大きくすることができる。また、実際の動作量が想定していた動作量よりも少ない場合に、ログデータの制限サイズを小さくすることができる。
【０１７６】
上記算出部は、他の基準によってログデータの第２予測サイズを算出するようにしてもよい。更に、第２予測サイズが第１予測サイズより大きい場合に、上記通知部は、第２予測サイズを第１予測サイズとして通知するようにしてもよい。
【０１７７】
このようにすれば、第１プログラムの動作量と相関しない特性によってログデータのサイズが変動する状況において、ログデータサイズの予測を誤ることを防げる。
【０１７８】
更に、第１予測サイズに基づいて、ログデータの格納場所における容量不足が生じると判定した場合に、上記ログデータ又は上記ログデータとともに格納場所に格納されている他のログデータのうち、移動させるログデータを選定し、当該移動させるログデータの格納場所を変更する変更部を有するようにしてもよい。更に、上記通知部は、移動させるログデータを管理するプログラムに、変更された格納場所を通知するようにしてもよい。
【０１７９】
このようにすれば、ログデータの制限サイズ調整による、当該ログデータの格納場所における容量不足を未然に防げる。
【０１８０】
更に、予め用意されている格納場所のいずれにおいても、移動させるログデータを格納するための容量が不足していると判定した場合に、予め用意されている格納場所に格納されているログデータのうち、重要度の低いログデータのサイズを削減する削減部を有するようにしてもよい。上記通知部は、重要度の低いログデータを管理するプログラムに、削減されたサイズを通知するようにしてもよい。
【０１８１】
このようにすれば、ログデータの移動先における書き込み領域を確保できる。また、重要度の高い記録内容の喪失を防げる。
【０１８２】
なお、上で述べたサーバ装置１０１の処理及び管理装置１０３の処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納されるようにしてもよい。尚、中間的な処理結果は、一般的にメインメモリ等の記憶装置に一時保管される。
【０１８３】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１８４】
（付記１）
自ら動作している間に記録内容を出力する第１プログラムの動作量に基づいて、当該記録内容が設定されるログデータの第１予測サイズを算出する算出部と、
前記第１プログラムに含められ或いは前記第１プログラムと別に設けられた、前記ログデータを管理する第２プログラムに、前記第１予測サイズを通知する通知部と
を有する情報処理装置。
【０１８５】
（付記２）
前記算出部は、前記動作量の想定値に対する前記動作量の実測値の比を、データ追加量の想定値に乗じて、前記データ追加量の予測値を算出し、
前記予測値に基づいて、前記第１予測サイズを算出する
付記１記載の情報処理装置。
【０１８６】
（付記３）
前記算出部は、他の基準によって前記ログデータの第２予測サイズを算出し、
前記第２予測サイズが前記第１予測サイズより大きい場合に、前記通知部は、前記第２予測サイズを前記第１予測サイズとして通知する
付記１又は２記載の情報処理装置。
【０１８７】
（付記４）
更に、
前記第１予測サイズに基づいて、前記ログデータの格納場所における容量不足が生じると判定した場合に、前記ログデータ又は前記ログデータとともに前記格納場所に格納されている他のログデータのうち、移動させるログデータを選定し、当該移動させるログデータの格納場所を変更する変更部
を有し、
前記通知部は、前記移動させるログデータを管理するプログラムに、変更された前記格納場所を通知する
付記１乃至３のいずれか１つ記載の情報処理装置。
【０１８８】
（付記５）
更に、
予め用意されている格納場所のいずれにおいても、前記移動させるログデータを格納するための容量が不足していると判定した場合に、前記予め用意されている格納場所に格納されているログデータのうち、重要度の低いログデータのサイズを削減する削減部
を有し、
前記通知部は、前記重要度の低いログデータを管理するプログラムに、削減された前記サイズを通知する
付記４記載の情報処理装置。
【０１８９】
（付記６）
自ら動作している間に記録内容を出力する第１プログラムの動作量に基づいて、当該記録内容が設定されるログデータの予測サイズを算出し、
前記第１プログラムに含められ或いは前記第１プログラムと別に設けられた、前記ログデータを管理する第２プログラムに、前記予測サイズを通知する
処理をコンピュータにより実行する情報処理方法。
【０１９０】
（付記７）
自ら動作している間に記録内容を出力する第１プログラムを動作させるための第１の情報処理装置と、第２の情報処理装置とを含むシステムであって、
前記第２の情報処理装置は、
前記第１プログラムの動作量に基づいて、前記記録内容が設定されるログデータの予測サイズを算出する算出部と、
前記予測サイズを前記第１の情報処理装置に通知する通知部と
を有し、
前記第１の情報処理装置は、
前記通知を受けた場合に、前記予測サイズに基づいて前記ログデータの制限サイズを更新する更新部
を有するシステム。
【符号の説明】
【０１９１】
１０１  サーバ装置    １０３  管理装置
２０１  アプリケーションプログラム    ２０３  メイン処理部
２０５  ログ管理部    ２０７  記憶部
２０９  ログ領域    ２１１  ネットワークファイルシステム
４０１  レコード追加部    ４０３  制限サイズ記憶部
４０５  格納場所記憶部    ４０７  第１更新部
４０９  第２更新部    ４１１  レコード削除部
９０１  収集部    ９０３  制御部
９０５  予測部    ９０７  第１算出部
９０９  第１変更部    ９１１  確認部
９１３  第２算出部    ９１５  第２変更部
９１７  削減部    ９１９  通知部
９３１  プログラムテーブル記憶部    ９３３  サーバテーブル記憶部
９３５  使用率テーブル記憶部
【図１】
2016151966.tif 000003
【図２】
2016151966.tif 000004
【図３】
2016151966.tif 000005
【図４】
2016151966.tif 000006
【図５】
2016151966.tif 000007
【図６】
2016151966.tif 000008
【図７】
2016151966.tif 000009
【図８】
2016151966.tif 000010
【図９】
2016151966.tif 000011
【図１０】
2016151966.tif 000012
【図１１】
2016151966.tif 000013
【図１２】
2016151966.tif 000014
【図１３】
2016151966.tif 000015
【図１４】
2016151966.tif 000016
【図１５】
2016151966.tif 000017
【図１６】
2016151966.tif 000018
【図１７】
2016151966.tif 000019
【図１８】
2016151966.tif 000020
【図１９】
2016151966.tif 000021
【図２０】
2016151966.tif 000022
【図２１】
2016151966.tif 000023
【図２２】
2016151966.tif 000024
【図２３】
2016151966.tif 000025
【図２４】
2016151966.tif 000026
【図２５】
2016151966.tif 000027
【図２６】
2016151966.tif 000028
【図２７】
2016151966.tif 000029
【図２８】
2016151966.tif 000030
【図２９】
2016151966.tif 000031
【図３０】
2016151966.tif 000032
【図３１】
2016151966.tif 000033