(57)【要約】【課題】  ログデータに基づく利用状況を洩れなく集計できる情報処理システム、情報処理端末、方法およびプログラムを提供すること。【解決手段】  情報処理端末が実行した処理を集計する情報処理システムであって、処理を一意に識別できるように付与された番号と処理の内容とを関連付けたログを記録する処理記録部３１２と、記録されたログおよび情報処理端末が実行した処理数を定期的に送信するデータ送信部３１３と、送信された処理数の値およびログに含まれる番号に基づいて、当該ログの整合性を判定するテーブル判定部３２３と、テーブル判定部３２３が整合していると判定した場合にログを集計する集計部３２５とを含む。【選択図】  図３
2018156499.tif 000002
【特許請求の範囲】
【請求項１】
情報処理端末が実行した処理を集計する情報処理システムであって、
前記処理を一意に識別できるように付与された番号と、前記処理の内容とを関連付けたログを記録する記録手段と、
前記記録された前記ログおよび前記情報処理端末が実行した処理数を定期的に送信する送信手段と、
前記送信された前記処理数の値および前記ログに含まれる前記番号に基づいて、当該ログの整合性を判定する判定手段と、
前記判定手段が整合していると判定した場合に、前記ログを集計する集計手段と
を含む情報処理システム。
【請求項２】
所定時間の経過後に、前記番号のカウントをリセットする、請求項１に記載の情報処理システム。
【請求項３】
前記判定手段が、前記送信された処理数と前記送信された前記ログとが整合しないと判定した場合に、前記情報処理端末に対して前記ログの再送信を要求する要求手段を含む、請求項１または２に記載の情報処理システム。
【請求項４】
処理を実行する情報処理端末と、前記実行した処理を集計する情報処理装置とを含む情報処理システムであって、
前記情報処理端末は、
前記処理を一意に識別できるように付与された番号と、前記処理の内容とを関連付けたログを記録する記録手段と、
前記記録された前記ログおよび前記情報処理端末が実行した処理数を、前記情報処理装置に対して定期的に送信する送信手段と
を含み、前記情報処理装置は、
前記情報処理端末から送信された前記処理数の値および前記ログに含まれる前記番号に基づいて、当該ログの整合性を判定する判定手段と、
前記判定手段が整合していると判定した場合に、前記ログを集計する集計手段と
を含む、情報処理システム。
【請求項５】
処理を実行する情報処理端末であって、
前記処理を識別する番号と、前記処理の内容とを関連付けたログを記録する記録手段と、
前記記録された前記ログおよび前記実行した処理数を、前記実行した処理を集計する情報処理装置に対して定期的に送信する送信手段と
を含む、情報処理端末。
【請求項６】
所定時間の経過後に、前記識別する番号のカウントをリセットする、請求項５に記載の情報処理端末。
【請求項７】
情報処理端末が実行した処理を集計する方法であって、
前記処理を一意に識別できるように付与された番号と、前記処理の内容とを関連付けたログを記録するステップと、
前記記録された前記ログを定期的に送信するステップと、
前記情報処理端末が実行した処理数を定期的に送信するステップと、
前記送信された前記処理数の値および前記ログに含まれる前記番号に基づいて、当該ログの整合性を判定するステップと、
前記判定するステップにおいて整合していると判定した場合に、前記ログを集計するステップと
を含む方法。
【請求項８】
所定時間の経過後に、前記番号のカウントをリセットする、請求項７に記載の方法。
【請求項９】
前記判定するステップにおいて、前記送信された処理数と前記送信された前記ログとが整合しないと判定した場合に、前記情報処理端末に対して前記ログの再送信を要求するステップを含む、請求項７または８に記載の方法。
【請求項１０】
情報処理端末が実行した処理を集計する情報処理装置が実行するプログラムであって、
前記情報処理装置を
前記実行した処理を一意に識別できるように付与された番号と、当該処理の内容とを関連付けたログ、および前記情報処理端末が実行した処理数の値を定期的に取得する取得手段、
前記取得した前記処理数の値および前記ログに含まれる前記番号に基づいて、当該ログの整合性を判定する判定手段、
前記判定手段が整合していると判定した場合に、前記ログを集計する集計手段
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理端末、方法およびプログラムに関する。
【背景技術】
【０００２】
デバイスやサービスの利用に伴って課金が発生するシステムは、広く実用化されている。このように課金などを行う場合には、利用状況を厳密に集計する必要があることから、種々のロスト対策が行われている。例えば、データベースにはトランザクションが実装されるなどして、データに対する一貫性や書き込みが担保されている。
【０００３】
一方、近年では、端末などの利用状況を逐次取得できることから、ログデータが注目されている。ログデータは、トランザクションのような機能を有しないデータベースで、ロストすることを前提としたシステムで扱われる。また、情報処理装置の高性能化に伴って、端末が出力するログデータを利用して、端末の利用状況を収集する技術が開発されている。
【０００４】
例えば、特開２００７−３２３４６３号公報（特許文献１）では集計対象をグループ分けして、グループデータに基づき、動作履歴を収集すべき期間を決定し、当該期間のログデータを収集する技術が開示されている。特許文献１によれば、複数の装置からログデータを収集する場合に、通信トラフィックを抑制することができる。
【０００５】
しかしながら、特許文献１では、書き込みエラーや転送エラーによってログデータがロストした場合には、動作履歴の集計を行うことができない。したがって、課金などのように厳密性が要求されるデータを、ログデータから集計する技術が求められていた。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、上記従来技術における課題に鑑みてなされたものであり、ログデータに基づく利用状況を洩れなく集計できる情報処理システム、情報処理端末、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
すなわち、本発明によれば、
情報処理端末が実行した処理を集計する情報処理システムであって、
前記処理を一意に識別できるように付与された番号と、前記処理の内容とを関連付けたログを記録する記録手段と、
前記記録された前記ログおよび前記情報処理端末が実行した処理数を定期的に送信する送信手段と、
前記送信された前記処理数の値および前記ログに含まれる前記番号に基づいて、当該ログの整合性を判定する判定手段と、
前記判定手段が整合していると判定した場合に、前記ログを集計する集計手段と
を含む情報処理システムが提供される。
【発明の効果】
【０００８】
上述したように、本発明によれば、ログデータに基づく利用状況を洩れなく集計できる情報処理システム、情報処理端末、方法およびプログラムが提供される。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態における情報処理システム全体のハードウェアの概略構成を示す図。
【図２】本実施形態の中継サーバに含まれるハードウェア構成を示す図。
【図３】本実施形態の情報処理システムに含まれるソフトウェアブロック図。
【図４】本実施形態の情報処理端末が履歴ログを記録する処理のフローチャート。
【図５】本実施形態における情報処理端末の履歴ログの例を示す図。
【図６】本実施形態の情報処理端末がデータを送信する処理を示すフローチャート。
【図７】本実施形態の中継サーバがデータを集計する処理を示すフローチャート。
【図８】本実施形態におけるジョブテーブルおよび最終シーケンス番号テーブルの例を示す図。
【図９】本実施形態における集計データテーブルの例を示す図。
【発明を実施するための形態】
【００１０】
以下、本発明を、実施形態をもって説明するが、本発明は後述する実施形態に限定されるものではない。なお、以下に参照する各図においては、共通する要素について同じ符号を用い、適宜その説明を省略するものとする。
【００１１】
図１は、本発明の実施形態における情報処理システム１００全体のハードウェアの概略構成を示す図である。図１では、例として、種々の情報処理端末１１０と、中継サーバ１２０としての情報処理装置と、クラウドサーバ１３０としての情報処理装置とが、ネットワークを介して接続された環境を例示している。情報処理端末１１０の例として、タブレット端末１１０ａ、パーソナルコンピュータ１１０ｂ、画像形成装置１１０ｃなどを挙げることができる。
【００１２】
情報処理端末１１０は、ローカルネットワークにおいて中継サーバ１２０と接続されている。ローカルネットワークでは、各情報処理端末の機能を実行するための種々のデータ通信を行うとともに、各情報処理端末の利用状況などのログデータを中継サーバ１２０に提供する。また、中継サーバ１２０は、インターネット１４０を介してクラウドサーバ１３０と接続されており、各種サービスの提供を受けるほか、各情報処理端末から提供されたログデータなどをクラウドサーバ１３０に転送する。
【００１３】
なお、本実施形態の情報処理システム１００に含まれる各装置の台数は、図１に示したものに限らず、情報処理システム１００に含まれる台数に制限はない。さらに、情報処理システム１００は、複数のローカルネットワークを含んで構成されてもよい。また、各装置間においてネットワークへ接続する方法は、有線または無線のどちらでもよい。
【００１４】
次に、本実施形態の各装置のハードウェア構成について説明する。図２は、本実施形態の中継サーバ１２０に含まれるハードウェア構成を示す図である。なお、図２では、中継サーバ１２０としての情報処理装置を例に説明するが、情報処理端末１１０やクラウドサーバ１３０のハードウェア構成も同様であることから、その説明は省略する。中継サーバ１２０は、ＣＰＵ２０１と、ＲＡＭ２０２と、ＲＯＭ２０３と、記憶装置２０４と、通信Ｉ／Ｆ２０５と、モニタ２０６と、入力装置２０７とを含んで構成され、各ハードウェアはバスを介して接続されている。
【００１５】
ＣＰＵ２０１は、中継サーバ１２０の動作を制御するプログラムを実行し、所定の処理を行う装置である。ＲＡＭ２０２は、ＣＰＵ２０１が実行するプログラムの実行空間を提供するための揮発性の記憶装置であり、プログラムやデータの格納用、展開用として使用される。ＲＯＭ２０３は、ＣＰＵ２０１が実行するプログラムやファームウェアなどを記憶するための不揮発性の記憶装置である。
【００１６】
記憶装置２０４は、中継サーバ１２０を機能させるＯＳや各種アプリケーション、設定情報、各種データなどを記憶する、読み書き可能な不揮発性の記憶装置である。通信Ｉ／Ｆ２０５は、中継サーバ１２０とネットワークとを接続し、ネットワークを介して、情報処理端末１１０やクラウドサーバ１３０との通信を可能にする。ネットワークを介した通信は、有線通信または無線通信のいずれであってもよく、ＴＣＰ／ＩＰなどの所定の通信プロトコルを使用し、各種データを送受信できる。
【００１７】
モニタ２０６は、各種データや中継サーバ１２０の状態などを、表示する装置であり、例として、ＬＣＤ（Liquid Crystal Display）などが挙げられる。入力装置２０７は、中継サーバ１２０を操作するための装置であり、例として、キーボード、マウスなどが挙げられる。
【００１８】
以上、本実施形態の各装置に含まれるハードウェア構成について説明した。次に、本実施形態における各ハードウェアによって実行される機能手段について、図３を以て説明する。図３は、本実施形態の情報処理システム１００に含まれるソフトウェアブロック図である。
【００１９】
本実施形態の情報処理端末１１０は、処理実行部３１１と、処理履歴記録部３１２と、データ送信部３１３とを含む。本実施形態の中継サーバ１２０は、データ取得部３２１と、データ記録部３２２と、テーブル判定部３２３と、再送要求部３２４と、集計部３２５とを含む。本実施形態のクラウドサーバ１３０は、集計データ管理部３３１を含む。以下に、各機能手段の詳細について説明する。
【００２０】
まず、情報処理端末１１０について説明する。処理実行部３１１は、情報処理端末１１０が有する各種機能を実行する手段である。例えば、ネットワークへの接続、データのダウンロード、印刷、コピー、スキャンなどが挙げられ、サービスの内容に応じて、利用料金が発生することもある。
【００２１】
処理履歴記録部３１２は、情報処理端末１１０が実行した各種処理のログデータを、履歴ログとして記録する手段である。履歴ログについての詳細は後述するが、例えば、実行した処理を識別するＩＤ（以下、シーケンス番号として参照する）、日時、処理内容、ユーザ名、課金の有無などを関連付けて記録することができる。シーケンス番号は、例えば連番で付与することによって、処理数を示す値とすることができる。
【００２２】
データ送信部３１３は、記録された履歴ログを中継サーバ１２０に送信する手段である。データを送信するタイミング（以下、送信スパンとして参照する）は、情報処理端末１１０の機能に応じて任意に設定することができ、例えば、毎正時（１時間ごと）、毎日午前０時（１日ごと）、毎週月曜日午前０時（１週間ごと）などのように所定の時間を設定して、定期的に送信することができる。
【００２３】
また、データ送信部３１３は、中継サーバ１２０によって設定された集計を行うタイミング（以下、集計スパンとして参照する）に応じて、当該集計スパン内に行われた処理数の値を中継サーバ１２０に送信する。さらに、データ送信部３１３は、中継サーバ１２０からの要求に応じて、履歴ログを送信することができる。例えば、中継サーバ１２０から指定されたシーケンス番号のログの送信要求があった場合には、当該シーケンス番号に対応する履歴ログを送信する。
【００２４】
次に、中継サーバ１２０およびクラウドサーバ１３０について説明する。データ取得部３２１は、情報処理端末１１０が送信した履歴ログを受信し、取得する手段である。取得したログデータは、データ記録部３２２に提供される。データ記録部３２２は、情報処理端末１１０から取得したログデータを、実行した処理内容に応じてテーブルとして記録する手段である。データ記録部３２２では、例えば、受信した処理の履歴ログを、ジョブテーブルとして記録できる。
【００２５】
テーブル判定部３２３は、データ記録部３２２が記録したテーブルについて、履歴の記録洩れがないかなどの整合性を判定する手段である。テーブル判定部３２３は、例えば、シーケンス番号の連続性に基づいて記録の洩れを判定することができる。再送要求部３２４は、テーブル判定部３２３において、ログデータの記録洩れなどがあったと判定された場合に、情報処理端末１１０に対して、洩れのあったログデータの再送信を要求する手段である。
【００２６】
集計部３２５は、テーブルに記録されたログデータを集計する手段である。テーブルを集計するタイミングは、集計スパンとして設定される。集計スパンは、サービスによって任意に設定することができ、例えば、毎日午前０時（１日ごと）、毎週月曜日午前０時（１週間ごと）、毎月１日午前０時（１か月ごと）などのように所定の時間を設定して、定期的に集計することができる。集計された結果は、ネットワークを介してクラウドサーバ１３０へ送信される。なお、集計スパンは、送信スパンよりも長いことが好ましい。
【００２７】
クラウドサーバ１３０の集計データ管理部３３１は、中継サーバ１２０から送信された集計結果をデータベースに保存する手段である。集計データ管理部３３１が管理するデータベースは、例えば、トランザクション処理のあるリレーショナルデータベースである。なお、本実施形態の説明では、中継サーバ１２０とクラウドサーバ１３０とを別にして説明しているが、本発明を限定するものではなく、例えば、中継サーバ１２０とクラウドサーバ１３０の機能を併せたサーバ装置であってもよい。
【００２８】
なお、上述したソフトウェアブロックは、各装置のＣＰＵ２０１が本実施形態のプログラムを実行することで、各ハードウェアを機能させることにより、実現される機能手段に相当する。また、各実施形態に示した機能手段は、全部がソフトウェア的に実現されても良いし、その一部または全部を同等の機能を提供するハードウェアとして実装することもできる。
【００２９】
以上、本実施形態の情報処理システム１００に含まれるソフトウェアブロックについて説明した。以下では、本実施形態の情報処理システム１００が実行する具体的な処理について説明する。なお、以下の説明では、送信スパンを毎正時に送信する１時間ごと、集計スパンを毎日午前０時に集計する１日ごとである場合を例に説明するが、一例であって、これら以外の期間であってもよい。図４は、本実施形態の情報処理端末１１０が履歴ログを記録する処理のフローチャートである。
【００３０】
情報処理端末１１０は、ステップＳ１０００から処理を開始する。そしてステップＳ１００１で、処理実行部３１１による各種処理の実行があったかを判定する。処理が実行されていない場合（ＮＯ）には、ステップＳ１００１に戻り、判定処理を繰り返すことで、処理の実行を待機する。処理が実行された場合（ＹＥＳ）には、ステップＳ１００２に進む。
【００３１】
ステップＳ１００２では、履歴ログを参照し、前回行われた処理から日付が変わっているか、すなわち、前回の処理と同一の集計スパンの期間内であるか否かを判定する。日付が変わっている場合（ＹＥＳ）には、ステップＳ１００３に処理を分岐する。ステップＳ１００３では、シーケンス番号を１として設定（Ｎ＝１）して、ステップＳ１００５に進む。
【００３２】
ステップＳ１００２の処理で日付が変わっていないと判定された場合（ＮＯ）には、ステップＳ１００４に処理を分岐する。ステップＳ１００４では、シーケンス番号を、前回行われた処理のシーケンス番号に１を足して設定（Ｎ＝Ｎ＋１）し、ステップＳ１００５に進む。
【００３３】
ステップＳ１００５では、処理履歴記録部３１２は、実行した処理内容を履歴ログに記録する。履歴ログは、一例として、図５に示すような情報が含まれる。図５は、本実施形態における情報処理端末１１０の履歴ログの例を示す図である。履歴ログには、例えば、日時、シーケンス番号、処理内容、ユーザ名、実行した処理が課金対象であるか否かを示す課金対象識別フラグ、処理ステータスなどが関連付けられて記録される。
【００３４】
図５に示す例では、日時が「２０１７年１月１日午前９時」、シーケンス番号が「１」、処理が「印刷」、ユーザ名が「ｕｓｅｒ００１」、課金対象識別フラグが「課金対象」、処理ステータスが「ＯＫ」という情報が関連付けられている。同様に、他の日時についてもこれらの情報が関連付けられて記録されている。
【００３５】
履歴ログの処理ステータスは、処理内容に応じて種々の選択肢から選択できる。例えば、印刷処理のように回数をカウントする処理であれば、処理を実行するごとに処理ステータスを「ＯＫ」とできる。また、接続処理のように時間をカウントする処理であれば、接続開始処理を実行した場合には処理ステータスを「ＢＥＧＩＮ」とし、接続終了処理を実行した場合には処理ステータスを「ＥＮＤ」とできる。
【００３６】
履歴ログのシーケンス番号は、ステップＳ１００３で集計スパン経過後にリセットされ、処理を実行するごとに１ずつ増加することから、「２０１７年１月１日」では、各処理に対して１から１０まで連番で付与される。また、「２０１７年１月２日」では、シーケンス番号がリセットされて１から付与される。このように、日付が変わったか場合には、履歴ログに付与するシーケンス番号をリセットし、日付が変わっていない場合には、前回のシーケンス番号に１を足すことで、同じ集計スパンの期間内で連続したシーケンス番号を、処理ごとに一意に付与できる。したがって、処理ごとに異なるシーケンス番号が与えられ、シーケンス番号に基づいて、集計スパンの期間内の履歴ログの洩れを判定することができる。
【００３７】
なお、図５に示す履歴ログの例では、課金非対象の処理を含んでいてもよい。例えば、シーケンス番号「２」のように、利用に伴って料金が発生しない処理では、課金対象識別フラグを「課金非対象」として記録できる。また、シーケンス番号「７」のように、エラーの発生によって実行できなかった処理では、ステータスを「ＥＲＲＯＲ」とし、課金対象識別フラグを「ＮＵＬＬ」として記録できる。
【００３８】
説明を図４に戻す。ステップＳ１００５で履歴ログを記録した後、ステップＳ１００１に戻り、次の処理を待機する。したがって、処理が実行されるごとに、上述の処理を繰り返す。
【００３９】
上述した図４の処理によって、情報処理端末１１０は図５に示すような履歴ログを記録することができる。次に、上述の処理によって記録された履歴ログを送信する処理について説明する。図６は、本実施形態の情報処理端末１１０がデータを送信する処理を示すフローチャートである。
【００４０】
情報処理端末１１０はステップＳ２０００から処理を開始し、ステップＳ２００１で送信スパンが経過したか否かを判定する。本実施形態の例では、毎正時を基準として６０分が経過していれば、前回の送信したタイミングから送信スパンとして設定された期間が経過したものと判定される。前回の送信から６０分が経過した場合（ＹＥＳ）には、処理をステップＳ２００２に分岐する。
【００４１】
ステップＳ２００２では、データ送信部３１３は、前回送信したタイミングから６０分間に実行された処理についての履歴ログを中継サーバ１２０に送信する。ステップＳ２００２で履歴ログを送信した後は、ステップＳ２００１に戻る。
【００４２】
ステップＳ２００１で、前回の送信から６０分が経過していないと判定された場合（ＮＯ）には、ステップＳ２００３に進む。ステップＳ２００３では、集計スパンが経過したか否かを判定する。本実施形態の例では、毎日０時に集計することから、日付が変わったか否かを判定することで、集計スパンとして設定された期間の経過を判定できる。日付が変わった場合（ＹＥＳ）には、ステップＳ２００４に分岐する。
【００４３】
ステップＳ２００４では、データ送信部３１３は、直前の集計スパンの期間内の最終シーケンス番号を中継サーバ１２０に送信する。したがって、本実施形態の例では、前日の処理の最終シーケンス番号である「１０」を送信する。ステップＳ２００４で最終シーケンス番号を送信した後は、ステップＳ２００１に戻る。
【００４４】
ステップＳ２００３で、日付が変わっていないと判定した場合（ＮＯ）には、ステップＳ２００５に進む。ステップＳ２００５では、中継サーバ１２０から最終シーケンス番号の履歴ログの送信要求があったか否かを判定する。中継サーバ１２０は、集計スパンの期間内の最終シーケンス番号と、中継サーバ１２０が保持する履歴ログとを照合し、一致しない場合には最終シーケンス番号の履歴ログの送信を要求する。したがって、ステップＳ２００５で送信要求があった場合（ＹＥＳ）には、ステップＳ２００６に進む。
【００４５】
ステップＳ２００６では、データ送信部３１３は、指定された集計スパンの最終シーケンス番号の履歴ログを中継サーバ１２０に送信する。ステップＳ２００６で要求のあったログを送信した後は、ステップＳ２００１に戻る。
【００４６】
ステップＳ２００５で送信要求がなかった場合（ＮＯ）には、ステップＳ２００７に進む。ステップＳ２００７では、中継サーバ１２０から履歴ログの再送要求があったか否かを判定する。中継サーバ１２０は、履歴ログの集計時に、履歴ログの洩れなどがあったと判定した場合には、情報処理端末１１０に対して、シーケンス番号に基づいて履歴ログの再送を要求する。したがって、ステップＳ２００７で中継サーバ１２０から再送要求があったと判定した場合（ＹＥＳ）には、ステップＳ２００８に進む。ステップＳ２００８では、データ送信部３１３は、指定されたシーケンス番号の履歴ログを中継サーバ１２０に送信し、ステップＳ２００１に戻る。
【００４７】
ステップＳ２００７でログ再送要求がないと判定した場合（ＮＯ）には、ステップＳ２００１に戻り、上述したＳ２００１からＳ２００８の処理を繰り返す。
【００４８】
図６の処理を行うことで、情報処理端末１１０は履歴ログを中継サーバ１２０に送信できる。ここまで、情報処理端末１１０が行う処理について、図５および図６を以て説明した。次に中継サーバ１２０が行う処理について図７を以て説明する。図７は、本実施形態の中継サーバ１２０がデータを集計する処理を示すフローチャートである。
【００４９】
中継サーバ１２０はステップＳ３０００から処理を開始する。その後、ステップＳ３００１で、データ取得部３２１が情報処理端末１１０から履歴ログを受信したか否かを判定する。図６で説明したように、履歴ログは送信スパンが経過するごとに送られる（ステップＳ２００１，Ｓ２００２）ことから、本実施例では６０分ごとに受信する。履歴ログを受信していない場合（ＮＯ）には、ステップＳ３００１に戻り、処理を繰り返すことで、履歴ログの受信を待機する。履歴ログを受信した場合（ＹＥＳ）には、ステップＳ３００２に進む。
【００５０】
ステップＳ３００２では、データ記録部３２２が受信した履歴ログをジョブテーブルに記録する。また、ステップＳ３００２では、取得した履歴ログのうち最も大きなシーケンス番号を、最終シーケンス番号テーブルに記録する。
【００５１】
ここで、ステップＳ３００２で記録される各種テーブルについて図８を以て説明する。図８は、本実施形態におけるジョブテーブルおよび最終シーケンス番号テーブルの例を示す図であり、図８（ａ）はジョブテーブルを、図８（ｂ）は最終シーケンス番号テーブルをそれぞれ示す。
【００５２】
図８（ａ）に例示するジョブテーブルは、図５に示す履歴ログに基づいて記録されており、シーケンス番号、日付、時刻、処理内容、ユーザＩＤ、処理ステータスが対応付けられて記録される。
【００５３】
また、図８（ｂ）に例示する最終シーケンス番号テーブルは、日付と、端末名と、最終シーケンス番号とが関連付けて記録される。最終シーケンス番号テーブルは、履歴ログを受信することによって更新され、受信した履歴ログに含まれる最も大きなシーケンス番号を、日付ごとに最終シーケンス番号として記録する。
【００５４】
説明を図７に戻す。ステップＳ３００２で履歴ログをテーブルに記録した後、ステップＳ３００３に進む。ステップＳ３００３では、集計スパンが経過したか否かを判定する。本実施形態の例では、図６のステップＳ２００３と同様に、日付が変わったか否かを判定することで、集計スパンとして設定された期間の経過を判定できる。日付が変わっていない場合（ＮＯ）には、ステップＳ３００１に戻り、履歴ログの受信を待機する。
【００５５】
ステップＳ３００３で、日付が変わったと判定した場合（ＹＥＳ）には、ステップＳ３００４に進む。ステップＳ３００４では、テーブル判定部３２３が最終シーケンス番号の洩れがあるか否かを判定する。日付が変わった場合には、情報処理端末１１０から集計スパン期間内の最終シーケンス番号が送信される（図６のステップＳ２００４）ことから、送信された最終シーケンス番号と、最終シーケンス番号テーブルとの整合性を照合することで、最終シーケンス番号の洩れの有無を判定できる。本実施形態の例では、情報処理端末１１０が送信した最終シーケンス番号「１０」と、最終シーケンス番号テーブルの値が一致するか否かによって判定する。
【００５６】
最終シーケンス番号の洩れが発生する例としては、履歴ログの送信エラーや、データのロストなどが挙げられる。また、最終シーケンス番号テーブルに集計対象の日付のレコードがない場合なども、データがロストしたものとして判定できる。
【００５７】
さらに、送信スパンと集計スパンのタイミングによっても最終シーケンス番号の洩れが発生する場合がある。例えば、送信スパンが毎時３０分であって、集計スパンが毎日０時である場合には、２３時３０分から翌日０時までに実行された処理の履歴ログは、中継サーバ１２０に送信されないことから、この時間帯の履歴ログのシーケンス番号が洩れることになる。したがって、最終シーケンス番号に基づいて判定することで、洩れのない集計を行うことができる。
【００５８】
ステップＳ３００４で洩れがあると判定した場合（ＹＥＳ）には、ステップＳ３００５に進む。ステップＳ３００５で、中継サーバ１２０の再送要求部３２４は、情報処理端末１１０に対して最終シーケンス番号の履歴ログの再送を要求する。その後、ステップＳ３００４に戻り、最終シーケンス番号に基づく洩れの有無を判定する。
【００５９】
ステップＳ３００４で洩れがないと判定した場合（ＮＯ）には、ステップＳ３００６に進む。ステップＳ３００６では、最終シーケンス番号以外のシーケンス番号の洩れの有無を判定する。シーケンス番号の洩れの有無は、ジョブテーブルのシーケンス番号の連続性などによって判定できる。シーケンス番号の洩れは、最終シーケンス番号の洩れと同様に、履歴ログの送信エラー、データのロスト、送信スパンと集計スパンのタイミングなどによって発生する場合がある。
【００６０】
ステップＳ３００６でシーケンス番号に洩れがあると判定した場合（ＹＥＳ）には、ステップＳ３００７に進み、再送要求部３２４は、洩れているシーケンス番号の履歴ログの再送を情報処理端末１１０に対して要求する。その後、ステップＳ３００６に戻り、シーケンス番号の洩れがなくなるまで処理を繰り返す。
【００６１】
ステップＳ３００６でシーケンス番号に洩れがないと判定した場合（ＮＯ）には、ステップＳ３００８に進む。ステップＳ３００８では、集計部３２５が、ジョブテーブルに基づいて集計対象となる処理の利用状況を集計する。本実施形態の例では、集計対象の処理を、利用に伴い課金が発生する処理としている。
【００６２】
例えばジョブテーブルのうち、特定の項目を指定して集計対象とする。一例として、あらかじめ「ｕｓｅｒ００１」の「スキャン」を除外するように定義することで、課金非対象であるシーケンス番号「２」の処理を集計対象から除外できる。また、ステータスが「ＥＲＲＯＲ」である処理を除外するように定義することで、シーケンス番号「７」のようにエラーなどによって実行に失敗した処理を集計対象から除外できる。また、ジョブテーブルに課金対象識別フラグの項目を含めることで、集計対象を特定してもよい。
【００６３】
ステップＳ３００８で集計された集計結果は、一例として図９のようなテーブルにまとめられる。図９は、本実施形態における集計データテーブルの例を示す図である。
【００６４】
図９に示すように、本実施形態の集計データテーブルには、日付と、端末名と、処理内容と、ユーザＩＤと、利用単位に応じた課金分類と、集計値とが関連付けられてまとめられる。利用単位に応じた課金分類は、利用回数や利用時間など処理内容による集計の対象を示す。例えば、印刷処理であれば、印刷した回数を集計し、接続処理であれば、接続した時間を秒単位で集計する。集計値は、課金対象の処理を実行した単位数を集計したものである。図８（ａ）の例では、２０１７年１月１日にuser001は印刷処理を５回行っていることから、図９における印刷処理の集計値は５となる。
【００６５】
また、図８（ａ）の例における接続処理は、２０１７年１月１日の１２時から１４時と、同日２０時から翌日１時まで行われている。したがって、図９における接続処理の集計結果では、１２時から１４時までの７２００秒と、２０時から２４時までの１４４００秒を合わせた２１６００秒が２０１７年１月１日の集計値となり、２０１７年１月２日の０時から１時までの３６００秒が、２０１７年１月２日の集計値となる。
【００６６】
説明を図７に戻す。ステップＳ３００８の処理によって、集計対象となる処理の利用状況を集計し、図９に例示したような集計データを作成する。その後、ステップＳ３００９で、作成した集計結果をクラウドサーバ１３０に送信する。クラウドサーバ１３０は、受信した集計結果を集計データテーブルとして、集計データ管理部３３１に記録する。中継サーバ１２０は、ステップＳ３００９で集計結果を送信した後、ステップＳ３００１に戻り、履歴ログの受信を待機する。
【００６７】
上述した図７の処理のように、集計スパン内で一意に付与されたシーケンス番号に基づいて洩れを判定できる。さらに、洩れがないことを判定したうえで集計することで、中継サーバ１２０は、履歴ログに基づいて利用状況の洩れがない集計を行うことができる。
【００６８】
以上、説明した本発明の実施形態によれば、ログデータに基づく利用状況を洩れなく集計できる情報処理システム、情報処理端末、方法およびプログラムを提供することができる。
【００６９】
上述した本発明の実施形態の各機能は、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等で記述された装置実行可能なプログラムにより実現でき、本実施形態のプログラムは、ハードディスク装置、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、フレキシブルディスク、ＥＥＰＲＯＭ、ＥＰＲＯＭ等の装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
【００７０】
以上、本発明について実施形態をもって説明してきたが、本発明は上述した実施形態に限定されるものではなく、当業者が推考しうる実施態様の範囲内において、本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【００７１】
１００…情報処理システム、１１０…情報処理端末、１２０…中継サーバ、１３０…クラウドサーバ、１４０…インターネット、２０１…ＣＰＵ、２０２…ＲＡＭ、２０３…ＲＯＭ、２０４…記憶装置、２０５…通信Ｉ／Ｆ、２０６…モニタ、２０７…入力装置、３１１…処理実行部、３１２…処理履歴記録部、３１３…データ送信部、３２１…データ取得部、３２２…データ記録部、３２３…テーブル判定部、３２４…再送要求部、３２５…集計部、３３１…集計データ管理部
【先行技術文献】
【特許文献】
【００７２】
【特許文献１】特開２００７−３２３４６３号公報
【図１】
2018156499.tif 000003
【図２】
2018156499.tif 000004
【図３】
2018156499.tif 000005
【図４】
2018156499.tif 000006
【図５】
2018156499.tif 000007
【図６】
2018156499.tif 000008
【図７】
2018156499.tif 000009
【図８】
2018156499.tif 000010
【図９】
2018156499.tif 000011