(57)【要約】【課題】容易かつ適切にログを集約し得るログ分析支援システムを提供する。【解決手段】ログのデータ項目のデータを分類可能な適用対象が規定されている集約条件要素情報に基づいて、分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目を集約の条件として特定する特定部と、特定部により特定された集約の条件を出力する出力部とを設けるようにした。【選択図】図１
2020072382.tif 000002
【特許請求の範囲】
【請求項１】
ログのデータ項目のデータを分類可能な適用対象が規定されている集約条件要素情報に基づいて、分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目を集約の条件として特定する特定部と、
前記特定部により特定された集約の条件を出力する出力部と、
を備えることを特徴とするログ分析支援システム。
【請求項２】
前記特定部により特定された集約の条件を集約条件情報として記憶する記憶部と、
前記記憶部に記憶された集約条件情報に基づいてログを集約するログ集約部と、
を備えることを特徴とする請求項１に記載のログ分析支援システム。
【請求項３】
前記特定部は、前記集約条件要素情報に基づいて、前記分析対象に係るログから、特定したデータ項目の値をパラメータとして特定し、
前記記憶部は、前記特定部により特定された集約の条件とパラメータと前記集約の条件に係る適用対象とを対応付けて集約条件情報として記憶する、
ことを特徴とする請求項２に記載のログ分析支援システム。
【請求項４】
前記集約条件要素情報の適用対象には、集約の条件の判定を行うプログラムが対応付けられており、
前記ログ集約部は、前記特定部により特定された集約の条件に係る適用対象に対応付けられているプログラムを実行して分析対象のログから前記集約の条件を満たすログを集約の対象として抽出する、
ことを特徴とする請求項２に記載のログ分析支援システム。
【請求項５】
前記特定部は、ログが集約された集約後ログのデータ項目のデータを分類可能な適用対象が規定されている集約後項目要素情報に基づいて、前記分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目を、データ項目の値を算出する算出対象として特定し、
前記記憶部は、前記特定部により特定された算出対象のデータ項目と前記データ項目に係る適用対象とを対応付けて集約後項目情報として記憶する、
ことを特徴とする請求項２に記載のログ分析支援システム。
【請求項６】
前記集約後項目要素情報の適用対象には、前記適用対象に係るデータ項目の値の計算を行うプログラムが対応付けられており、
前記ログ集約部は、前記特定部により特定された算出対象のデータ項目に係る適用対象に対応付けられているプログラムを実行して前記データ項目の値を計算する、
ことを特徴とする請求項５に記載のログ分析支援システム。
【請求項７】
分析対象のログとして、端末のログを取得するログ取得部を備える、
ことを特徴とする請求項２に記載のログ分析支援システム。
【請求項８】
前記分析対象に係るログとして、管理用端末を介して選択されたログの情報を受け付ける受付部を備える、
ことを特徴とする請求項１に記載のログ分析支援システム。
【請求項９】
前記出力部は、前記特定部により特定された集約の条件を集約条件候補として管理用端末に出力し、
前記集約条件候補の中から、前記管理用端末を介して選択された集約の条件を受け付ける受付部と、
前記受付部で受け付けられた集約の条件を集約条件情報として記憶する記憶部と、
前記記憶部に記憶された集約条件情報に基づいてログを集約するログ集約部と、
を備えることを特徴とする請求項１に記載のログ分析支援システム。
【請求項１０】
前記記憶部は、前記ログ集約部によりログが集約された集約後ログを記憶し、
前記特定部は、前記集約条件要素情報に基づいて、前記記憶部に記憶されている分析対象に係る集約後ログのデータ項目のうち、適用対象に対応するデータ項目を集約の条件として特定する、
ことを特徴とする請求項２に記載のログ分析支援システム。
【請求項１１】
前記ログ集約部は、前記分析対象のログから、前記特定部により特定された集約の条件の全てを満たすログと前記集約の条件の一部を満たすログとを集約の対象として抽出する、
ことを特徴とする請求項２に記載のログ分析支援システム。
【請求項１２】
特定部が、ログのデータ項目のデータを分類可能な適用対象が規定されている集約条件要素情報に基づいて、分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目を集約の条件として特定する第１のステップと、
出力部が、前記特定部により特定された集約の条件を出力する第２のステップと、
を備えることを特徴とするログ分析支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログ分析支援システムおよびログ分析支援方法に関する。
【背景技術】
【０００２】
近年、標的型攻撃による機密情報、顧客情報等の漏えい、ランサムウェア拡散によるシステム破壊とそれに伴うサービス停止など、活発化するサイバー犯罪による様々な被害が報告されている。外部からのサイバー攻撃では、ウェブサイト、電子メール等を経由してマルウェアを送り込み、システムの脆弱性をつくなどして権限を得て攻撃を進めるなどの手法が使われる。
【０００３】
また、組織の内部者の不正行為によるセキュリティインシデントも大きな問題となっている。複数の組織で内部不正の事例が報道されており、内部不正が発生した組織は、信用失墜、多額の損害賠償など、大きな被害を受けている。このような状況を受け、内部不正の対策への関心が高まっている。
【０００４】
こういった攻撃では、特定の組織に特化してカスタマイズされたマルウェアが利用されたり、権限を持つ組織の内部者による不正操作が行われたりするため、アンチウィルスソフト等を用いてマルウェアの侵入を検知するなどの従来型の対策では効果が不十分になりつつある。そのため、各種ログを収集し、総合的に状況を分析することで、攻撃の状況を把握して適切な対策をとることが重要とされる。しかしながら、こういった手口では、特徴的なログ、マルウェアなどが攻撃を検知する手がかりとなることも多いが、特に組織の内部者による不正の場合、内部者は、最初から権限を持っていることも多く、また不正行為と通常業務との違いも明らかではないため、外部からのサイバー攻撃と同様の手法では不正を捉えることが難しい。
【０００５】
ここで、ＳＩＥＭ（Security Information and Event Management）など、ログの分析に適した製品も存在するが、内部不正の分析のノウハウを持っている組織は多くはなく、ログの活用が困難という問題を抱えている。スキルおよび設備の不足により、膨大なログを分析しようとすると多大な労力が必要になり、有意義な情報を得られずに終わってしまう。
【０００６】
そこで重要になるのが、膨大なログを適度に集約し、解釈、再利用しやすい形で扱えるようにする技術である。この点、ＩＴ（Information Technology）システムにおけるアカウンタビリティの確保を目的とし、特定の条件に合致する単位でログを上位概念に集約して報告する技術が開示されている（特許文献１参照）。かかる技術では、個別のログでは解釈が困難であるところを、あらかじめ有意味な単位を規定しておき、それに沿った形でレポート化することで、着目点が明瞭になり、ログを解釈しやすくなる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第４６６７３５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に記載の技術は、事前に設定した特定の条件に合致する単位でログの集約を行うものである。この集約単位およびその条件は、あらかじめ設定しておく必要があり、また原則として固定である。この手法は、特定の条件下では有効であると考えられるが、実運用上は、適切な集約単位およびその条件は、ログ分析の目的、手法、扱うログの性質、利用可能なログの項目、計算機リソース、人的リソースなど、様々な要因により左右されると考えられる。このため、組織ごと、局面ごとに柔軟に調整できることが望ましい。これを人手で実現しようとすると、カスタマイズに大変な労力が必要となり、現実的でない。
【０００９】
本発明は以上の点を考慮してなされたもので、容易かつ適切にログを集約し得るログ分析支援システムを提案しようとするものである。
【課題を解決するための手段】
【００１０】
かかる課題を解決するため本発明においては、ログのデータ項目のデータを分類可能な適用対象が規定されている集約条件要素情報に基づいて、分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目を集約の条件として特定する特定部と、前記特定部により特定された集約の条件を出力する出力部と、を設けるようにした。
【００１１】
上記構成では、例えば、分析対象に係るログを指定すること等の簡易な操作により、分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目が集約の条件として特定されて出力される。また、例えば、分析対象のデータ項目の名称が変更されたとしても、データの分類が同じである場合は、当該データ項目が集約の条件として適切に特定される。
【発明の効果】
【００１２】
本発明によれば、容易かつ適切にログを集約することができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態によるログ分析支援システムに係る構成の一例を示す図である。
【図２】第１の実施の形態によるサーバのハードウェア構成の一例を示す図である。
【図３】第１の実施の形態による未集約ログ情報の一例を示す図である。
【図４】第１の実施の形態による集約後ログ情報の一例を示す図である。
【図５】第１の実施の形態による集約後ログ詳細情報の一例を示す図である。
【図６】第１の実施の形態による集約条件要素情報の一例を示す図である。
【図７】第１の実施の形態による集約後項目要素情報の一例を示す図である。
【図８】第１の実施の形態による集約条件情報の一例を示す図である。
【図９】第１の実施の形態による集約後項目情報の一例を示す図である。
【図１０】第１の実施の形態による集約テンプレート情報の一例を示す図である。
【図１１】第１の実施の形態によるログ集約処理に係るフローチャートの一例を示す図である。
【図１２】第１の実施の形態による集約テンプレート更新処理に係るフローチャートの一例を示す図である。
【図１３】第１の実施の形態による集約テンプレートの更新に係る入出力の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下図面について、本発明の一実施の形態を詳述する。以下の実施の形態では、主に、ログ分析にあたり、運用の中で蓄積される知見を活用して、少ない労力で様々な要件に適するよう、ログの集約単位を調整することができる構成について説明する。ただし、本発明は、以下の実施の形態に限定されることなく、種々の変形、応用などをした構成をとり得るものである。
【００１５】
なお、以下の説明では、同種の要素を区別しないで説明する場合には、枝番を含む参照符号のうちの共通部分（枝番を除く部分）を使用し、同種の要素を区別して説明する場合は、枝番を含む参照符号を使用することがある。例えば、操作対象を特に区別しないで説明する場合には、「操作対象３０４」と記載し、個々の操作対象を区別して説明する場合には、「第１の操作対象３０４＿１」、「第２の操作対象３０４＿２」のように記載することがある。
【００１６】
（１）第１の実施の形態
図１において、１は全体として第１の実施の形態によるログ分析支援システムを示す。
（システム構成例）
図１は、ログ分析支援システム１に係る構成の一例を示す図である。以下では、ログ分析支援システム１が、サーバ１００にインストールされた、サーバ１００上で動作する複数のプログラムおよびサーバ１００に保存された複数のデータを含んで構成される例を挙げて説明する。サーバ１００は、一または複数の端末１２０（端末１２０＿Ｎと表記。）および管理用端末１３０の各々とネットワーク１４０を介して通信可能に接続されている。
【００１７】
サーバ１００は、例えば、一または複数のユーザ１５０（ユーザ１５０＿Ｎと表記。）が利用する端末１２０＿Ｎのログ、ネットワーク１４０に係る機器（例えば、スイッチ、ルータ、ファイアウォール）のログ、サーバ１００自身のログなどを管理者１６０が分析するために用いるコンピュータである。
【００１８】
サーバ１００の機能（記憶部１０１、ログ取得部１０２、ログ集約部１０３、テンプレート更新部１０４、通信部１０５など）は、例えば、図２に示すＣＰＵ（Central Processing Unit）２０１が記憶装置２０３に格納されたプログラムをメモリ２０２に読み出して実行すること（ソフトウェア）により実現されてもよいし、専用の回路などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、サーバ１００の機能の一部は、サーバ１００と通信可能な他のコンピュータにより実現されてもよい。
【００１９】
記憶部１０１は、未集約ログ情報１１１、集約後ログ情報１１２、集約後ログ詳細情報１１３、集約条件要素情報１１４、集約後項目要素情報１１５、集約条件情報１１６、集約後項目情報１１７、および集約テンプレート情報１１８を管理（例えば、後述の記憶装置２０３に記憶）する。
【００２０】
未集約ログ情報１１１は、内部または外部の装置のログ（例えば、サーバ１００のログ、端末１２０＿Ｎのログ、ネットワーク１４０に係る機器のログ）の情報である。
【００２１】
集約後ログ情報１１２は、集約ログ情報１１１に格納されているログの一部が集約されて置き換えられた情報である。
【００２２】
集約後ログ詳細情報１１３は、集約後ログ情報１１２に含まれる情報のうち、集約されたログ（集約後ログ）の詳細情報である。
【００２３】
集約条件要素情報１１４は、未集約ログ情報１１１および集約後ログ情報１１２に格納されたログを集約するためのテンプレート（集約テンプレート）を作成するための基本要素となる情報であり、分析対象となるログの識別条件（抽象化した識別条件）に関する情報である。集約条件要素情報１１４には、例えば、ログのデータ項目（ログ項目）のデータを分類可能な適用対象（例えば、データの種類）が規定されている。データの種類としては、例えば、分類（数データ、文字データなど）、データ型（INTEGER、CHARACTERなど）、データ型コード（２４１（１０進数）、１９７（１０進数）など）、データ格納長（８バイト、ｎバイトなど）、データ形式（整数、固定長文字列など）が挙げられる。
【００２４】
集約後項目要素情報１１５は、集約テンプレートを作成するための基本要素となる情報であり、集約後ログのデータ項目の値を算出する算出方法（抽象化した算出方法）に関する情報である。
【００２５】
集約条件情報１１６は、集約条件要素情報１１４に格納された抽象化した識別条件について、当該識別条件を適用する対象とするログ項目および識別の規準となるパラメータを指定するための識別条件（具体化した識別条件）である。
【００２６】
集約後項目情報１１７は、集約後項目要素情報１１５に格納された抽象化した算出方法について、当該算出方法の入力となるログ項目および集約後のログ項目の名称を指定するための算出方法（具体化した算出方法）に関する情報である。
【００２７】
集約テンプレート情報１１８は、未集約ログ情報１１１に格納されたログを集約するための情報（集約テンプレート）と、集約後ログ情報１１２に格納されたログを集約するための情報（集約テンプレート）とを含み得る情報である。
【００２８】
これらの情報の一例については、図３〜図１０を用いて後述する。
【００２９】
ログ取得部１０２は、例えば、端末１２０＿Ｎで発生した各種ログを、通信部１０５を介して取得し、未集約ログ情報１１１として記憶部１０１を介して格納する。なお、ログ取得部１０２は、端末１２０＿Ｎに指示を送信してログを取得してもよいし、端末１２０＿Ｎから適宜のタイミング（ログの発生時、定期的など）に送信されるログを受信することで取得してもよいし、その他の方法により取得してもよい。
【００３０】
ログ集約部１０３は、例えば、集約条件要素情報１１４、集約後項目要素情報１１５、集約条件情報１１６、集約後項目情報１１７、および集約テンプレート情報１１８を参照し、未集約ログ情報１１１のログを集約し、集約後ログ情報１１２および集約後ログ詳細情報１１３として記憶部１０１を介して格納する。また、ログ集約部１０３は、例えば、集約条件要素情報１１４、集約後項目要素情報１１５、集約条件情報１１６、集約後項目情報１１７、および集約テンプレート情報１１８参照し、集約後ログ情報１１２の集約後ログを集約し、集約後ログ情報１１２および集約後ログ詳細情報１１３として記憶部１０１を介して格納する。
【００３１】
テンプレート更新部１０４は、例えば、分析対象に係るログ（例えば、管理者１６０により選択されたログ、管理者１６０により作成されたログ、管理者１６０により収集されたログ）に基づいて、集約条件情報１１６、集約後項目情報１１７、および集約テンプレート情報１１８を更新する。また、テンプレート更新部１０４は、例えば、集約条件情報１１６、集約後項目情報１１７、および集約テンプレート情報１１８を更新する候補案を作成して管理者１６０に提示し、更に管理者１６０の判断に基づいて、集約条件情報１１６、集約後項目情報１１７、および集約テンプレート情報１１８を更新する。
【００３２】
より具体的には、テンプレート更新部１０４は、特定部１０６と、出力部１０７と、受付部１０８とを備える。
【００３３】
特定部１０６は、例えば、集約条件要素情報１１４に基づいて、分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目を集約の条件として特定する。
【００３４】
出力部１０７は、例えば、特定部１０６により特定された集約の条件を出力する。ここで、出力とは、図２に示す出力装置２０６への出力であってもよいし、通信部１０５を介して管理用端末１３０に送信するものであってもよいし、予め設定された電子メールアドレスへの電子メールの送信であってもよいし、記憶部１０１を介して記録するものであってもよいし、その他の出力であってもよい。管理者１６０は、出力された集約の条件を把握することで、運用に合うように集約の条件を調整することが容易にできるようになる。
【００３５】
受付部１０８は、例えば、分析対象に係るログとして、管理用端末１３０を介して選択されたログの情報を受け付ける。管理者１６０は、例えば、取得されたデータの中から、分析対象としたいログを選択することで、集約の条件を得ることができるようになる。
【００３６】
また、出力部１０７は、特定部１０６により特定された集約の条件を集約条件候補として管理用端末１３０に出力し、受付部１０８は、集約条件候補の中から、管理用端末１３０を介して選択された集約の条件を受け付ける。かかる構成によれば、運用を鑑み、集約の条件をより適切に調整することができる。
【００３７】
通信部１０５は、ネットワーク１４０を介して端末１２０＿Ｎと通信を行う。また、通信部１０５は、ネットワーク１４０を介して管理用端末１３０と通信を行う。
【００３８】
端末１２０＿Ｎの機能（通信部１２１、ログ収集部１２２、入出力部１２３など）は、例えば、図示は省略するＣＰＵが記憶装置に格納されたプログラムをメモリに読み出して実行すること（ソフトウェア）により実現される。通信部１２１は、ネットワーク１４０を介してサーバ１００と通信を行う。ログ収集部１２２は、端末１２０＿Ｎで行われた操作、処理などに係る情報（時刻、操作種別、操作対象、プロセス名など）を収集し、ログとして記録する。入出力部１２３は、ユーザ１５０＿Ｎによる操作を受け付け可能なインターフェイスを介してデータの入力および出力を行う。
【００３９】
管理用端末１３０の機能（通信部１３１、入出力部１３２など）は、例えば、図示は省略するＣＰＵが記憶装置に格納されたプログラムをメモリに読み出して実行すること（ソフトウェア）により実現される。通信部１３１は、ネットワーク１４０を介してサーバ１００と通信を行う。入出力部１３２は、管理者１６０による操作を受け付け可能なインターフェイスを介してデータの入力および出力を行う。
【００４０】
（ハードウェア構成例）
次に、サーバ１００のハードウェア構成について説明する。図２は、サーバ１００のハードウェア構成の一例を示す図である。
【００４１】
サーバ１００は、ＣＰＵ２０１、メモリ２０２、記憶装置２０３、通信装置２０４、入力装置２０５、出力装置２０６、およびバス２０７を含んで構成される。
【００４２】
ＣＰＵ２０１は、中央演算装置であり、メモリ２０２または記憶装置２０３に保持しているプログラムを実行することで、サーバ１００に必要な機能を実装するものである。メモリ２０２は、ＣＰＵ２０１が処理を実行する際に利用する主記憶装置であり、ＲＡＭ（Random Access Memory）などの揮発性記憶素子で構成される。記憶装置２０３は、ＣＰＵ２０１に入力する入力データ、ＣＰＵ２０１から出力される出力データを記憶するための補助記憶装置であり、ハードディスクドライブ、ＳＳＤ（Solid State Drive）など適宜な不揮発性記憶素子で構成される。通信装置２０４は、サーバ１００が外部の装置との通信を行うために用いる通信装置であり、ネットワークインターフェイスカード（ＮＩＣ：Network Interface Card）などで構成される。入力装置２０５は、操作者からの入力を受け付けるインターフェイスであり、キーボード、タッチパネル、カードリーダ、音声入力装置などで構成される。出力装置２０６は、操作者に対してデータの出力を行うインターフェイスであり、ディスプレイ、スピーカー、プリンタなどで構成される。バス２０７は、ＣＰＵ２０１、メモリ２０２、記憶装置２０３、通信装置２０４、入力装置２０５、および出力装置２０６を接続する通信路である。
【００４３】
（データ構成例）
次に、ログ分析支援システム１が利用するデータについて説明する。
【００４４】
図３は、未集約ログ情報１１１の一例（未集約ログテーブル３００）を示す図である。未集約ログテーブル３００は、端末１２０＿Ｎから送信されたログ（ログデータ）を格納するためのテーブルである。未集約ログテーブル３００は、ログＩＤ（identification）３０１、時刻３０２、操作種別３０３、第１の操作対象３０４＿１、第２の操作対象３０４＿２、およびプロセス名３０５をデータ項目として有する。
【００４５】
ログＩＤ３０１は、ログ（各レコード）に対してユニークに割り当てられた識別情報である。時刻３０２は、ログに対して設定された、当該ログが記録された時刻である。操作種別３０３は、当該ログの操作種別を示す。操作種別としては、例えば、ファイルを開く、ファイルを更新する、ファイルをコピーする、通信する、などの操作が挙げられる。操作対象３０４は、当該操作に係るパラメータの値を格納する項目である。例えば、操作種別３０３がファイルコピーである場合、第１の操作対象３０４＿１は、コピー元のファイルパス、第２の操作対象３０４＿２は、コピー先のファイルパスなどが相当する。プロセス名３０５は、当該ログが記録される原因となった操作（処理）を行ったプロセスの名称である。
【００４６】
本実施の形態では、端末１２０＿Ｎで取得され、サーバ１００に送信されるログデータに含まれるデータ項目を、ログＩＤ３０１、時刻３０２、操作種別３０３、操作対象３０４、プロセス名３０５として未集約ログテーブル３００の構成例として示した。しかしながら、これらのデータ項目は、取得可能なログ項目に応じて適当に変更してよい。また、端末１２０＿Ｎで取得されたログに限らず、サーバ１００内のログ、ネットワーク１４０上の機器のログ等を用いてもよい。また、複数種類のログを用いる場合、未集約ログテーブル３００に相当するテーブルを複数用意し、ログを種類ごとに別々のテーブルに格納する構成としてもよい。
【００４７】
なお、ログの集約の対象を端末１２０単位とする場合、未集約ログテーブル３００は、端末１２０毎に設けられてもよいし、未集約ログテーブル３００のデータ項目として端末ＩＤ（端末１２０に対してユニークに割り当てられた識別情報）が設けられてもよい。
【００４８】
図４は、集約後ログ情報１１２の一例（集約後ログテーブル４００）を示す図である。集約後ログテーブル４００は、未集約ログテーブル３００に格納されているログの一部が集約されて置き換えられた結果を格納するテーブルである。集約後ログテーブル４００は、ログＩＤ４０１、時刻４０２、および操作種別４０３をデータ項目として有する。
【００４９】
ログＩＤ４０１は、ログに対してユニークに割り当てられた識別情報、または集約後ログに対してユニークに割り当てられた識別情報である。時刻４０２は、ログが記録された時刻、または集約後ログが記録された時刻である。なお、集約後ログについては、集約後ログを代表するログが記録された時刻である。操作種別４０３は、ログの操作種別、または集約後ログの操作種別を示す。
【００５０】
図５は、集約後ログ詳細情報１１３の一例（集約後ログ詳細テーブル５００）を示す図である。集約後ログ詳細テーブル５００は、集約後ログテーブル４００に含まれるログのうち、集約後ログの詳細情報を格納するテーブルである。集約後ログ詳細テーブル５００は、ログＩＤ５０１、ログ項目５０２、および値５０３をデータ項目として有する。
【００５１】
ログＩＤ５０１は、集約後ログテーブル４００に格納された集約後ログと当該集約後ログの詳細情報とを紐づけるための識別情報である。ログ項目５０２は、当該集約後ログの持つデータ項目の名称（項目名）である。値５０３は、当該集約後ログの持つデータ項目の値である。
【００５２】
図６は、集約条件要素情報１１４の一例（集約条件要素テンプレートテーブル６００）を示す図である。集約条件要素テンプレートテーブル６００は、集約テンプレートを作成するための基本要素となる情報であり、分析対象となるログの識別条件（抽象化した識別条件）に関する情報を格納するためのテーブルである。集約条件要素テンプレートテーブル６００は、条件要素ＩＤ６０１、適用対象６０２、説明６０３、および計算用コード６０４をデータ項目として有する。
【００５３】
条件要素ＩＤ６０１は、集約の条件の要素（集約条件要素テンプレートテーブル６００の各レコード）に対してユニークに割り当てられた識別情報である。適用対象６０２は、当該条件の判定が可能なデータの種類である。説明６０３は、当該条件の内容の説明である。計算用コード６０４は、当該条件の判定を行うためのプログラムの格納場所を示す。
【００５４】
図７は、集約後項目要素情報１１５の一例（集約後項目要素テンプレートテーブル７００）を示す図である。集約後項目要素テンプレートテーブル７００は、集約テンプレートを作成するための基本要素となる情報であり、集約後のログ項目の算出方法（抽象化した算出方法）に関する情報を格納するためのテーブルである。集約後項目要素テンプレートテーブル７００は、項目要素ＩＤ７０１、適用対象７０２、説明７０３、および計算用コード７０４をデータ項目として有する。
【００５５】
項目要素ＩＤ７０１は、データ項目の要素（集約後項目要素テンプレートテーブル７００の各レコード）に対してユニークに割り当てられた識別情報である。適用対象７０２は、当該データ項目の値の算出が可能なデータの種類である。説明７０３は、当該データ項目の値の算出方法の説明である。計算用コード７０４は、当該データ項目の値を算出するためのプログラムの格納場所を示す。
【００５６】
図８は、集約条件情報１１６の一例（集約条件テーブル８００）を示す図である。集約条件テーブル８００は、集約条件要素テンプレートテーブル６００に格納された抽象化した識別条件について、当該識別条件を適用する対象とするログ項目および識別の規準となるパラメータを指定するための識別条件（具体化した識別条件）を格納するためのテーブルである。集約条件テーブル８００は、条件ＩＤ８０１、対象８０２、集約条件要素８０３、適用対象項目８０４、およびパラメータ８０５をデータ項目として有する。
【００５７】
条件ＩＤ８０１は、集約の具体的な条件（集約条件テーブル８００の各レコード）に対してユニークに割り当てられた識別情報である。対象８０２は、当該条件による識別の対象となるログの種別を示すものである。集約条件要素８０３は、当該条件の判定方法を規定する、集約条件要素テンプレートテーブル６００に格納されたテンプレートを指定する値である。この値は、条件要素ＩＤ６０１に基づいて設定される。適用対象項目８０４は、当該条件の判定対象となるログ項目の項目名を指定する値である。パラメータ８０５は、当該条件の判定基準となる具体値を指定するものである。
【００５８】
図９は、集約後項目情報１１７の一例（集約後項目テーブル９００）を示す図である。集約後項目テーブル９００は、集約後項目要素テンプレートテーブル７００に格納された抽象化した算出方法について、当該算出方法の入力となるログ項目および集約後のログ項目の名称を指定するための算出方法（具体化した算出方法）に関する情報を格納するためのテーブルである。集約後項目テーブル９００は、項目ＩＤ９０１、対象９０２、集約後項目要素９０３、適用対象項目９０４、および新規項目名９０５をデータ項目として有する。
【００５９】
項目ＩＤ９０１は、集約対象の具体的なデータ項目（集約後項目テーブル９００の各レコード）に対してユニークに割り当てられた識別情報である。対象９０２は、当該データ項目の値の算出方法への情報の入力源となるログの種別を示すものである。集約後項目要素９０３は、当該算出方法を規定する、集約後項目要素テンプレートテーブル７００に格納されたテンプレートを指定する値である。この値は、項目要素ＩＤ７０１に基づいて設定される。適用対象項目９０４は、当該算出方法への情報の入力源となるログ項目を指定する値である。新規項目名９０５は、当該算出方法により算出した値の、集約後のログ項目の項目名を指定するものである。
【００６０】
図１０は、集約テンプレート情報１１８の一例（集約テンプレートテーブル１０００）を示す図である。集約テンプレートテーブル１０００は、集約テンプレートを格納するためのテーブルである。集約テンプレートテーブル１０００は、集約ＩＤ１００１、操作種別１００２、集約条件１００３、および集約後項目１００４をデータ項目として有する。
【００６１】
集約ＩＤ１００１は、集約テンプレート（集約テンプレートテーブル１０００の各レコード）に対してユニークに割り当てられた識別情報である。操作種別１００２は、集約後ログに割り当てられる新たな操作種別の名称である。集約条件１００３は、当該集約テンプレートが集約対象とするログを識別するための条件を指定する。この条件については、集約条件テーブル８００に格納された条件を、条件ＩＤ８０１により指定する。集約後項目１００４は、当該集約テンプレートにより集約された後のログ項目およびその値を算出するための方法を指定する。この算出方法については、集約後項目テーブル９００に格納された算出方法を、項目ＩＤ９０１により指定する。
【００６２】
（処理のフロー例）
次に、ログの集約に係る処理（ログ集約処理）について図１１を用いて説明する。図１１は、ログ集約処理に係るフローチャートの一例を示す図である。ログ集約処理は、所定のタイミング（例えば、定期的、予め指定された時間、管理者１６０等により指示されたタイミングなど）に開始される。
【００６３】
ステップＳ１１０１では、ログ取得部１０２は、端末１２０＿Ｎからログを取得（例えば、端末１２０＿Ｎから送信されたログを受信）する。
【００６４】
ステップＳ１１０２では、ログ取得部１０２は、取得したログを未集約ログテーブル３００に格納する。
【００６５】
ログ集約部１０３は、例えば、ログ取得部１０２により未集約ログテーブル３００が更新された時に起動し、ログを集約する処理（ステップＳ１１０３〜ステップＳ１１１０）を実行する。
【００６６】
ステップＳ１１０３では、ログ集約部１０３は、集約テンプレートテーブル１０００を参照し、集約テンプレートテーブル１０００に格納されている全てのレコード（集約テンプレートの一覧）を取得する。
【００６７】
ステップＳ１１０４では、ログ集約部１０３は、取得したレコード（集約テンプレート）ごとにステップＳ１１０５〜ステップＳ１１１０の処理を行う。
【００６８】
ステップＳ１１０５では、ログ集約部１０３は、集約条件テーブル８００を参照して、集約テンプレートの集約条件１００３に対応する条件ＩＤ８０１を持つ集約条件のレコードを取得し、集約後項目テーブル９００を参照して、集約テンプレートの集約後項目１００４に対応する項目ＩＤ９０１を持つ集約後項目のレコードを取得する。
【００６９】
例えば、ログ集約部１０３は、集約ＩＤ１００１が「Ｇ１」のレコードが処理対象である場合、図１０に示すように、集約条件１００３には、「Ｓ１  ａｎｄ  Ｓ２  ａｎｄ  Ｓ３」が設定されているので、集約条件テーブル８００を参照し、条件ＩＤ８０１が「Ｓ１」のレコードと、条件ＩＤ８０１が「Ｓ２」のレコードと、条件ＩＤ８０１が「Ｓ３」のレコードとを取得する。また、集約後項目１００４には、「Ｋ１，Ｋ２，Ｋ３，Ｋ４，Ｋ５」が設定されているので、ログ集約部１０３は、集約後項目テーブル９００を参照し、項目ＩＤ９０１が「Ｋ１」のレコードと、項目ＩＤ９０１が「Ｋ２」のレコードと、項目ＩＤ９０１が「Ｋ３」のレコードと、項目ＩＤ９０１が「Ｋ４」のレコードと、項目ＩＤ９０１が「Ｋ５」のレコードとを取得する。
【００７０】
ステップＳ１１０６では、ログ集約部１０３は、集約条件要素テンプレートテーブル６００を参照して、取得した集約条件のレコードの集約条件要素８０３に対応する条件要素ＩＤ６０１を持つ集約条件要素のレコードを取得し、集約後項目要素テンプレートテーブル７００を参照して、集約後項目のレコードの集約後項目要素９０３に対応する項目要素ＩＤ７０１を持つ集約後項目要素のレコードを取得する。
【００７１】
例えば、ログ集約部１０３は、条件ＩＤ８０１が「Ｓ１」の集約条件のレコードを取得した場合、図８に示すように、集約条件要素８０３には、「Ｒ１」が設定されているので、集約条件要素テンプレートテーブル６００を参照し、条件要素ＩＤ６０１が「Ｒ１」の集約条件要素のレコードを取得する。付言するならば、ログ集約部１０３は、条件ＩＤ８０１が「Ｓ２」のレコードおよび「Ｓ３」の集約条件のレコードを取得した場合、条件要素ＩＤ６０１が「Ｒ２」の集約条件要素のレコードおよび「Ｒ３」の集約条件要素のレコードを同様に取得する。
【００７２】
また、例えば、ログ集約部１０３は、項目ＩＤ９０１が「Ｋ１」の集約後項目のレコードを取得した場合、図９に示すように、集約後項目要素９０３には、「Ｃ１」が設定されているので、集約後項目要素テンプレートテーブル７００を参照し、項目要素ＩＤ７０１が「Ｃ１」の集約後項目要素のレコードを取得する。付言するならば、ログ集約部１０３は、項目ＩＤ９０１が「Ｋ２」の集約後項目のレコードを取得した場合、項目要素ＩＤ７０１が「Ｃ２」の集約後項目要素のレコードを同様に取得し、項目ＩＤ９０１が「Ｋ３」の集約後項目のレコードおよび「Ｋ４」の集約後項目のレコードを取得した場合、項目要素ＩＤ７０１が「Ｃ３」の集約後項目要素のレコードを同様に取得し、項目ＩＤ９０１が「Ｋ５」の集約後項目のレコードを取得した場合、項目要素ＩＤ７０１が「Ｃ４」の集約後項目要素のレコードを同様に取得する。
【００７３】
ステップＳ１１０７では、ログ集約部１０３は、取得した集約条件要素のレコードの計算用コード６０４を参照し、計算用コード６０４で指定された計算用プログラムファイルにアクセスして、計算用プログラムファイルを取得し、集約後項目要素のレコードの計算用コード７０４を参照し、計算用コード７０４で指定された計算用プログラムファイルにアクセスして、計算用プログラムファイルを取得する。
【００７４】
ステップＳ１１０８では、ログ集約部１０３は、未集約ログテーブル３００を参照し、集約テンプレートテーブル１０００に格納された集約テンプレートについて、合致する箇所を探索する。より具体的には、集約テンプレートの集約条件１００３に設定された条件に基づいて、適用対象項目８０４で指定されたログ項目について、未集約ログテーブル３００を走査し、当該項目がパラメータ８０５で指定された条件を満たしているか否かを、計算用コード６０４で指定されたプログラムを実行することで判定する。
【００７５】
例えば、ログ集約部１０３は、集約ＩＤ１００１が「Ｇ１」のレコードが処理対象である場合、ステップＳ１１０５では、条件ＩＤ８０１が「Ｓ１」のレコードと「Ｓ２」のレコードと「Ｓ３」のレコードとを取得している。また、ログ集約部１０３は、ステップＳ１１０７では、計算用コード６０４で指定された計算用プログラムファイル「Ｃ：￥ｒ１．ｅｘｅ」〜「Ｃ：￥ｒ３．ｅｘｅ」を取得している。
【００７６】
ログ集約部１０３は、条件ＩＤ８０１が「Ｓ１」のレコードでは、適用対象項目８０４が「時刻」であるので、未集約ログテーブル３００の時刻３０２について、条件要素ＩＤ６０１が「Ｒ１」のレコードに示される計算用コード６０４のプログラム「Ｃ：￥ｒ１．ｅｘｅ」を実行し、得られた結果がパラメータ８０５の「ｍａｘ：１０」を満たすか否か（この例では、１０秒以内に行われている操作であるか否か）を各レコードについて判定する。
【００７７】
また、ログ集約部１０３は、条件ＩＤ８０１が「Ｓ２」のレコードでは、適用対象項目８０４が「操作種別」であるので、未集約ログテーブル３００の操作種別３０３について、条件要素ＩＤ６０１が「Ｒ２」のレコードに示される計算用コード６０４のプログラム「Ｃ：￥ｒ２．ｅｘｅ」を実行し、得られた結果がパラメータ８０５の「ファイルコピー」を満たすか否かを各レコードについて判定する。
【００７８】
また、ログ集約部１０３は、条件ＩＤ８０１が「Ｓ３」のレコードでは、適用対象項目８０４が「プロセス名」であるので、未集約ログテーブル３００のプロセス名３０５について、条件要素ＩＤ６０１が「Ｒ３」のレコードに示される計算用コード６０４のプログラム「Ｃ：￥ｒ３．ｅｘｅ」を実行し、得られた結果がパラメータ８０５の「―」を満たすか否か（この例では、プロセス名が同じであるか否か）を各レコードについて判定する。
【００７９】
上述の例では、直前に取得されたログから１０秒以内に取得されたログであり、操作種別が「ファイルコピー」であり、かつ、プロセス名が同一であることが集約の条件である。よって、本例では、ログ集約部１０３は、ログＩＤ３０１が「Ｒａｗ１」のレコードと「Ｒａｗ２」のレコードと「Ｒａｗ３」のレコードとを集約の条件（全ての条件）を満たすレコードとして特定する。
【００８０】
ただし、上述の処理に限られるものではない。例えば、集約の条件に複数の条件が設定されている場合、条件を満たす割合がしきい値より高い場合、集約の条件を満たすレコードとして特定してもよい。また、例えば、各条件に重みが設定されており（例えば、集約条件テーブル８００のデータ項目に重み項目が設けられ、重みが設定されており）、重みの合計がしきい値より高い場合、集約の条件を満たすレコードとして特定してもよい。つまり、ログ集約部１０３は、集約の条件の一部を満たすログを対象として集約してもよい。このように、集約対象のログの判定時に、一部の情報の欠落、多少の値の変動を許容することで、集約の意味合いを保ったまま、情報の不足に対して頑健性を高めることができる。
【００８１】
ステップＳ１１０９では、ログ集約部１０３は、合致箇所があるか否か（集約テンプレートの集約条件１００３に設定された集約の条件を満たす複数のログがあるか否か）を判定する。ログ集約部１０３は、合致箇所があると判定した場合、ステップＳ１１１０に処理を移し、合致箇所がないと判定した場合、未処理のレコード（集約テンプレート）があるときは処理対象を次のレコードに移し、未処理のレコードがないときは、ログ集約処理を終了する。
【００８２】
ステップＳ１１１０では、ログ集約部１０３は、条件を満たすログについて、それらを集約したログを生成し、集約後ログテーブル４００および集約後ログ詳細テーブル５００を更新し、未処理のレコード（集約テンプレート）があるときは処理対象を次のレコードに移し、未処理のレコードがないときは、ログ集約処理を終了する。
【００８３】
より具体的には、ログ集約部１０３は、集約テンプレートの集約後項目１００４に記載された内容に基づいて、適用対象項目９０４で指定されたログ項目について、条件を満たすログを参照して値を取得し、計算用コード７０４で指定されたプログラムに入力することで集約後の項目値を得る。ログ集約部１０３は、集約後ログテーブル４００に新たなレコードを作成し、ログＩＤ４０１に新規のＩＤを作成し、時刻４０２には上記条件を満たしたログのうち最も値が小さいものの時刻を格納し、操作種別４０３には操作種別１００２で指定された値を新たに格納する。また、ログ集約部１０３は、集約後ログ詳細テーブル５００には、集約後項目１００４で指定された数だけ新たなレコードを作成し、ログＩＤ５０１にはログＩＤ４０１で生成した新規のＩＤを格納し、ログ項目５０２には新規項目名９０５で指定された値を格納し、値５０３には集約後の項目値を格納する。
【００８４】
例えば、ログ集約部１０３は、集約ＩＤ１００１が「Ｇ１」のレコードが処理対象である場合、ステップＳ１１０８では、ログＩＤ３０１が「Ｒａｗ１」のレコードと「Ｒａｗ２」のレコードと「Ｒａｗ３」のレコードとを集約条件を満たすレコードとして特定している。また、ログ集約部１０３は、ステップＳ１１０５では、項目ＩＤ９０１が「Ｋ１」のレコード〜「Ｋ５」のレコードを取得している。また、ログ集約部１０３は、ステップＳ１１０７では、計算用コード７０４で指定された計算用プログラムファイル「Ｃ：￥ｃ１．ｅｘｅ」〜「Ｃ：￥ｃ４．ｅｘｅ」を取得している。
【００８５】
ログ集約部１０３は、項目ＩＤ９０１が「Ｋ１」のレコードでは、適用対象項目９０４が「時刻」であるので、「Ｒａｗ１」〜「Ｒａｗ３」のレコードの時刻３０２について、計算用コード７０４のプログラム「Ｃ：￥ｃ１．ｅｘｅ」を実行して時刻３０２の最小値「００：００：０１」を新規項目名９０５の「開始時刻」の値として取得する。
【００８６】
ログ集約部１０３は、項目ＩＤ９０１が「Ｋ２」のレコードでは、適用対象項目９０４が「時刻」であるので、「Ｒａｗ１」〜「Ｒａｗ３」のレコードの時刻３０２について、計算用コード７０４のプログラム「Ｃ：￥ｃ２．ｅｘｅ」を実行して時刻３０２の最大値「００：００：０５」を新規項目名９０５の「終了時刻」の値として取得する。
【００８７】
ログ集約部１０３は、項目ＩＤ９０１が「Ｋ３」のレコードでは、適用対象項目９０４が「第１の操作対象」であるので、「Ｒａｗ１」〜「Ｒａｗ３」のレコードの第１の操作対象３０４＿１について、計算用コード７０４のプログラム「Ｃ：￥ｃ３．ｅｘｅ」を実行して第１の操作対象３０４＿１の共通部分「Ｃ：￥ａ￥」を新規項目名９０５の「第１の操作対象」の値として取得する。
【００８８】
ログ集約部１０３は、項目ＩＤ９０１が「Ｋ４」のレコードでは、適用対象項目９０４が「第２の操作対象」であるので、「Ｒａｗ１」〜「Ｒａｗ３」のレコードの第２の操作対象３０４＿２について、計算用コード７０４のプログラム「Ｃ：￥ｃ３．ｅｘｅ」を実行して第２の操作対象３０４＿２の共通部分「Ｄ：￥ｂ￥」を新規項目名９０５の「第２の操作対象」の値として取得する。
【００８９】
ログ集約部１０３は、項目ＩＤ９０１が「Ｋ５」のレコードでは、適用対象項目９０４が「―（指定なし）」であるので、「Ｒａｗ１」〜「Ｒａｗ３」のレコードについて、計算用コード７０４のプログラム「Ｃ：￥ｃ４．ｅｘｅ」を実行して集約件数「３」を新規項目名９０５の「出現回数」の値として取得する。
【００９０】
以上が、ログ集約処理の一例である。つまり、記憶部１０１は、特定部１０６により特定された集約の条件を集約条件情報１１６として記憶し、ログ集約部１０３は、記憶部１０１に記憶された集約条件情報１１６に基づいてログを集約する。また、特定部１０６は、集約条件要素情報１１４に基づいて、分析対象に係るログから、特定したデータ項目の値をパラメータとして特定し、記憶部１０１は、特定部１０６により特定された集約の条件とパラメータと集約の条件に係る適用対象とを対応付けて集約条件情報１１６として記憶する。また、ログ集約部１０３は、特定部１０６により特定された集約の条件に係る適用対象に対応付けられているプログラムを実行して分析対象のログから集約の条件を満たすログを集約の対象として抽出する。このように、固定的な条件（例えば、適用対象、計算用プログラムファイル）と変動的な条件（例えば、パラメータ）とにより集約の条件を構成することで、集約の条件について、自由度を持たせつつ、容易に調整することができるようになる。また、例えば、管理者１６０は、抽出されたログを把握することで、自身で出力された集約の条件を用いてログを抽出するときよりも容易に分析を行うことができる。
【００９１】
また、特定部１０６は、ログが集約された集約後ログのデータ項目のデータを分類可能な適用対象が規定されている集約後項目要素情報１１５に基づいて、分析対象に係るログのデータ項目のうち、適用対象に対応するデータ項目を、データ項目の値を算出する算出対象として特定し、記憶部１０１は、特定部１０６により特定された算出対象のデータ項目とデータ項目に係る適用対象とを対応付けて集約後項目情報１１７として記憶する。また、ログ集約部１０３は、特定部１０６により特定された算出対象のデータ項目に係る適用対象に対応付けられているプログラムを実行してデータ項目の値を計算する。このように、集約後ログの値を算出することで、管理者１６０は、抽出されたログの項目値を自身で計算する必要がなく、より容易にログの分析を行うことができる。
【００９２】
次に、集約テンプレートの更新に係る処理（集約テンプレート更新処理）について図１２を用いて説明する。図１２は、集約テンプレート更新処理に係るフローチャートの一例を示す図である。
【００９３】
集約テンプレート更新処理は、例えば、管理者１６０による操作に基づいて管理用端末１３０からネットワーク１４０を経由してサーバ１００にアクセスすることを契機に開始する。テンプレート更新部１０４は、管理者１６０による指定に基づいて、未集約ログテーブル３００または集約後ログテーブル４００を参照し、格納されているログ（分析対象のログ）の一覧を管理用端末１３０に送信する。なお、図１２では、未集約ログテーブル３００を参照する場合を例に挙げて説明する。
【００９４】
ステップＳ１２０１では、管理用端末１３０は、サーバ１００から送信されたログの一覧を管理者１６０が参照して集約すべきログ（分析対象に係るログ）をログ一覧から選択した結果（選択結果）をサーバ１００に送信する。なお、入出力例については、図１３を用いて後述する。
【００９５】
ステップＳ１２０２では、テンプレート更新部１０４は、選択結果を受信し、選択されたログのデータ項目と集約条件要素テンプレートテーブル６００の適用対象６０２（集約条件要素テンプレート）との組み合わせごとに、ステップＳ１２０３〜ステップＳ１２０７の処理を行う。
【００９６】
ステップＳ１２０３では、テンプレート更新部１０４は、選択された一連のログの処理対象のデータ項目について、集約条件要素テンプレートテーブル６００の処理対象の適用対象６０２の適用を試みる。
【００９７】
例えば、テンプレート更新部１０４は、選択されたログの処理対象のデータ項目が時刻３０２であり、集約条件要素テンプレートテーブル６００の処理対象の適用対象６０２が条件要素ＩＤ６０１「Ｒ１」の「数値」である場合、処理対象の組み合わせは集約条件要素テンプレートの適用が可能な形式であると判定する。
【００９８】
また、例えば、テンプレート更新部１０４は、選択されたログの処理対象のデータ項目が時刻３０２であり、集約条件要素テンプレートテーブル６００の処理対象の適用対象６０２が条件要素ＩＤ６０１「Ｒ２」の「文字列」である場合、処理対象の組み合わせは集約条件要素テンプレートの適用が不可能な形式であると判定する。
【００９９】
ステップＳ１２０４では、テンプレート更新部１０４は、処理対象のデータ項目に処理対象の適用対象（集約条件要素テンプレート）の適用が可能であるか否かを判定する。テンプレート更新部１０４は、適用が可能な形式であると判定した場合、ステップＳ１２０５に処理を移し、適用可能な形式でないと判定した場合、未処理の組み合わせがあるとき、処理対象を次の組み合わせにしてステップＳ１２０３に処理を移し、未処理の組み合わせがないとき、ステップＳ１２０８に処理を移す。
【０１００】
ステップＳ１２０５では、テンプレート更新部１０４は、適当なパラメータを検索する。より具体的には、テンプレート更新部１０４は、計算用コード６０４で指定されたプログラムの条件判定により合致すると判定される最小範囲のパラメータを算出する。
【０１０１】
例えば、テンプレート更新部１０４は、選択されたログの処理対象のデータ項目が時刻３０２であり、集約条件要素テンプレートテーブル６００の処理対象の適用対象６０２が条件要素ＩＤ６０１「Ｒ１」の「数値」である場合、直前のログとの時刻の差分として、ログＩＤ３０１の「Ｒａｗ１」とログＩＤ３０１の「Ｒａｗ２」との差分「１」、ログＩＤ３０１の「Ｒａｗ２」とログＩＤ３０１の「Ｒａｗ３」との差分「３」を算出し、直前のログとの差分の上限値「３」および下限値「１」を適当なパラメータとして検索する。
【０１０２】
また、例えば、テンプレート更新部１０４は、選択されたログの処理対象のデータ項目が第１の操作対象３０４＿１であり、集約条件要素テンプレートテーブル６００の処理対象の適用対象６０２が条件要素ＩＤ６０１「Ｒ２」の「文字列」である場合、特定の文字列として、ログＩＤ３０１が「Ｒａｗ１」〜「Ｒａｗ３」で共通する「Ｃ：￥ａ￥」を適当なパラメータとして検索する。
【０１０３】
ステップＳ１２０６では、テンプレート更新部１０４は、パラメータが存在するか否かを判定する。テンプレート更新部１０４は、パラメータが存在すると判定した場合、ステップＳ１２０７に処理を移し、存在しないと判定した場合、未処理の組み合わせがあるとき、処理対象を次の組み合わせにしてステップＳ１２０３に処理を移し、未処理の組み合わせがないとき、ステップＳ１２０８に処理を移す。
【０１０４】
ステップＳ１２０７では、テンプレート更新部１０４は、パラメータが存在したデータ項目と集約条件要素テンプレートテーブル６００の適用対象６０２（集約条件要素テンプレート）との組み合わせを、新たな集約テンプレートが用いる集約の条件の候補（集約条件候補）として保持する。
【０１０５】
なお、上述の処理に限られるものではなく、パラメータが存在しない場合、または適当なパラメータを検索しない構成である場合、テンプレート更新部１０４は、処理対象のデータ項目に適用可能な集約条件要素テンプレートテーブル６００の適用対象６０２（集約条件要素テンプレート）を、新たな集約テンプレートが用いる集約の条件の候補（集約条件候補）として保持してもよい。
【０１０６】
ステップＳ１２０８では、テンプレート更新部１０４は、管理用端末１３０に集約条件候補を送信する。管理用端末１３０は、集約条件候補を受信すると、集約条件候補を管理者１６０に提示する。なお、入出力例については、図１３を用いて後述する。
【０１０７】
ステップＳ１２０９では、管理用端末１３０は、提示された集約条件候補を管理者１６０が参照して集約条件の取捨選択およびパラメータの調整を行った結果（集約条件決定結果）をサーバ１００に送信する。
【０１０８】
ステップＳ１２１０では、テンプレート更新部１０４は、管理用端末１３０から集約条件決定結果を受信し、集約条件テーブル８００に新たなレコードを追加する。追加する数は、管理者１６０が決定した、新規集約テンプレートの集約条件数である。条件ＩＤ８０１は、新規に作成し、対象８０２には管理者１６０により選択されたログの種別に準じた値を格納し、集約条件要素８０３および適用対象項目８０４には管理者１６０により選択された集約条件候補を格納し、パラメータ８０５には管理者１６０が調整を行った値を格納する。
【０１０９】
ステップＳ１２１１では、テンプレート更新部１０４は、ステップＳ１２０２〜ステップＳ１２０７と同様に、管理者１６０により選択されたデータ項目に適用可能な集約後項目要素テンプレートテーブル７００の適用対象７０２（集約後項目要素テンプレート）を、集約後項目要素テンプレートテーブル７００から抽出し、その組み合わせを、新たな集約後項目要素テンプレートが用いる集約後のデータ項目の候補（集約後項目候補）として管理用端末１３０に送信する。管理用端末１３０は、集約後項目候補を管理者１６０に提示する。なお、入出力例については、図１３を用いて後述する。
【０１１０】
ステップＳ１２１２では、管理用端末１３０は、提示された組み合わせの中からログ分析に必要なデータ項目を管理者１６０が取捨選択し、新規項目名を入力した結果（集約後項目決定結果）をサーバ１００に送信する。
【０１１１】
ステップＳ１２１３では、テンプレート更新部１０４は、ステップＳ１２１０と同様に、集約後項目テーブル９００にレコードを追加し、取捨選択されたデータ項目と当該データ項目に適用可能な適用対象７０２との組み合わせ（集約後項目候補）を集約後項目要素９０３および適用対象項目９０４に格納し、管理者１６０により入力された新規項目名を新規項目名９０５に格納する。
【０１１２】
ステップＳ１２１４では、テンプレート更新部１０４は、集約テンプレートテーブル１０００を更新し、集約テンプレート更新処理を終了する。集約テンプレートテーブル１０００にレコードを追加し、集約テンプレートの操作種別を操作種別１００２に格納し、新たに作成した集約条件テーブル８００のレコードのＩＤを集約条件１００３に格納し、新たに作成した集約後項目テーブル９００のレコードのＩＤを集約後項目１００４に格納する。なお、操作種別１００２については、管理者１６０により入力を受け付け、受け付けた入力値を用いるようにしてもよい。
【０１１３】
また、図１２では、未集約ログテーブル３００を参照する場合を例に挙げて説明したが、これに限られるものではなく、集約後ログテーブル４００を参照する場合でも同様に集約テンプレート更新処理を行うことができる。この場合、ステップＳ１２０２では、テンプレート更新部１０４は、集約後ログ詳細テーブル５００を参照し、選択された集約後ログのログＩＤをキーに、集約後ログのデータ項目（ログＩＤに対応するレコード）を特定する。そして、特定したデータ項目と集約条件要素テンプレートテーブル６００の適用対象６０２（集約条件要素テンプレート）との組み合わせごとに、ステップＳ１２０３〜ステップＳ１２０７の処理を行う。つまり、記憶部１０１は、ログ集約部によりログが集約された集約後ログを記憶し、特定部１０６は、集約条件要素情報１１４に基づいて、記憶部１０１に記憶されている分析対象に係る集約後ログのデータ項目のうち、適用対象に対応するデータ項目を集約の条件として特定する。かかる構成では、集約後ログを更に集約の対象とすることが可能となり、段階的に集約することで、個々の集約の条件の簡素化を図ることができる。付言するならば、集約テンプレートとして、集約の条件と集約後ログのデータ項目の値の算出方法とを定め、集約の入力と出力とを明確にすることで、多段階の集約を実現している。
【０１１４】
（画面構成例）
次に、集約テンプレートの更新に係る入出力について図１３を用いて説明する。図１３は、集約テンプレートの更新に係る入出力の一例（集約テンプレート更新画面１３００）を示す図である。
【０１１５】
集約テンプレート更新画面１３００は、集約対象ログ指定領域１３１０、集約条件指定領域１３２０、集約後項目指定領域１３３０、決定およびキャンセルボタン１３４０を含んで構成される。
【０１１６】
集約対象ログ指定領域１３１０は、ステップＳ１２０１で管理者１６０がログを選択（指定）するための領域である。集約対象ログ指定領域１３１０では、未集約ログテーブル３００または集約後ログテーブル４００のログ（レコード）の一覧を表示し、チェックボックス形式で、分析対象に係るログが指定される。
【０１１７】
集約条件指定領域１３２０は、ステップＳ１２０９で管理者１６０が集約条件候補を選択（指定）する領域である。集約条件指定領域１３２０は、パラメータが存在したデータ項目と当該データ項目に適用可能な適用対象６０２（集約条件要素テンプレート）との組み合わせを、新たな集約テンプレートが用いる集約条件の候補として表示する。集約条件指定領域１３２０では、集約条件の取捨選択およびパラメータの調整が行われ、チェックボックス形式で集約テンプレートへの追加有無が指定される。
【０１１８】
集約後項目指定領域１３３０は、ステップＳ１２１２で管理者１６０が集約後項目候補を選択する領域である。集約後項目指定領域１３３０は、集約後のログ項目の候補を表示する。集約後項目指定領域１３３０では、新規項目名の入力が行われ、チェックボックス形式で集約テンプレートへの追加有無が指定される。
【０１１９】
決定及びキャンセルボタン１３４０は、各ステップへの意思決定をサーバ１００に送信するか否かを指定するものである。
【０１２０】
上述した構成では、ログを上位概念に集約するための集約テンプレートを、分析対象のログを決定するための条件および集約後のログ項目の算出方法の組み合わせで表現し、それぞれを汎用的な処理の集合およびパラメータの組み合わせで規定する。さらに、運用上の実績からこれらの組み合わせを半自動的に推定することで、労力をかけずに集約テンプレートの作成および更新を可能とする。
【０１２１】
本実施の形態によれば、ログ分析の目的、利用可能なログのデータ項目、計算機のリソース、人的なリソースなどの制約条件に応じて、適切なログの集約単位を簡便に設定することができる。
【０１２２】
（２）他の実施の形態
なお上述の実施の形態においては、本発明をログ分析支援システムに適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のシステム、装置、方法、プログラムに広く適用することができる。
【０１２３】
また上述の実施の形態においては、説明の便宜上、ＸＸテーブル、ＸＸファイルを用いて各種のデータを説明したが、データ構造は限定されるものではなく、ＸＸ情報などと表現してもよい。
【０１２４】
また、上記の説明において各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記憶装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１２５】
また上述した構成については、本発明の要旨を超えない範囲において、適宜に、変更したり、組み替えたり、組み合わせたり、省略したりしてもよい。
【符号の説明】
【０１２６】
１……ログ分析支援システム、１００……サーバ、１０１……記憶部、１０２……ログ取得部、１０３……ログ集約部、１０４……テンプレート更新部、１０５……通信部。
【図１】
2020072382.tif 000003
【図２】
2020072382.tif 000004
【図３】
2020072382.tif 000005
【図４】
2020072382.tif 000006
【図５】
2020072382.tif 000007
【図６】
2020072382.tif 000008
【図７】
2020072382.tif 000009
【図８】
2020072382.tif 000010
【図９】
2020072382.tif 000011
【図１０】
2020072382.tif 000012
【図１１】
2020072382.tif 000013
【図１２】
2020072382.tif 000014
【図１３】
2020072382.tif 000015