(57)【要約】【課題】時刻情報が丸められていても適切にデータを集計可能なデータ収集システムを提供すること。【解決手段】第一情報処理装置１４、１５とネットワークを介して通信可能な第二情報処理装置１３が前記第一情報処理装置からデータを受信するデータ収集システム１００であって、基準時刻に対する時差情報に基づき決定された所定単位時間を記憶する記憶装置から前記所定単位時間を読み出す第一読出手段３９と、前記第一読出手段が前記記憶装置から読み出した前記所定単位時間を間隔とする第一時刻情報を付した第一データを生成するデータ生成手段３３と、前記第一データを前記第二情報処理装置に送信する第一通信手段３１と、前記第一データを受信する第二通信手段２１と、前記時差情報を用いて前記第一データの前記第一時刻情報を第二時刻情報に変換する時刻変換手段２３と、第二時刻情報を用いて前記第一データを集計する集計手段２２とを有する。【選択図】図１
2017010398.tif 000002
【特許請求の範囲】
【請求項１】
第一情報処理装置とネットワークを介して通信可能な第二情報処理装置が前記第一情報処理装置からデータを受信するデータ収集システムであって、
前記第一情報処理装置は、
基準時刻に対する時差情報に基づき決定された所定単位時間を記憶する記憶装置から前記所定単位時間を読み出す第一読出手段と、
前記所定単位時間を間隔とする第一時刻情報を付した第一データを生成するデータ生成手段と、
前記第一データを前記第二情報処理装置に送信する第一通信手段と、を有し、
前記第二情報処理装置は、
前記第一データを受信する第二通信手段と、
前記時差情報を用いて前記第一データの前記第一時刻情報を第二時刻情報に変換する時刻変換手段と、
前記第二時刻情報を用いて前記第一データを集計する集計手段と、
を有するデータ収集システム。
【請求項２】
前記所定単位時間は、
(i)前記第一情報処理装置が存在するタイムゾーンの前記基準時刻に対する前記時差情報を割りきれる数のうち最も大きな数であって、
(ii)それぞれの前記第一情報処理装置の前記最も大きな数のうち最も小さな数である、
ことを特徴とする請求項１に記載のデータ収集システム。
【請求項３】
前記所定単位時間は、
(i)任意のタイムゾーンの前記基準時刻に対する前記時差情報を割りきれる数のうち最も大きな数であって、
(ii)世界に存在するタイムゾーンについて求められた前記最も大きな数のうち最も小さな数である、ことを特徴とする請求項１又は２に記載のデータ収集システム。
【請求項４】
前記第一通信手段は、前記第一情報処理装置が存在するタイムゾーン又はタイムゾーンの前記基準時刻に対する前記時差情報を前記第二情報処理装置に送信し、
前記第二情報処理装置は、
(i)前記第一情報処理装置から取得した前記時差情報を割りきれる数のうち最も大きな数を求め、
(ii)それぞれの前記第一情報処理装置について求められた前記最も大きな数のうち最も小さな数を決定し、
前記第二通信手段は前記最も小さな数を、前記所定単位時間として前記第一情報処理装置に送信する請求項１〜３いずれか１項に記載のデータ収集システム。
【請求項５】
前記第二情報処理装置は、前記所定単位時間の設定を受け付ける設定受付手段を有し、
前記第二通信手段は、前記設定受付手段が受け付けた前記所定単位時間を前記第一情報処理装置に送信する請求項１〜３いずれか１項に記載のデータ収集システム。
【請求項６】
前記第一通信手段は、前記第一情報処理装置の位置情報を前記第二情報処理装置に送信し、
前記第二情報処理装置は、
前記第一情報処理装置から送信された前記位置情報に基づきタイムゾーンを判定するタイムゾーン判定手段を有し、
前記時刻変換手段は、前記タイムゾーン判定手段が判定したタイムゾーンの前記基準時刻に対する前記時差情報を用いて、前記第一データの前記第一時刻情報を前記第二時刻情報に変換する請求項１〜５いずれか１項に記載のデータ収集システム。
【請求項７】
前記第一通信手段は、前記第一情報処理装置が存在する場所の識別情報を前記第二情報処理装置に送信し、
前記第二情報処理装置は、
前記場所の識別情報に対応づけられたタイムゾーンを記憶装置から読み出す第二読出手段を有し、
前記時刻変換手段は、前記第二読出手段が読み出したタイムゾーンの前記基準時刻に対する前記時差情報を用いて、前記第一データの前記第一時刻情報を前記第二時刻情報に変換する請求項１〜５いずれか１項に記載のデータ収集システム。
【請求項８】
前記第二情報処理装置は、
前記第二通信手段が受信した前記第一データの集計要求を取得する集計要求取得手段を有し、
前記集計手段は、前記集計要求取得手段が受信した前記集計要求に従って前記第一データを集計し、
前記集計手段による集計結果を表示装置に表示する表示手段、を有する請求項１〜７いずれか１項に記載のデータ収集システム。
【請求項９】
前記集計要求取得手段は、前記集計手段による集計結果を、前記第二情報処理装置に対し前記集計要求を送信した第三情報処理装置に送信する請求項８に記載のデータ収集システム。
【請求項１０】
前記第一情報処理装置は、
前記第一情報処理装置と通信可能な機器から時刻情報を有する第二データを収集する収集手段を有し、
前記データ生成手段は、複数の前記第二データを前記所定単位時間ごとに集計することで、前記所定単位時間を間隔とする前記第一時刻情報を付した前記第一データを生成する請求項８又は９のいずれか１項に記載のデータ収集システム。
【請求項１１】
前記第一情報処理装置は、
前記第一情報処理装置と通信可能な機器から時刻情報を有する第二データを収集する収集手段を有し、
前記データ生成手段は、前記第二データから前記第一データを生成する際、前記第一データに付す前記第一時刻情報の桁数を、前記第二データの時刻情報の桁数よりも少なくする請求項１〜１０のいずれか１項に記載のデータ収集システム。
【請求項１２】
前記第一通信手段は前記機器の識別情報を前記第二情報処理装置に送信し、
前記集計手段は、前記機器ごとに前記第一データを集計する請求項１０又は１１に記載のデータ収集システム。
【請求項１３】
第一情報処理装置とネットワークを介して通信可能な第二情報処理装置が前記第一情報処理装置からデータを受信するデータ収集システムのデータ収集方法であって、
前記第一情報処理装置によって行われる、
基準時刻に対する時差情報に基づき決定された所定単位時間を記憶する記憶装置から前記所定単位時間を読み出す第一読出ステップと、
前記所定単位時間を間隔とする第一時刻情報を付した第一データを生成するデータ生成ステップと、
前記第一データを前記第二情報処理装置に送信する第一通信ステップと、を有し、
前記第二情報処理装置によって行われる、
前記第一データを受信する第二通信ステップと、
前記時差情報を用いて前記第一データの前記第一時刻情報を第二時刻情報に変換する時刻変換ステップと、
前記第二時刻情報を用いて前記第一データを集計する集計ステップと、
を有するデータ収集方法。
【請求項１４】
第一データを受信する第二通信手段と、
時差情報を用いて前記第一データの第一時刻情報を第二時刻情報に変換する時刻変換手段と、前記第二時刻情報に基づいて前記第一データを集計する集計手段と、を有する第二情報処理装置と、ネットワークを介して通信可能な情報処理装置であって、
基準時刻に対する前記時差情報に基づき決定された所定単位時間を記憶する記憶装置から前記所定単位時間を読み出す第一読出手段と、
前記所定単位時間を間隔とする第一時刻情報を付した前記第一データを生成するデータ生成手段と、
前記第一データを前記第二情報処理装置に送信する第一通信手段と、を有する情報処理装置。
【請求項１５】
第一データを受信する第二通信手段と、
時差情報を用いて前記第一データの第一時刻情報を第二時刻情報に変換する時刻変換手段と、前記第二時刻情報に基づいて前記第一データを集計する集計手段と、を有する第二情報処理装置と、ネットワークを介して通信可能な情報処理装置を、
予め定められている基準時刻に対する前記時差情報に基づき決定された所定単位時間を記憶する記憶装置から前記所定単位時間を読み出す第一読出手段と、
前記第一読出手段が前記記憶装置から読み出した前記所定単位時間を間隔とする第一時刻情報を付した前記第一データを生成するデータ生成手段と、
前記第一データを前記第二情報処理装置に送信する第一通信手段と、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ収集システム、データ収集方法、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
使用された機器が使用内容を示すログを生成し、ネットワークを介して機器と接続されたサーバがログの収集を自動的に行う場合がある。機器の管理者等はログを解析することで、機器の利用状況を把握することができる。
【０００３】
ログにはジョブなどの実行時刻を示す時刻情報が添付されている。機器のユーザが世界の様々な地域に存在しても時刻情報を管理者等が共通に取り扱えるように、ログに添付される時刻情報はＵＴＣ（Coordinated Universal Time）と呼ばれる時刻（以下、ＵＴＣ時刻という）に統一されている。これに対し、ユーザのタイムゾーンにおける時刻を現地時刻と称する。ログの時刻情報が現地時刻でなく世界的に共通のＵＴＣ時刻で表されていることで、管理者等は各地域の時差を考慮することなくログの解析が可能になる。
【０００４】
しかしながら、機器のユーザは世界各地に存在するため、たとえＵＴＣ時刻が同じであったとしても、ユーザの現地時刻は異なっている場合がある。例えば、日本の現地時刻の朝９：００はＵＴＣ時刻の０：００である。これに対し、イギリスの現地時刻の深夜０：００は、ＵＴＣ時刻によっても０：００である。
【０００５】
このため、以下のような解析目的のためにログを用いてユーザの利用状況などを管理者等が解析する場合、ＵＴＣ時刻から現地時刻にログの時刻情報を変換した上で集計するケースがある。
(i)世界各地に事業を有する企業が各事業所における基本就業時間(例えば、９時〜１７時など)の機器の使われ方を確認するという解析目的
(ii) データセンターをメンテナンスするためにユーザの使用頻度が少ない利用時間帯を管理者等が確認するという解析目的（ログに添付されるＵＴＣ時刻をデータセンターの所在場所の現地時刻に変換して集計する）
このような現地時刻を考慮したログの集計技術が考案されている（例えば、特許文献１参照。）。特許文献１には夏時間（サマータイム）を考慮してログを集計するサービス使用量集計システムが考案されている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、機器がログをサーバに送信する際に、仮に、機器側がログを集計してからサーバに送信すれば機器とサーバ間の通信量を低減できる。機器側はある単位時間でログを集計してから（例えばジョブの実行回数を１時間単位で集計する）ログをサーバに送信する。機器は秒単位かそれ未満の単位でＵＴＣ時刻を測定しているが、機器による集計によって、ＵＴＣ時刻の時刻情報もある単位時間で丸められている（時刻情報の下位桁が簡易化されている）。
【０００７】
しかしながら、時刻情報が丸められていると現地時刻を考慮した集計が困難になるという問題がある。例えば、現地時刻が属するタイムゾーンがＵＴＣ＋９：００である場合、ＵＴＣ時刻に対する差分が１時間単位なので、５９分以下の時刻情報は集計する上で不要になる(例えば、現地時刻の９時〜１７時で集計する場合、ＵＴＣ時刻が０時１０分のログも０時５０分のログも現地時刻の９時台の集計に含まれる。)。従って、この場合、機器側の集計の「ある単位時間」は１時間でよく、機器側で０時台のログとして集計しておけばサーバでは９時台に集計できる。
【０００８】
これに対し、「ある単位時間」が１時間であるが、現地時刻が属するタイムゾーンが例えばＵＴＣ＋９：４５である場合、以下のような不都合が生じる。ＵＴＣ時刻が０時１０分のログは９時台の集計に含まれるべきであり（現地時刻が９時５５分であるため）、０時５０分のログは現地時刻の１０時台の集計に含まれるべきである（現地時刻が１０時３５分であるため）。しかし、「ある単位時間」が１時間であるため、０時１０分と０時５０分のログは機器側で０時台に集計されており、サーバはどちらのログも９時台に集計してしまう。
【０００９】
タイムゾーンが、ＵＴＣに対しどのくらいの差分を有するかはタイムゾーンによって様々である（少なくも差分が１時間であるとは限らない。）。しかし、以上のように従来は、ログの時刻情報を丸めるための単位時間について、ＵＴＣ時刻に対する差分がタイムゾーンによって異なり得ることが考慮されていなかった。
【００１０】
本発明は、上記課題に鑑み、時刻情報が丸められていても適切にデータを集計可能なデータ収集システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、第一情報処理装置とネットワークを介して通信可能な第二情報処理装置が前記第一情報処理装置からデータを受信するデータ収集システムであって、前記第一情報処理装置は、基準時刻に対する時差情報に基づき決定された所定単位時間を記憶する記憶装置から前記所定単位時間を読み出す第一読出手段と、前記所定単位時間を間隔とする第一時刻情報を付した第一データを生成するデータ生成手段と、前記第一データを前記第二情報処理装置に送信する第一通信手段と、を有し、前記第二情報処理装置は、前記第一データを受信する第二通信手段と、前記時差情報を用いて前記第一データの前記第一時刻情報を第二時刻情報に変換する時刻変換手段と、前記第二時刻情報を用いて前記第一データを集計する集計手段と、を有する。
【発明の効果】
【００１２】
時刻情報が丸められていても適切にデータを集計可能なデータ収集システムを提供することができる。
【図面の簡単な説明】
【００１３】
【図１】ログ集計システムのシステム構成図の一例である。
【図２】集計結果集約サーバのハードウェア構成図の一例である。
【図３】ログ集計システムの機能ブロック図の一例である。
【図４】管理者ＰＣに表示される解析結果画面の一例を示す図である。
【図５】管理者ＰＣに表示される解析結果画面の一例を示す図である。
【図６】最小単位時間が集計結果集約サーバによる解析結果に与える作用を説明する図の一例である。
【図７】ローカルサーバがログを収集して集計する手順を示すフローチャート図の一例である。
【図８】集計結果集約サーバが集計結果を管理者ＰＣに送信する手順を示すフローチャート図の一例である。
【図９】管理者ＰＣに表示される集計仕様画面の一例を示す図である。
【図１０】集計結果集約サーバが最小単位時間を変更する手順を示すフローチャート図の一例である。
【図１１】ログ集計システムの機能ブロック図の一例である（実施例２）。
【図１２】タイムゾーンを越えた機器の移動を説明する図の一例である。
【図１３】ログ集計システムの機能ブロック図の一例である（実施例３）。
【図１４】集計結果集約サーバがログを集計する手順を示すフローチャート図の一例である（実施例３）。
【図１５】ログ集計システムの構成図の一例である。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【実施例１】
【００１５】
＜本実施形態の概略＞
図１は、ログ集計システム１００のシステム構成図の一例である。集計結果集約サーバ１３がネットワークを介して複数のサービス利用企業１１と通信可能に接続されている。以下、ログ集計システム１００（データ収集システム）の動作の概略を説明する。
（１）各サービス利用企業１１のローカルサーバ１４は機器１５（機器Ａと機器Ｂ）からログを収集する。ログの時刻情報はＵＴＣ時刻で統一されている。
（２）ローカルサーバ１４は、最小単位時間ＤＢ３００３に記憶された最小単位時間でログを集計する。これにより、ログの時刻情報も最小単位時間に丸められる。この最小単位時間は、ＵＴＣ時刻に対する各タイムゾーンの差分（時差情報）のうち最も小さいものをいう。例えば、ＵＴＣ＋８：４５というタイムゾーンが存在すれば、最小単位時間は１５分である（求め方は後述される）。また、例えば、ＵＴＣ＋８：３５というタイムゾーンが存在すれば、最小単位時間は５分である。
（３）サービス利用企業１１のローカルサーバ１４は集計結果（第一データ）を集計結果集約サーバ１３に送信する。
（４）集計結果集約サーバ１３は集計結果のＵＴＣ時刻を必要に応じて現地時刻（第二時刻情報）に変更し、変更後の現地時刻で集計結果を解析する。
【００１６】
このように、本実施例のログ集計システム１００は、最小単位時間ごとにログが集計されているので（最小単位時間で時刻情報が丸められている）、タイムゾーンがＵＴＣ時刻に対しどのような差分を有していても、各ログを現地時刻の適切な時間帯に集計できる。
【００１７】
また、サービス利用企業１１が集計結果集約サーバ１３に送信する際にログが集計されえいるので、サービス利用企業１１がログを集計結果集約サーバ１３に送信する際の通信量を低減できる。
【００１８】
＜用語について＞
本実施形態で使用する用語について説明する。
・ＵＴＣ時刻は、全世界で時刻を記録する際に使われる公式な時刻であり、ある瞬間には世界的に１つしかない。なお、本実施形態ではＧＭＴ時刻(グリニッジ標準時)を用いてもよい。また、ＵＴＣ時刻やＧＭＴ時刻のような公的な基準時刻を用いるのでなく、任意の基準時刻を用いてもよい。例えば、東京の０：００を０：００とする基準時刻を採用してよい。このような基準時刻でも各場所の現地時刻との差分が明らかであれば現地時刻に変換できる。
・タイムゾーンは共通の標準時を使う地域全体をいう。ＵＴＣ時刻との差分により定義される。
・ＵＴＣ時刻との差分は、ＵＴＣ±時間のように表される。ＵＴＣ時刻との差分が同じでも、タイムゾーンとしては異なるものとして扱われる場合がある。
・現地時刻は、ＵＴＣ時刻との差分を用いてＵＴＣ時刻から変換される時刻である。ローカル時刻と称される場合がある。
・時刻を丸めるとは、時刻をいくつかの桁の数値で表現する場合、下位側の桁の数値を簡易化することをいう。例えば、１２：４１という時刻の下２桁の４１を００（最小単位時間が１時間の場合）に簡易化したり、同じく４１を３０（最小単位時間が１５分の場合）に簡易化したりする。
【００１９】
＜構成例＞
図１を用いて、ログ集計システム１００のシステム構成について説明する。まず、集計結果集約サーバ１３（第二情報処理装置）には、クラウドコンピューティングが用いられていることが好ましい。クラウドコンピューティングの物理的な構成に厳密な定義はないが、ログ集計システム１００は少なくとも１台以上の情報処理装置を備えている。クラウドコンピューティングは、一例として、複数のサーバ、Ｌ１〜Ｌ３スイッチで接続された複数のサーバ、サーバが搭載されたラック、及び、ラック同士がＬ１〜Ｌ３スイッチ等で接続されたクラスタ等を有している。また、クラウドコンピューティングでは、サーバが仮想化されることが一般的である。１台のサーバが仮想化によって複数のサーバとしての機能を提供することや、複数のサーバが仮想化によって一台のサーバとしての機能を提供することができる。また、データストレージが複数のサーバで共有されることが多い。
【００２０】
集計結果集約サーバ１３が固定されている必要はなく、サーバの増加、ラックやクラスタの組み替えに応じて集計結果集約サーバ１３の物理的な配置は変動しうる。なお、集計結果集約サーバ１３がクラウドコンピューティングとしてではなく単独の情報処理装置により提供されることも可能である。
【００２１】
サービス利用企業１１は機器１５を保持する法人、自然人、団体又は個人等である。サービス利用企業１１はテナントと称される。具体的には、サービス利用企業１１は、例えば企業、役所、社団法人、財団法人、学校法人、宗教法人、ＮＰＯ（Nonprofit Organization）などがある。１つのサービス利用企業１１が複数の拠点（事業所、工場、事務所など）を有する場合がある。また、サービス利用企業１１と見なすか拠点とみなすかは、テナントとの契約などによってログ集計システム１００の管理者等が設定できる。
【００２２】
サービス利用企業１１ではログを生成する機器１５が使用されている。機器１５は例えばＭＦＰ（Multi Function Peripheral）、プロジェクタ、テレビ会議端末、電子ホワイトボード、ＰＣ（Personal Computer）、スマートフォン、タブレット装置、ウェアラブルＰＣ（例えば、Head Up Display、腕時計など）などであるがこれらには限られない。また、機器１５は１台でもよい。
【００２３】
機器１５はローカルサーバ１４（第一情報処理装置）と通信可能に接続されている。通信にはＬＡＮ、ＵＳＢ接続、Bluetooth（登録商標）、ZigBee（登録商標）、などが用いられるがこれらに限定されない。ローカルサーバ１４は情報処理装置の一種である。ローカルサーバ１４は予め定められたスケジュールに従って機器１５からログを収集する。ローカルサーバ１４は、定期的に又は予め定められたスケジュールに従ってログを集計して集計結果を集計結果集約サーバ１３に送信する。
【００２４】
なお、ローカルサーバ１４は、各機器１５のいずれかにより代用されてよい。この場合、独立したローカルサーバ１４は不要であり、ローカルサーバ１４を代用した機器１５がローカルサーバ１４の機能を担う。
【００２５】
また、ローカルサーバ１４はなくてもよい。この場合、各機器１５が、後述するローカルサーバ１４の機能を提供すると共に、予め定められたスケジュールに従って各機器１５が生成するログの集計結果を集計結果集約サーバ１３に送信する。
【００２６】
また、ネットワークＮには管理者ＰＣ（Personal Computer）１２が接続されている。管理者ＰＣ１２（第三情報処理装置）は集計結果集約サーバ１３と通信して、ログの集計結果などを取得したり表示したりする情報処理装置である。管理者ＰＣ１２はなくてもよく、この場合、集計結果集約サーバ１３に直接、接続されたディスプレイなどにログの集計結果が表示される。
【００２７】
ネットワークＮは、複数の機器１５が配置されている社内などの施設内のＬＡＮ、ＬＡＮをインターネットに接続するプロバイダのプロバイダネットワーク、及び、回線事業者が提供する回線等の少なくとも１つを含んで構築されている。また、ネットワークＮには複数のＬＡＮを含むＷＡＮやインターネットが含まれていてよい。ネットワークＮは有線又は無線のどちらで構築されてもよく、また、有線と無線が組み合わされていてもよい。
【００２８】
＜ハードウェア構成＞
図２は、集計結果集約サーバ１３のハードウェア構成図の一例である。なお、図示する集計結果集約サーバ１３のハードウェア構成は、１つの筐体に収納されていたりひとまとまりの装置として備えられていたりする必要はなく、集計結果集約サーバ１３が備えていることが好ましいハード的な要素を示す。
【００２９】
集計結果集約サーバ１３は、バス３１０に接続されたＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、ＨＤＤ３０５、ディスプレイ３０８、ネットワークＩ／Ｆ３０９、キーボード３１１、マウス３１２、メディアドライブ３０７、及び、光学ドライブ３１４を有する。ＣＰＵ３０１は、ＨＤ３０４に記憶されているプログラムを実行して、集計結果集約サーバ１３の全体の動作を制御する。ＲＯＭ３０２はＩＰＬ等のＣＰＵ３０１の駆動に用いられるプログラムを記憶している。ＲＡＭ３０３はＣＰＵ３０１のワークエリアとして使用される。ＨＤ３０４は不揮発性メモリを搭載した記憶装置であり、ログ管理を行う集約サーバ用プログラム、ＯＳ、クラウドコンピューティングの構築・管理等を行うOpenStackソフトウェアなどを記憶している。
【００３０】
ＨＤＤ(Hard Disk Drive)３０５はＣＰＵ３０１の制御に従ってＨＤ３０４に対する各種データの読み出し又は書き込みを制御する。ディスプレイ３０８はカーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する表示装置である。ネットワークＩ／Ｆ３０９はネットワークＮとのインタフェースであり、ローカルサーバ１４との通信を行う。キーボード３１１及びマウス３１２は入出力装置であり、キーボード３１１は文字、数値、各種指示などの入力のための複数のキーを備えこれらからの入力を受け付ける。マウス３１２はマウスポインターの移動及び各種指示の選択や実行、処理対象の選択などを受け付ける。
【００３１】
メディアドライブ３０７はフラッシュメモリ等のメディア３０６に対するデータの読み出し又は書き込み（記憶）を制御する。光学ドライブ３１４は着脱可能な記録媒体の一例としてのＣＤ−ＲＯＭ(Compact Disc Read Only Memory)３１３等に対する各種データの読み出し又は書き込みを制御する。
【００３２】
なお、サービス利用企業１１のローカルサーバ１４のハードウェア構成は集計結果集約サーバ１３と同様であるか、差異があっても本実施形態の説明に支障がないものとする。管理者ＰＣ１２についても同様である。
【００３３】
＜機能について＞
図３は、ログ集計システム１００の機能ブロック図の一例である。以下、集計結果集約サーバ１３、及び、ローカルサーバ１４の機能について説明する。なお、ローカルサーバ１４の機能は各サービス利用企業１１に共通でよいため、ローカルサーバ１４は１つだけ図示されている。
【００３４】
<<ローカルサーバ>>
ローカルサーバ１４は、通信部３１、ログ収集部３２、ログ集計部３３及び記憶・読出部３９を有している。これら各機能部は、図２に示される各構成要素のいずれかが、ＨＤ３０４やＲＯＭ３０２に格納されているサーバ用プログラム３１００に従ったＣＰＵ３０１からの命令により動作することで実現される機能又は手段である。
【００３５】
ローカルサーバ１４は、図２に示されるＲＯＭ３０２、ＲＡＭ３０３又はＨＤ３０４のいずれか１つ以上により構築される記憶部３０００を有している。記憶部３０００には、集計ログＤＢ３００１、収集ログＤＢ３００２、最小単位時間ＤＢ３００３、及び、サーバ用プログラム３１００が記憶されている。なお、サーバ用プログラム３１００は、メディア３０６やＣＤ−ＲＯＭ３１３等のコンピュータで読み取り可能な記録媒体に記憶された状態で配布されたり、プログラムを配信するサーバからダウンロードされたりすることで配信される。
【００３６】
まず、記憶部３０００に記憶されている各種のデータベースについて説明する。
【００３７】
【表１】
2017010398.tif 000003
記憶部３０００には、表１に示されるようなログ（第一データ）が収集される収集ログＤＢ３００２が構築されている。｛｝で囲まれた範囲が１つのログである。収集ログＤＢ３００２のログは機器１５から収集された状態（生（raw））のログである。以下、ログに含まれるフィールドを説明する。
・time…機器１５がログを生成した（ジョブを実行した）ＵＴＣ時刻である
・Tenant_id…サービス利用企業１１を一意に識別するための識別情報である。
・Office_id…サービス利用企業１１の拠点を一意に識別するための識別情報である。
・device_id…機器１５を一意に識別するための識別情報である。
・request_id…サービス利用企業１１内のユーザによるジョブの実行要求を一意に識別するための識別情報である。
・action…ジョブの内容を示す。
・result…ジョブの実行結果を示す。
・filename…ジョブに使用されたファイルのファイル名を示す。
・file_extension…ジョブに使用されたファイルの拡張子を示す。
・color…ジョブがカラー／モノクロのどちらで実行されたかを示す。
・side…両面／片面を示す。
・set…部数を示す。
・staple…ステイプルの有無を示す。
・size…用紙サイズを示す。
・runtime…ジョブの実行時間を示す。
【００３８】
なお、これらは一例に過ぎない。ログの内容は、集計結果集約サーバ１３がローカルサーバ１４に指示してもよいし、サービス利用企業１１の担当者が設定してもよい。また、ジョブの内容（action）によって自動的に変更されてもよい。
【００３９】
【表２】
2017010398.tif 000004
記憶部３０００には、表２に示されるような１つ以上の集計結果が記憶される集計ログＤＢ３００１が構築されている。集計ログＤＢ３００１の１つのレコードは、ログが最小単位時刻で集計された集計結果である。以下、集計ログＤＢ３００１に含まれるフィールドを説明する。
・time_start…集計開始時刻である。time_start（第一時刻情報）は最小単位時間ずつ大きくなる。
・interval(min)…ログの集計間隔を示す。ログの集計間隔は最小単位時間と同じである。
・print count…集計間隔における集計結果を示す。すなわち、最小単位時間の間にプリントというジョブが実行された回数である。従って、スキャンの回数、コピーの回数、ＦＡＸ送信の回数、エラーの回数等が集計される場合もある。
【００４０】
なお、Tenant_idとOffice_idについては収集ログと同様である。
【００４１】
【表３】
2017010398.tif 000005
記憶部３０００には、表３に示されるような最小単位時間が記憶される最小単位時間ＤＢ３００３が構築されている。最小単位時間は、集計結果集約サーバ１３から送信されてもよいし、ローカルサーバ１４の担当者等が設定してもよい。
【００４２】
最小単位時間は、サービス利用企業１１の拠点が存在する場所のタイムゾーンを考慮して設定されている。すなわち、これら複数のタイムゾーンのＵＴＣ時刻に対する差分のうち最小の単位時間（例えば、６０分、３０分、２０分、１５分、１０分、５分、２分、１分）が選択され、最小単位時間ＤＢ３００３に設定される。また、サービス利用企業１１の拠点が存在する場所に限られず、世界に存在する全てのタイムゾーンを考慮して設定されてもよい。また、最小単位時間は秒単位でもよい。
【００４３】
最小単位時間の求め方は例えば以下のようになる。
(i)ＵＴＣ時刻に対する差分を例えば、６０分、３０分、２０分、１５分、１０分、５分、２分、１分で割り、割りきれる数のうち最も大きな数を求める。
(ii)それぞれのタイムゾーンについて求められた最も大きな数のうち、最も小さな数が最小単位時間である。
【００４４】
タイムゾーンは頻繁に増減するものではないので、最小時間単位を決定するのは、例えばログ集計システム１００の管理者などでよい。なお、６０分、３０分、２０分、１５分、１０分、５分、２分、１分は一例であって、管理者等はこれら最小時間単位の候補を選択することができる。
【００４５】
（ローカルサーバの機能）
ローカルサーバ１４の通信部３１は、図２に示されるＣＰＵ３０１及びネットワークＩ／Ｆ３０９等によって実現され、ネットワークＮを介して集計結果集約サーバ１３に集計結果を送信する。送信にはHttp/Https、ＦＴＰのような一般的なプロトコルを用いてもよいし、ログ送信用の特定のプロトコルを用いてもよい。
【００４６】
ログ収集部３２は、図２に示されるＣＰＵ３０１等により実現され、集計結果集約サーバ１３が決定したスケジュールに従って又は負荷が低い状態なると各機器１５からログを収集する。例えば、ＨＴＴＰやＳＮＭＰ（Simple Network Management Protocol）などのプロトコルで通信して収集する。収集ログＤＢ３００２には、ログ収集部３２が収集したログが記憶される。
【００４７】
ログ集計部３３は、図２に示されるＣＰＵ３０１等により実現され収集ログＤＢ３００２のログを集計して集計ログＤＢ３００１に記憶させる。すなわち、収集ログＤＢ３００２のtimeを読み出し、最終単位時間ＤＢから最小単位時間を読み出す。そして、最終単位時間ごとに（例えば、１５分なら○時０分〜１４分、１５分〜２９分、３０分〜４４分、４５分〜５９分のように１時間を４個のグループに分けて）ジョブの実行回数を集計する。なお、Tenant_idとOffice_idを抽出する。これらは、集計結果集約サーバ１３がサービス利用企業１１と拠点を特定するために使用される。以上により、表２に示した集計結果の１レコードを作成し集計ログＤＢ３００１に記憶させる。
【００４８】
例えば、2015-02-24 0:23:42のログの場合、０時２３分は０時１５から０時３０分の間なので、０時１５分をtime_startとするレコードに集計される。time_startは最小単位時間の開始時刻である。
【００４９】
収集ログＤＢ３００２と集計結果ＤＢ１００１とを比較すると明らかなように、ログ集計部３３がログを集計することで、複数のログが１つの集計結果にまとめられるので、ローカルサーバ１４と集計結果集約サーバ１３の間の通信量を低減できる。また、１つのログから１つの集計結果が算出される場合でも、集計結果のフィールドはログよりも少なく、また、ＵＴＣ時刻の桁数も少ないので通信量を低減できる。従って、ローカルサーバ１４が集計結果集約サーバ１３に送信する通信量を低減でき、集計結果集約サーバ１３が集計結果を記憶するための記憶領域を圧迫しにくくなる。
【００５０】
記憶・読出部３９は、図２に示されるＣＰＵ３０１やＨＤＤ３０５等によって実現され、記憶部３０００に各種データを記憶したり、記憶部３０００に記憶された各種データを読み出したりする処理を行う。
【００５１】
<<集計結果集約サーバ１３>>
集計結果集約サーバ１３は、通信部２１、集計処理部２２、集計仕様管理部２４、サーバ部２５、時刻変換部２３及び記憶・読出部２９を有している。これら各機能部は、図２に示される各構成要素のいずれかが、ＨＤ３０４やＲＯＭ３０２に格納されている集約サーバ用プログラム１１００に従ったＣＰＵ３０１からの命令により動作することで実現される機能又は手段である。
【００５２】
また、集計結果集約サーバ１３は、図２に示されるＲＯＭ３０２、ＲＡＭ３０３又はＨＤ３０４のいずれか１つ以上により構築される記憶部１０００を有している。記憶部１０００には、集計結果ＤＢ１００１、顧客ＤＢ１００２、及び、集約サーバ用プログラム１１００が記憶されている。なお、集約サーバ用プログラム１１００は、メディア３０６やＣＤ−ＲＯＭ３１３等のコンピュータで読み取り可能な記録媒体に記憶された状態で配布されたり、プログラムを配信するサーバからダウンロードされたりすることで配信される。
【００５３】
まず、記憶部１０００に記憶されている各種のデータベースについて説明する。
【００５４】
【表４】
2017010398.tif 000006
記憶部１０００には、表４に示されるような集計結果ＤＢ１００１が構築されている。  集計結果ＤＢ１００１には、ローカルサーバ１４が送信した集計結果がジョブごとに記憶されている。集計結果ＤＢ１００１には、各サービス利用企業１１から送信された集計結果が記憶される。従って、time_start、interval(min)、Tenant_id、Office_id、及び、print countについては集計ログＤＢ３００１と同様である。interval(min)に示されるように、各サービス利用企業１１のローカルサーバ１４は同じ最小単位時間でログを集計している。これにより、集計結果のtime_startがどのタイムゾーンの現地時刻に変換される場合でも適切な集計が可能になる。
【００５５】
【表５】
2017010398.tif 000007
記憶部１０００には、表５に示されるような顧客ＤＢ１００２が構築されている。顧客ＤＢ１００２には、サービス利用企業１１の拠点（Office_id）ごとにタイムゾーンが登録されている。例えば、Tenant0001のOffice0101のタイムゾーンは「Asia/Tokyo」である。タイムゾーンが分かることで、ＵＴＣ時刻との差分が分かるため、集計結果集約サーバ１３の時刻変換部２３は集計結果のＵＴＣ時刻を現地時刻に変換できる。
【００５６】
（集計結果集約サーバ１３の機能）
集計結果集約サーバ１３の通信部２１は、図２に示されるＣＰＵ３０１及びネットワークＩ／Ｆ３０９等によって実現され、ネットワークＮを介してローカルサーバ１４と通信し、集計結果を受信する。
【００５７】
集計処理部２２は、図２に示されるＣＰＵ３０１等により実現され、ログ集計システム１００の管理者等が指定した集計方法で集計結果ＤＢ１００１の集計結果を解析する。すなわち、次述する時刻変換部２３が集計結果のＵＴＣ時刻を現地時刻に変換するので、その現地時刻で例えば日、週、月ごとの集計結果を解析する。詳細は後述する。
【００５８】
時刻変換部２３は、図２に示されるＣＰＵ３０１等により実現され、管理者等が指定したタイムゾーンで集計結果のＵＴＣ時刻を現地時刻に変換する。変換方法については後述する。
【００５９】
集計仕様管理部２４は、図２に示されるＣＰＵ３０１等により実現され、各ローカルサーバ１４に対し集計の仕様を指示する。具体的には、最小単位時間及び集計対象のジョブの少なくとも一方を各ローカルサーバ１４に送信する。
【００６０】
サーバ部２５は、図２に示されるＣＰＵ３０１等により実現され、管理者ＰＣ１２に対しＷｅｂサーバ又はＷｅｂアプリとして動作する。すなわち、サーバ機能を提供し、管理者ＰＣ１２のＨＴＴＰ/ＨＴＴＰｓリクエストに対し、ＨＴＭＬデータを生成して送信する。ＨＴＭＬデータには、集計処理部２２が集計結果を解析した解析結果が含まれる。
【００６１】
記憶・読出部２９は、図２に示されるＣＰＵ３０１やＨＤＤ３０５等によって実現され、記憶部１０００に各種データを記憶したり、記憶部１０００に記憶された各種データを読み出したりする処理を行う。
【００６２】
＜ＵＴＣ時刻の現地時刻への変換＞
例えば、集計結果に含まれるＵＴＣ時刻が「2015-02-24 00:15」であるとする。また、タイムゾーンのＵＴＣ時刻に対する差分が＋９：００であるとする。この場合、時刻変換部２３は、以下のようにしてＵＴＣ時刻を現地時刻に変換する。
(i) ＵＴＣ時刻に９時間を足す。
(ii) 足した結果の時刻の桁が２４以上の場合、時刻から２４を引く。また、日付を１日増やす。
【００６３】
従って、ＵＴＣ時刻が「2015-02-24 00:15」の場合、現地時刻は「2015-02-24 09:15」となる。
【００６４】
また、変換されるタイムゾーンのＵＴＣ時刻に対する差分が−９：００である場合、時刻変換部２３は、以下のようにして現地時刻に変換する。
(i) ＵＴＣ時刻から９時間を引く。
(ii) 引いた結果がマイナスになった場合、２４から時刻の絶対値を引く。また、日付を１日減らす。
【００６５】
従って、ＵＴＣ時刻が「2015-02-24 00:15」の場合、現地時刻は「2015-02-23 15:15」となる。
【００６６】
＜解析結果の例＞
図４を用いて、集計結果集約サーバ１３が生成する解析結果について説明する。図４は、管理者ＰＣ１２に表示される解析結果画面５０１の一例を示す。
【００６７】
解析結果画面５０１は、対象テナント指定欄５０２、集計種別欄５０３、タイムゾーン欄５０４、集計単位欄５０５、期間指定欄５０６、表示条件欄５０７、解析結果表示ボタン５０８、及び、解析結果欄５０９を有している。以下、これらについて説明する。
・対象テナント指定欄５０２…管理者等が解析対象のテナントを指定する欄である。管理者等は１つ以上のTenant_idを入力する。管理者等がTenant_idの数値を１つずつ入力してもよいし、プルダウンメニューにより表示された一覧の中からTenant_idを選択してもよい。また、ワイルドカードを用いた指定が可能でもよい。なお、Tenant_idを指定しないことも可能である。
・集計種別欄５０３…管理者等が解析対象のジョブを指定する欄である。ジョブの一覧（印刷、スキャン、ログイン、エラー）がプルダウンメニューに表示され、管理者等は一覧からジョブを選択できる。なお、ジョブを指定しないことも可能である。
・タイムゾーン欄５０４…ＵＴＣ時刻の変換先のタイムゾーンを管理者等が選択する欄である。タイムゾーンの一覧がプルダウンメニューに表示され、管理者等は一覧からタイムゾーンを選択できる。また、個別のタイムゾーンではなく「現地時刻に合わせる」を管理者等が選択できる。「現地時刻に合わせる」は、機器１５が設置されている場所のタイムゾーンの現地時刻にＵＴＣ時刻が変換されることを示す。
・集計単位欄５０５…管理者等が解析の期間を指定する欄である。指定可能な期間の一覧（日、週、月）がプルダウンメニューに表示され、管理者等は一覧から解析の期間を選択できる。
・期間指定欄５０６…管理者等が解析結果を得る期間を指定する欄である。管理者等は期間の開始日と終了日を入力する。管理者等は期間を数値で入力してもよいし、カレンダーから開始日と終了日を選択可能でもよい。集計結果ＤＢ１００１に記憶されている集計結果のうち全期間の指定が可能でもよいし、開始日と終了日のいずれかの入力が省略されてもよい。開始日が省略されると終了日よりも過去の全てのログが集計の対象となり、終了日が省略されると開始日よりも新しい全てのログが集計の対象となる。
・表示条件欄５０７…集計対象のログ（集計結果）を時間帯で管理者等が指定する欄である。いくつかの表示条件の一覧（９：００〜１７：００、８：００〜１７：００、１７：００〜２２：００など）がプルダウンメニューに表示されてもよいし、管理者等が表示期間を入力してもよい。なお、表示条件を指定しないことも可能である。
・解析結果表示ボタン５０８…管理者等が解析の開始を集計結果集約サーバに要求するためのボタンである。
・解析結果欄５０９…解析結果が表示される欄である。
【００６８】
「date」は、タイムゾーン欄５０４の設定に応じてＵＴＣ時刻が現地時刻に変換された後の日付を示す。従って、現地の日付を表示できる。
【００６９】
「Tenant_id」と「Office_id」はあるサービス利用企業１１のある拠点における集計結果を示す。対象テナント指定欄５０２で「指定なし」が選択されているので、解析結果欄５０９には全ての「Tenant_id」が表示される。
【００７０】
「count」は解析により得られたジョブの実行回数（例えば、印刷のジョブの実行回数）を示す。すなわち、集計結果のＵＴＣ時刻がタイムゾーン欄５０４の設定のタイムゾーンの現地時刻に変換され、該現地時刻で集計される。集計種別欄５０３で「印刷」が選択され、集計単位欄５０５で「日」が選択されているので、「Tenant_id」が示すテナントの１日の印刷ジョブの実行回数がカウントされている。なお、集計の期間は期間指定欄５０６で指定される。また、表示条件欄５０７によれば、時間による集計対象は指定されていない。
【００７１】
「Timezone」は、タイムゾーン欄５０４で選択されたタイムゾーンのＵＴＣ時刻に対する差分を示す。図のタイムゾーン欄５０４は、「Asia/Tokyo」というタイムゾーンが指定されているため、「＋９：００」が表示されている。
【００７２】
図５は、管理者ＰＣ１２に表示される解析結果画面５０１の別の一例を示す。図５において図４と同一の符号を付した構成要素は同様の機能を果たすので、主に本実施例の主要な構成要素についてのみ説明する場合がある。
【００７３】
図５の解析結果画面５０１では、タイムゾーン欄５０４で「現地時刻に合わせる」が選択されている。このため、解析結果欄５０９の「Timezone」が図４と異なっている。すなわち、顧客ＤＢ１００２で「Office_id」に対応づけられたタイムゾーンが採用されるため、「Office_id」ごとにＵＴＣ時刻に対する差分が異なる。
【００７４】
従って、タイムゾーン欄５０４で「現地時刻に合わせる」が選択されると、集計結果集約サーバ１３は、機器１５が設置されている場所の現地時刻に集計結果のＵＴＣ時刻を変換して、集計結果を解析することができる。
【００７５】
＜最小単位時間の作用について＞
本実施例のように最小単位時間が設定されることの作用について説明する。図６は、最小単位時間が集計結果集約サーバ１３による解析結果に与える作用を説明する図の一例である。
【００７６】
まず、比較のため、最小単位時間が６０分で、ＵＴＣ時刻との差分が＋８：４５である機器１５を想定する（図６（ａ））。
【００７７】
最小単位時間が６０分なので、集計結果において例えば１０：００というＵＴＣ時刻のレコードには、１０：００〜１１：００のジョブの実行回数が含まれる。１０：００というＵＴＣ時刻のレコードが現地時刻に変換されると１８：４５となる。よって、解析対象となる１８：４５のレコードは、１８：００〜１９：００のジョブの実行回数として解析される。
【００７８】
しかし、集計結果のＵＴＣ時刻が１０：００のレコードには、現地時刻１８：４５〜１９：４４のジョブの実行回数が含まれている。この場合、１８：４５〜１８：５９の実行回数は１８：００に含められるべきであり、１９：００〜１９：４４の実行回数は１９：００に含められるべきである。上記のように、現地時刻に変換された１８：４５のレコードのジョブの実行回数は全て１８：００〜１９：００間の実行回数であると解析されるので、現地時刻における正しい集計が困難になる。
【００７９】
次に、最小単位時間が１５分で、ＵＴＣ時刻との差分が＋８：４５である機器１５を想定する（図６（ｂ））。
【００８０】
最小単位時間が１５分なので、集計結果において例えば１０：００というＵＴＣ時刻のレコードには、１０：００〜１０：１４のジョブの実行回数が含まれる。なわち、現地時刻１８：４５〜１８：５９の集計が、ＵＴＣ時刻が１０：００のレコードに含まれている。１８：４５〜１８：５９のジョブの実行回数は１８：００〜１９：００間の実行回数であると解析されるので、現地時刻において正しい集計が可能になる。
【００８１】
このように、最小単位時間で集計された集計結果は、解析の際に現地時刻に変換されても時間の単位を超えないので、現地時刻において適切な解析が可能になる。
【００８２】
＜動作手順＞
図７は、ローカルサーバ１４がログを収集して集計する手順を示すフローチャート図の一例である。図７の手順は、定期的にスタートしてもよいし、ローカルサーバ１４の負荷が閾値以下の場合にスタートしてもよい。
【００８３】
ログ収集部３２は、ログ収集のタイミングであるか否かを判定する（Ｓ１０）。ログ収集のタイミングでない場合（Ｓ１０のＮｏ）、ログ収集のタイミングとなるまで待機する。あるいは、処理を終了する。
【００８４】
ログ収集のタイミングとなった場合（Ｓ１０のＹｅｓ）、ログ収集部３２は機器１５からログを収集する（Ｓ２０）。
【００８５】
ログ収集部３２は、収集したログを最小単位時間で集計する（Ｓ３０）。すなわち、例えば、１５分単位でジョブの実行回数をカウントする。集計結果は集計ログＤＢ３００１に記憶される。
【００８６】
ログ収集部３２は、集計結果を集計結果集約サーバ１３に送信する（Ｓ４０）。
【００８７】
図８は、集計結果集約サーバ１３が集計結果を管理者ＰＣ１２に送信する手順を示すフローチャート図の一例である。図８の手順は、管理者ＰＣ１２で解析結果表示ボタン５０８が押下され、管理者ＰＣ１２から解析要求を受信した場合にスタートする。
【００８８】
集計結果集約サーバ１３の通信部２１は管理者ＰＣ１２から検索条件を取得する（Ｓ１０）。検索条件は、解析結果画面５０１の対象テナント指定欄５０２、集計種別欄５０３、タイムゾーン欄５０４、集計単位欄５０５、期間指定欄５０６及び表示条件欄５０７で設定された内容である。
【００８９】
集計処理部２２は、検索条件で集計結果ＤＢ１００１を検索する（Ｓ２０）。現地時刻に変換する集計結果を減らすため、まず、対象テナント指定欄５０２、集計種別欄５０３、及び、期間指定欄５０６の入力内容で検索する。
【００９０】
次に、集計処理部２２は、タイムゾーン欄５０４の検索条件が「現地時刻に合わせる」であるか否かを判定する（Ｓ３０）。
【００９１】
ステップＳ３０の判定がＹｅｓの場合、集計処理部２２はステップＳ２０で検索に適合したレコードのTenant_ID及びOffice_IDに対応するTimezoneを顧客ＤＢ１００２から読み出す（Ｓ４０）。
【００９２】
そして、時刻変換部２３は、集計結果の各レコードのＵＴＣ時刻をステップＳ４０で読み出したタイムゾーンに従って現地時刻に変換する（Ｓ５０）。
【００９３】
一方、ステップＳ３０の判定がＮｏの場合、時刻変換部２３はステップＳ２０で検索に適合したレコードのＵＴＣ時刻をタイムゾーン欄５０４で指定されたタイムゾーンの現地時刻に変換する（Ｓ６０）。
【００９４】
次に、集計処理部２２は、表示条件欄５０７の入力内容に適合するレコードを抽出する（Ｓ７０）。
【００９５】
次に、集計処理部２２は、ステップＳ７０で抽出したレコードを集計単位欄５０５の入力内容に従って解析する（Ｓ８０）。
【００９６】
通信部２１は、以上の解析結果を管理者ＰＣ１２に送信する（Ｓ９０）。すなわち、現地時刻に変換された日付（Date）、Tenant_ID、Office_ID、ステップＳ８０で解析した値（count）、及び、現地時刻の算出に用いたタイムゾーン（ＵＴＣ時刻との差分）を管理者ＰＣ１２に送信する。
【００９７】
以上により、図４又は５の解析結果画面５０１が管理者ＰＣ１２に表示される。
【００９８】
＜集計仕様の指示＞
管理者等は最小単位時間及び集計対象のジョブを各ローカルサーバ１４に指示することができる。図９は、管理者ＰＣ１２に表示される集計仕様画面６０１の一例を示す。集計仕様画面６０１は、管理者等が集計結果集約サーバ１３の所定のＵＲＬにアクセスし、サーバ部２５が集計仕様画面６０１のＨＴＭＬデータを管理者ＰＣ１２に送信することで表示される。
【００９９】
集計仕様画面６０１は、集計対象ジョブ種別６０２、最小単位時間６０３、及び、編集６０４の各フィールドを有している。編集６０４のフィールドには「変更・削除」ボタン６０５が表示される。管理者等が「変更・削除」ボタン６０５を押下すると、集計対象ジョブ種別６０２及び最小単位時間６０３について変更や削除が可能な画面に集計仕様画面６０１は遷移する。従って、管理者等は任意の最小単位時間に変更できる。また、集計対象のジョブを削除できる。なお、最小単位時間については下限値及び上限値が定められており、下限値と上限値の範囲でのみ入力できる。
【０１００】
また、集計仕様画面６０１は仕様追加ボタン６０６を有している。管理者等が仕様追加ボタン６０６を押下すると、集計対象ジョブ種別６０２を追加できる画面に集計仕様画面６０１は遷移する。従って、管理者等は集計対象のジョブを増やすことができる。
【０１０１】
例えば、タイムゾーンが新たに作成されそのタイムゾーンのＵＴＣ時刻との差分が５分である場合、管理者等が最小単位時間を１５分から５分に変更する。これにより、集計結果のＵＴＣ時刻がどのタイムゾーンの現地時刻に変換されても、ジョブの実行回数を適切に集計することが可能になる。
【０１０２】
また、例えば、タイムゾーンが廃止され、ＵＴＣ時刻との差分の最小値が３０分になった場合、管理者等が最小単位時間を１５分から３０分に変更する。これにより、ローカルサーバ１４に送信される集計結果のレコード数は半分になるので、ローカルサーバ１４と集計結果集約サーバ１３との間の通信量を低減できる。また、集計結果集約サーバ１３が集計結果を記憶するための記憶領域を圧迫しにくくなる。
【０１０３】
＜タイムゾーンの取得＞
また、本実施形態では、集計結果集約サーバ１３が顧客ＤＢ１００２でタイムゾーンを管理していると説明したが、ローカルサーバ１４がタイムゾーンを集計結果集約サーバ１３に送信してもよい。
【０１０４】
【表６】
2017010398.tif 000008
表６は、集計ログＤＢ３００１に記憶される集計結果を示す。表６の集計結果では、表２と比べて「Timezone」が追加されている。この集計結果は集計結果集約サーバ１３に送信されるので、集計結果にタイムゾーンが含まれる場合、集計結果集約サーバ１３が顧客ＤＢ１００２でタイムゾーンを管理する必要がない。
【０１０５】
ローカルサーバ１４が保持するタイムゾーンについて説明する。一般に、ローカルサーバ１４は正しい現地時刻を表示するためＮＴＰサーバに定期的にアクセスしてＮＴＰサーバからＵＴＣ時刻を取得している。ローカルサーバ１４はＵＴＣ時刻を現地時刻に変換するため、予めタイムゾーンに関する情報を有している。従って、ＮＴＰサーバから時刻を取得する機能があれば、そのタイムゾーンに関する情報を取得して、集計結果集約サーバ１３に送信できる。
【０１０６】
なお、タイムゾーンに関する情報は記憶部３０００に記憶されている。あるいは、例えばログ収集部３２が、タイムゾーンに関する情報を機器１５から取得してもよいし、サービス利用企業１１内のアクセス可能な装置から取得してもよい。
【０１０７】
このように各サービス利用企業１１のローカルサーバ１４からタイムゾーンを取得した集計結果集約サーバ１３は最小単位時間を動的に変更できる。
【０１０８】
図１０は、集計結果集約サーバ１３が最小単位時間を変更する手順を示すフローチャート図の一例である。
【０１０９】
集計結果集約サーバ１３の通信部２１は集計結果を受信する（Ｓ１０）。
【０１１０】
集計仕様管理部２４は、全てのローカルサーバ１４から集計結果を受信したか否かを判定する（Ｓ２０）。全てのローカルサーバ１４から集計結果を受信したと見なせる十分な期間の集計結果があればよい。
【０１１１】
次に、集計仕様管理部２４は、各ローカルサーバ１４から送信された全てのタイムゾーンのうち、ＵＴＣ時刻に対する差分が最も小さい単位時間を決定する（Ｓ３０）。まず、単位時間の算出方法の一例を説明する。例えば、単位時間の候補として６０分、３０分、２０分、１５分、１０分、５分、２分、１分が予め用意されている。集計仕様管理部２４は、ＵＴＣ時刻との差分を上記の候補の大きい順に割り、割り切れた場合に、該候補を単位時間に決定する。例えば、ＵＴＣ＋９：００の場合、９×６０＝５４０分は６０で割り切れるので、単位時間は６０である。ＵＴＣ＋８：４５の場合、８×６０＋４５＝５２５分は１５で初めて割り切れるので、単位時間は１５である。単位時間６０、１５のうち小さいのは１５なので、１５分が最も小さい単位時間（最小単位時間）である。
【０１１２】
集計仕様管理部２４は、ステップＳ３０で決定した単位時間を最小単位時間として、ローカルサーバ１４に送信する（Ｓ４０）。ローカルサーバ１４は最小単位時間を最小単位時間ＤＢ３００３に記憶させる。
【０１１３】
このような最小単位時間の決定方法によれば、集計結果集約サーバ１３がローカルサーバ１４の実際のタイムゾーンに基づき最小単位時間を決定できる。例えば、世界的には１５分が最小単位時間でも、サービス利用企業１１の拠点が存在する場所のタイムゾーンに関して、最小単位時間が３０分であれば、ローカルサーバ１４は集計結果のデータサイズを低減できる。
【０１１４】
以上説明したように、本実施例のログ集計システム１００は、各ローカルサーバ１４が最小単位時間でログを集計するので、集計結果を現地時刻の適切な時間帯に含めて集計できる。
【０１１５】
また、ローカルサーバ１４から集計結果集約サーバ１３へ送信される集計結果のデータサイズが最小単位時間によって低減されているので、サービス利用企業１１が集計結果を集計結果集約サーバ１３に送信する際の通信量を低減できる。
【実施例２】
【０１１６】
本実施例では、機器１５が実施例１のローカルサーバ１４の機能を有するログ集計システム１００について説明する。すなわち、本実施例ではサービス利用企業１１にローカルサーバ１４がなく各機器１５（第一情報処理装置）がそれぞれ集計結果を送信する。
【０１１７】
図１１は、本実施例のログ集計システム１００の機能ブロック図の一例を示す。本実施例において、図３において同一の符号を付した構成要素は同様の機能を果たすので、主に本実施例の主要な構成要素についてのみ説明する場合がある。本実施例では記憶部３０００に機器用プログラム３２００が記憶されている。
【０１１８】
図１１のログ収集部３２は自機内からログを収集する。機器１５内では、ジョブが終了するごとに、ログが生成されているのでログ収集部３２はなくてもよい。そして、ログ集計部３３は、最小単位時間ごとにログを集計する。従って、ローカルサーバ１４が行う場合とほぼ相違はなく、機器１５がログを集計し集計結果を集計結果集約サーバ１３に送信できる。
【０１１９】
本実施例では、サービス利用企業１１にとってローカルサーバ１４の設置が不要になるためコストを削減できる。
【実施例３】
【０１２０】
本実施例では移動可能な機器１５のログを集計可能なログ集計システム１００について説明する。
【０１２１】
図１２は、タイムゾーンを越えた機器１５の移動を説明する図の一例である。サービス利用企業１がタイムゾーン１からタイムゾーン２に移動している。このような移動は、オフィスの引っ越しなどで生じうる。サービス利用企業１の機器Ｃもタイムゾーン２に移動する。
【０１２２】
また、機器Ｃがモバイル機器である場合、サービス利用企業１が移動しなくても、機器Ｃだけがタイムゾーン１からタイムゾーン２に移動する場合がある。例えば、普段はサービス利用企業１に勤務するユーザが、モバイル機器としての機器Ｃを携帯して出張などによりタイムゾーン２に移動する場合などである。
【０１２３】
これらの場合、機器Ｃのログは、機器Ｃが使用された場所の現地時刻で集計されることが好ましいので、機器ＣのログのＵＴＣ時刻はタイムゾーン２に基づいて現地時刻に変換されるべきである。
【０１２４】
そこで、本実施例では、機器Ｃが位置情報を検出してローカルサーバ１４又は集計結果集約サーバ１３に送信する。集計結果集約サーバ１３は機器Ｃの位置情報に基づきタイムゾーンを判定できる。従って、集計結果集約サーバ１３は機器Ｃが使用された場所のタイムゾーンの現地時刻に集計結果のＵＴＣ時刻を変換できる。
【０１２５】
なお、モバイル機器とは、スマートフォン、タブレット端末、ウェアラブルＰＣ、又は、ノートＰＣ等である。また、モバイル機器のログには、例えば所定のアプリを用いた画像データの印刷など、機器のジョブ実行に係る処理が記録される。
【０１２６】
＜機能について＞
図１３は、本実施例のログ集計システム１００の機能ブロック図の一例を示す。図１３では機器１５の機能ブロックが示されている。なお、機器１５のハードウェア構成は、機器１５の種類によって様々であるが、少なくとも情報処理装置としての機能を有するものとする。
【０１２７】
機器１５は、通信部４１と位置検出部４２を有する。通信部４１は、例えば、無線ＬＡＮ、Bluetooth（登録商標）、ＮＦＣ（Near Field Communication）、ＬＴＥ（Long Term Evolution）などの無線通信を利用して、ローカルサーバ１４又は集計結果集約サーバ１３と各種データを送受信する。機器１５がローカルサーバ１４を介さずにログを集計結果集約サーバ１３に送信する場合、機器１５は最小単位時間でログを集計している。
【０１２８】
位置検出部４２は、ＧＮＳＳ（Global Navigation Satellite System）受信装置などにより実現され、機器１５の現在位置を取得する。現在位置は、ＩＭＥＳ（Indoor Messaging System）により検出されてもよいし、周囲の設備が送信するビーコンにより検出されてもよいし、基地局からの電波強度を利用した三角測量などにより検出されてもよい。
【０１２９】
また、本実施例の集計結果集約サーバ１３はタイムゾーン判定部２６を有している。タイムゾーン判定部２６は、図２のＣＰＵ３０１等により実現され、位置情報からタイムゾーンを判定する。タイムゾーン判定部２６はタイムゾーンで区切られた世界地図を有しており、位置情報に含まれる緯度・経度がどのタイムゾーンに含まれるかを判定する。
【０１３０】
＜動作手順＞
図１４は、本実施例において集計結果集約サーバ１３がログを集計する手順を示すフローチャート図の一例である。図１４において図７との相違点を主に説明する。ステップＳ１０〜Ｓ３０までの処理は図７と同様である。
【０１３１】
次に、ステップＳ３０の判定がＹｅｓの場合、タイムゾーン判定部２６は、集計結果のレコードに位置情報が添付されているか否かを判定する（Ｓ３２）。
【０１３２】
ステップＳ３２の判定がＹｅｓの場合、タイムゾーン判定部２６はレコードに添付された位置情報に基づきタイムゾーンを判定する（Ｓ３４）。
【０１３３】
ステップＳ３２の判定がＮｏの場合、実施例１と同様に顧客ＤＢ１００２からタイムゾーンが読み出される。
【０１３４】
従って、ログに位置情報が添付されている場合、顧客ＤＢ１００２に登録されているタイムゾーンよりも優先して位置情報に基づくタイムゾーンを採用できる。これにより、移動可能な機器１５に関し、ログが生成された場所のタイムゾーンに基づいてＵＴＣ時刻を現地時刻に変換できる。
【０１３５】
＜その他の適用例＞
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１３６】
例えば、上記の実施例１〜３では拠点を示すOffice_idを単位として集計や解析が行われているが、機器１５ごとに集計を行ってもよい。この場合、機器１５を一意に識別するためのdevice_idを機器１５がログと共にローカルサーバ１４に送信すればよい。これにより、解析結果画面５０１には、Tenant_id、Office_id及びdevice_idに対応づけて、集計結果（count）が表示される。
【０１３７】
また、図１５に示すように、ある地域ごとにデータセンター１６が配置されていてもよい。図１５は、ログ集計システム１００の構成図の一例である。データセンター１６はいくつかのサービス利用企業１１から送信された集計結果をまとめて集計結果集約サーバ１３に送信する。これにより、サービス利用企業１１がローカルサーバ１４を用意する必要性を低減したり、集計結果集約サーバ１３の負荷を低減したりできる。
【０１３８】
また、以上の実施例で示した図３などの構成例は、集計結果集約サーバ１３及びローカルサーバ１４の処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。すなわち、集計結果集約サーバ１３及びローカルサーバ１４の処理は、処理内容に応じてさらに多くの処理単位に分割することもできる。また、１つの処理単位がさらに多くの処理を含むように分割することもできる。
【０１３９】
また、記憶部１０００の各データベースを集計結果集約サーバ１３が有している必要はなく、集計結果集約サーバ１３がアクセス可能な場所にあればよい。記憶部３０００の各データベースをローカルサーバ１４が有している必要はなく、ローカルサーバ１４がアクセス可能な場所にあればよい。
【符号の説明】
【０１４０】
１１      サービス利用企業
１３      集計結果集約サーバ
１４      ローカルサーバ
２１      通信部
２２      集計処理部
２３      時刻変換部
２４      集計仕様管理部
２５      サーバ部
２６      タイムゾーン判定部
３１      通信部
３２      ログ収集部
３３      ログ集計部
４２      位置検出部
１００    ログ集計システム
【先行技術文献】
【特許文献】
【０１４１】
【特許文献１】特開２０１４‐１６４５４６号公報
【図１】
2017010398.tif 000009
【図２】
2017010398.tif 000010
【図３】
2017010398.tif 000011
【図４】
2017010398.tif 000012
【図５】
2017010398.tif 000013
【図６】
2017010398.tif 000014
【図７】
2017010398.tif 000015
【図８】
2017010398.tif 000016
【図９】
2017010398.tif 000017
【図１０】
2017010398.tif 000018
【図１１】
2017010398.tif 000019
【図１２】
2017010398.tif 000020
【図１３】
2017010398.tif 000021
【図１４】
2017010398.tif 000022
【図１５】
2017010398.tif 000023