説明

管理装置、管理方法、及びプログラム

【課題】フィルタの優先度の設定を変更することなく、フィルタ処理の工数を低減し得る、管理装置、管理方法、及びプログラムを提供する。
【解決手段】管理装置100は、機器210から受信したメッセージのメタデータから、出現頻度が閾値以上となるメタデータをキーワードとして抽出するキーワード分析部113と、メッセージを選別するフィルタ群を、キーワードに関連する第1のフィルタとこれ以外の第2のフィルタとに分け、キーワード毎の第1のフィルタグループと第2のフィルタグループとを作成するフィルタグループ作成部114と、受信したメッセージのメタデータが、抽出されたキーワードと一致するか判定し、判定結果に基づいて、適用するフィルタグループを選択するフィルタグループ振分け部115と、受信したメッセージに対して、選択されたフィルタグループを適用する、フィルタグループ適用部116とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータネットワークにおけるネットワーク機器の管理を行う、管理装置、管理方法、及びプログラムに関する。
【背景技術】
【0002】
近年、コンピュータネットワークにおいては、ネットワークを構成する機器の管理及び監視を行うため、「エージェント」と呼ばれるプログラムを管理対象機器、例えば、各種サーバ、端末などに組み込むことが行われている。また、この場合、コンピュータネットワークにおいては、管理専用のサーバ(以下「管理サーバ」とする。)が配置され、管理サーバには、「マネージャ」と呼ばれるエージェント管理プログラムが組み込まれる。
【0003】
このようなコンピュータネットワークでは、各エージェントは、それが組み込まれている機器において障害が発生すると、障害に関するメッセージを作成し、それをマネージャに送信する。マネージャは、フィルタを用いて、送信されてきたメッセージを破棄して良いかどうかを判定する。また、このとき用いられるフィルタは1つではなく、複数の場合もある。マネージャは、破棄しなかったメッセージに対しては、メッセージに応じた各種処理、例えば、システム管理者への復旧指示などを行う。
【0004】
但し、コンピュータネットワークが大規模化すると、それに合わせて、マネージャが受信するメッセージも増加する。このとき、マネージャは、受信するメッセージ毎にフィルタを適用するため、マネージャにおけるメッセージ処理の負荷が増大してしまう。
【0005】
このため、例えば、特許文献1は、フィルタの配置を最適化して、マネージャの負荷の低減化を図るシステムを開示している。具体的には、特許文献1に開示されたシステムは、先ず、フィルタ毎にそれぞれの適合頻度(ヒット率)を一定期間集計する。次に、当該システムは、集計結果に基づいて、適合頻度が高いフィルタの優先度を高くに設定し、優先度の高いフィルタから適用してフィルタ処理の工数を低減する。この結果、マネージャにおけるメッセージ処理の負荷が軽減される。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−260056号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、各フィルタには、定義によって、それをパスするための条件が設定されるが、このとき、条件が完全に一致する場合だけでなく、部分的に一致する場合でも、当該フィルタをパスできるように設定することが可能である。また、フィルタが正規表現によって定義されている場合も少なくない。
【0008】
従って、特許文献1に開示されたシステムでは、フィルタAの優先度が変更され、フィルタAが、条件が一部重複している別のフィルタBの上位に配置された場合において、本来機能していたフィルタBが全く機能しなくなる可能性がある。
【0009】
更に、フィルタには、それをパスしたメッセージが存在した場合にのみ実行されるコマンド(通報及びリカバリ処理など)が、紐付けられる場合がある。このような場合に、フィルタの優先度の設定が変えられ、適用の順序が入れ替えられると、本来実行対象となるコマンドが実行されなくなる可能性がある。
【0010】
本発明の目的の一例は、上記問題を解消し、フィルタの優先度の設定を変更することなく、フィルタ処理の工数を低減し得る、管理装置、管理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するため、本発明の一側面における管理装置は、管理対象となる機器から受信したメッセージに基づいて前記機器の管理を行う管理装置であって、
既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、キーワード分析部と、
設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、フィルタグループ作成部と、
前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、フィルタグループ振分け部と、
前記受信したメッセージに対して、選択されたフィルタグループを適用する、フィルタグループ適用部と、
を備えていることを特徴とする。
【0012】
また、上記目的を達成するため、本発明の一側面における管理方法は、管理対象となる機器から受信したメッセージに基づいて前記機器の管理を行うための方法であって、
(a)既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、ステップと、
(b)設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、ステップと、
(c)前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、ステップと、
(d)前記受信したメッセージに対して、選択されたフィルタグループを適用する、ステップと、
を有することを特徴とする。
【0013】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、コンピュータによって、管理対象となる機器から受信したメッセージに基づいた前記機器の管理を行うためのプログラムであって、
前記コンピュータに、
(a)既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、ステップと、
(b)設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、ステップと、
(c)前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、ステップと、
(d)前記受信したメッセージに対して、選択されたフィルタグループを適用する、ステップと、
を実行させることを特徴とする。
【発明の効果】
【0014】
以上の特徴により、本発明における管理装置、管理方法、及びプログラムによれば、フィルタの優先度の設定を変更することなく、フィルタ処理の工数を低減することができる。
【図面の簡単な説明】
【0015】
【図1】図1は、本発明の実施の形態における管理装置の構成を示すブロック図である。
【図2】図2は、管理対象となる機器から送信されるメッセージの一例を示す図である。
【図3】図3は、本実施の形態における管理装置のフィルタグループ作成処理時の動作を示すフロー図である。
【図4】図4は、フィルタグループ作成処理の説明を補足するブロック図である。
【図5】図5は、図3に示したステップA1におけるキーワード分析処理を更に具体的に示すフロー図である。
【図6】図6は、抽出されたキーワードが登録されたテンプレートの一例を示す図である。
【図7】図7は、キーワードの分析処理を説明する図である。
【図8】図8は、図3に示したステップA2におけるフィルタグループ作成処理を更に具体的に示すフロー図である。
【図9】図9は、作成されたフィルタグループの一例を示す図である。
【図10】図10は、作成されたフィルタグループの階層構造の一例を示す図である。
【図11】図11は、本実施の形態における管理装置のフィルタリング処理時の動作を示すフロー図である。
【図12】図12は、フィルタリング処理の説明を補足するブロック図である。
【図13】図13は、図11に示したステップB4におけるフィルタリング処理を更に具体的に示すフロー図である。
【図14】図14は、図11に示したステップB3におけるフィルタリング処理を更に具体的に示すフロー図である。
【図15】図15は、本実施の形態における管理装置のメンテナンス処理時の動作を示すフロー図である。
【図16】図16は、メンテナンス処理の説明を補足するブロック図である。
【図17】図17は、本発明の実施の形態における管理装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【0016】
(実施の形態)
以下、本発明の実施の形態における、管理装置、管理方法、及びプログラムについて、図1〜図16を参照しながら説明する。最初に、図1を用いて、本実施の形態における管理装置の構成について説明する。図1は、本発明の実施の形態における管理装置の構成を示すブロック図である。
【0017】
[管理システムの構成]
図1に示す管理システム140は、マネージャ−エージェント構成によって機器210を運用管理するシステムである。管理装置100は、管理システム140において、マネージャとして機能し、管理対象となる機器210から受信したメッセージに基づいて機器210の管理を実行する。
【0018】
本実施の形態では、管理装置100は、後述するように、コンピュータにマネージャプログラムをインストールし、これを実行することによって具現化されている。また、機器210には、エージェントプログラムが組み込まれており、エージェント200が構築されている。エージェント200は、機器210において障害などが発生すると、それに関するメッセージを作成し、これを管理装置100に送信する。
【0019】
また、管理システム140は、更に、管理システムの管理者が使用する監視装置300も備えており、管理装置100と監視装置300とは、インターネット及び社内LANといったネットワーク400を介して接続されている。同様に、管理対象となる機器210も、ネットワーク400を介して、管理装置100に接続されている。なお、図1の例では、説明を容易にするため、一台の機器210のみが図示されているが、本実施の形態では、管理対象となる機器の個数は特に限定されるものではない。
【0020】
また、本実施の形態では、監視装置300は、メッセージ確認部301と、フィルタ設定部302とを備えている。メッセージ確認部301は、後述するメッセージログ蓄積部104から、蓄積されているメッセージログを取り出し、選別されたメッセージをコンソール(図1において図示せず)に表示させる。フィルタ設定部302は、管理者の指示に応じて、後述するフィルタの定義を設定し、設定したフィルタの定義を管理装置100に送信する。
【0021】
[管理装置の構成]
図1に示すように、管理装置100は、主に、フィルタ処理部102と、グループ処理部106とを備えている。このうち、グループ処理部106は、更に、キーワード分析部113と、フィルタグループ作成部114とを備えている。また、フィルタ処理部102は、フィルタグループ振分け部115と、フィルタグループ適用部116とを備えている。
【0022】
キーワード分析部113は、既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する。フィルタグループ作成部114は、まず、設定条件に基づいてメッセージを選別するフィルタ群を、抽出されたキーワードに関連する第1のフィルタと、第1のフィルタ以外、即ち、いずれのキーワードにも関連しない第2のフィルタとに分ける。そして、フィルタグループ作成部114は、抽出されたキーワード毎に、当該キーワードに関連する第1のフィルタが属する第1のフィルタグループを作成する。更に、フィルタグループ作成部114は、第2のフィルタが属する第2のフィルタグループも作成する。
【0023】
フィルタグループ振分け部115は、管理対象となる機器210からメッセージを受信すると、受信したメッセージのメタデータが、先に抽出されているキーワードと一致するかどうか判定する。そして、フィルタグループ振分け部115は、判定結果に基づいて、いずれかの第1のフィルタグループと第2のフィルタグループとの中から、受信したメッセージに対して適用するフィルタグループを選択する。
【0024】
また、フィルタグループ適用部116は、受信したメッセージに対して、選択されたフィルタグループを適用する。受信したメッセージが、選択されたフィルタグループを構成する各フィルタの設定条件に合致する場合は、このメッセージは、選別され、メッセージログとして蓄積される。また、蓄積されたメッセージは、その後、監視装置300に送られる。
【0025】
このように、本実施の形態では、受信されたメッセージは、まず、そのメタデータに基づいて、少なくとも、2つに分類される。つまり、第1のフィルタグループのいずれかが適用される場合と、第2のフィルタグループが適用される場合とである。また、前者の場合は、さらに、メタデータに基づいて、適切な第1のフィルタグループが選択される。このため、本実施の形態によれば、フィルタの優先度の設定を変更するなどしなくても、フィルタ処理の工数を低減することができる。
【0026】
ここで、本実施の形態における管理装置100の構成について更に具体的に説明する。図1に示すように、管理装置100は、フィルタ処理部102及びグループ処理部106に加えて、メッセージ受信部101と、フィルタ蓄積部103と、メッセージログ蓄積部104と、メタデータ蓄積部105、スケジュール部107と、グループ定義蓄積部108と、キーワード蓄積部109と、アクション実行部110と、フィルタ更新部111と、グループメンテナンス部112とを備えている。
【0027】
メッセージ受信部101は、エージェント200が送信したメッセージを受信し、これをフィルタグループ振分け部115に入力する。また、本実施の形態では、メッセージは、例えば、図2に示す構成を備えている。図2は、管理対象となる機器から送信されるメッセージの一例を示す図である。
【0028】
図2において、行1002〜10005は、それぞれメッセージを示している。行1001は、メッセージのメタデータのカテゴリを示しており、行1002〜1004それぞれの各カテゴリの値が「メタデータ」に相当する。また、本実施の形態では、エージェント200は、作成したメッセージを、一旦、メッセージログファイル蓄積部201に蓄積し、その後、一定時間毎に蓄積したメッセージを管理装置100に送信する。
【0029】
フィルタ蓄積部103は、フィルタ群、即ち、設定条件に基づいてメッセージを選別する多数のフィルタを蓄積している。また、本実施の形態では、各フィルタは、メッセージを選別する設定条件によって記述された定義であり、フィルタ蓄積部103は、実際には、各フィルタの定義を蓄積している。フィルタグループ作成部114は、フィルタ蓄積部193から、利用する1または2以上のフィルタを取り出す。
【0030】
メッセージログ蓄積部104は、上述したフィルタグループ適用部116によって選別されたメッセージのログを蓄積する。メタデータ蓄積部105は、フィルタグループ適用部116によって選別されたメッセージのメタデータを蓄積する。
【0031】
本実施の形態では、フィルタグループ適用部116は、メッセージにフィルタグループを適用した後、選別したメッセージのログをメッセージログ蓄積部104に出力し、メタデータをメタデータ蓄積部105に出力する。また、本実施の形態では、キーワード分析部113は、メタデータ蓄積部105に蓄積されたメタデータを対象として、キーワードを抽出する。
【0032】
スケジュール部107は、設定された時間間隔で、または設定された時刻に到達すると、グループ処理部106及び後述のグループメンテナンス部112それぞれに対して、処理の開始を通知する。
【0033】
グループ定義蓄積部108は、フィルタグループ作成部114によって作成された第1のフィルタグループ及び第2のフィルタグループの定義を蓄積する。本実施の形態では、フィルタグループ作成部114は、フィルタグループを作成すると、これらの定義を抽出し、抽出した定義をグループ定義蓄積部108に出力する。
【0034】
キーワード蓄積部109は、キーワード分析部113が抽出したキーワードを蓄積する。本実施の形態では、キーワード分析部113は、キーワードを抽出すると、抽出したキーワードをキーワード蓄積部109に出力する。また、フィルタグループ振分け部115は、キーワード蓄積部109に蓄積されているキーワードを用いて、フィルタグループの選択を実行する。
【0035】
アクション実行部110は、フィルタグループ適用部116によって選別されたメッセージに紐付けられているコマンドを実行する。具体的には、アクション実行部110は、メッセージのログの蓄積時において、選別されたメッセージの送信元のエージェント200が保持しているコマンド202を実行する。
【0036】
フィルタ更新部111は、監視端末300においてフィルタの定義が設定されると、設定された定義を受け付け、フィルタ蓄積部103にアクセスする。そして、フィルタ更新部111は、指示されたフィルタの定義を変更する。
【0037】
グループメンテナンス部112は、グループ定義蓄積部108に蓄積されているフィルタグループの定義の有用性を一定期間毎に確認し、確認結果に基づいて、フィルタグループの定義のメンテナンスを実行する。本実施の形態では、グループメンテナンス部112は、ファイルタグループそれぞれの適用された頻度を集計し、集計された頻度が設定された基準値を満たさないフィルタグループが存在する場合に、当該フィルタグループを削除する。
【0038】
次に、本発明の実施の形態における管理装置100の動作について図3〜図16を用いて説明する。本実施の形態では、管理装置100を動作させることによって、管理方法が実施される。よって、本実施の形態における管理方法の説明は、以下の管理装置100の動作説明に代える。
【0039】
また、本実施の形態においては、管理装置100は、大きく分けて、3つの処理を行う。1つめは、グループ処理部106によるフィルタグループ作成処理である。2つめは、フィルタ処理部102によるフィルタリング処理である。3つめは、グループメンテナンス部によるメンテナンス処理である。以下、処理毎に、管理装置100の動作を説明する。
【0040】
[フィルタグループ作成処理:全体]
まず、フィルタグループ作成処理の全体について図3及び図4を用いて説明する。図3は、本実施の形態における管理装置のフィルタグループ作成処理時の動作を示すフロー図である。図4は、フィルタグループ作成処理の説明を補足するブロック図である。図4においては、フィルタグループ作成処理時に動作している部分のみが実線で示されている。
【0041】
図3及び図4に示すように、最初に、キーワード分析部113は、スケジュール部107から、例えば一定期間毎処理の開始の通知を受けると、メタデータ蓄積部105にアクセスし、蓄積されているメタデータを取得する。そして、キーワード分析部113は、メタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する(ステップA1)。
【0042】
次に、フィルタグループ作成部114は、ステップA1で抽出されたキーワードを用いて、フィルタ蓄積部103に蓄積されているフィルタ群を、いずれかのキーワードに関連する第1のフィルタと、いずれのキーワードにも関連しない第2のフィルタとに分ける。そして、フィルタグループ作成部114は、抽出されたキーワード毎に、当該キーワードに関連する第1のフィルタが属する第1のフィルタグループを作成し、更に、第2のフィルタが属する第2のフィルタグループも作成する(ステップA2)。
【0043】
ステップA2が終了すると、フィルタグループ作成部114は、作成した第1のフィルタグループ及び第2のフィルタグループの定義を、グループ定義蓄積部108に出力し、これを蓄積させる。また、このとき、グループ定義蓄積部108は、第1のフィルタグループを分類Aに所属させ、第2のフィルタグループを分類Bに所属させる。
【0044】
[フィルタグループ作成処理:キーワード分析]
続いて、図5〜図7を用いて、図3に示したステップA1について更に具体的に説明する。図5は、図3に示したステップA1におけるキーワード分析処理を更に具体的に示すフロー図である。図6は、抽出されたキーワードが登録されたテンプレートの一例を示す図である。図7は、キーワードの分析処理を説明する図である。
【0045】
図5に示すように、まず、キーワード分析部113は、メタデータ蓄積部105から、そこに蓄積されているカテゴリ毎のメタデータ51(図2参照)を取得する(ステップA11)。次に、キーワード分析部113は、取得したメタデータをカテゴリ毎にソートし、更に、各メタデータの出現頻度を算出する(ステップA12)。
【0046】
次に、キーワード分析部113は、メタデータ蓄積部105から閾値データ52を取得する。閾値データ52は、予め設定された出現頻度の閾値を含む。そして、キーワード分析部113は、一つのカテゴリを選択し、選択したカテゴリの各メタデータについて、ステップA12で算出された出現頻度とその閾値と対比し、出現頻度が閾値以上であるかどうかを判定する(ステップA13)。
【0047】
ステップA13の判定の結果、選択されたカテゴリにおいて、一つでも出現頻度が閾値以上となるメタデータが存在している場合は、キーワード分析部113は、閾値以上となるメタデータ全てをテンプレート53に追加する(ステップA14)。その後、キーワード分析部113は、ステップA15を実行する。一方、ステップA13の判定の結果、選択されたカテゴリにおいて、出現頻度が閾値以上となるメタデータが一つも存在していない場合は、キーワード分析部113は、そのまま、ステップA15を実行する。
【0048】
本実施の形態において、テンプレート53は、図6に示すように、カテゴリ毎に仕分けられたキーワード(メタデータ)で構成されている。ステップA14では、キーワード分析部113は、閾値を超えているメタデータを、該当するカテゴリの位置において、キーワードとして追加する。
【0049】
ステップA15では、キーワード分析部113は、ステップA13及びA14の処理が行われていないカテゴリ(未だ選択されていないカテゴリ)が存在しているかどうかを判定する。ステップA15の判定の結果、まだ選択されていないカテゴリが存在する場合は、キーワード分析部113は、選択対象となるカテゴリをまだ選択されていないカテゴリにシフトして(ステップA16)、再度ステップA13を実行する。
【0050】
一方、ステップA15の判定の結果、未だ選択されていないカテゴリが存在していない場合は、キーワード分析部113は、テンプレート53に、キーワードが1つ以上含まれているかどうかを判定する(ステップA17)。
【0051】
ステップA17の判定の結果、テンプレート53に、キーワードが1つ以上含まれている場合は、キーワード分析部113は、テンプレート53を、キーワード蓄積部109に格納し(ステップA18)、その後、ステップA19を実行する。一方、ステップA17の判定の結果、テンプレート53に、キーワードが1つ以上含まれていない場合は、キーワード分析部113は、そのまま、ステップA19を実行する。
【0052】
ステップA19では、キーワード分析部113は、テンプレート53にキーワードとして追加したメタデータを、メタデータ蓄積部105に蓄積されているメタデータ51から削除する。ステップA19の実行後、先に述べたステップA2が実行される。
【0053】
ここで、ステップA12〜A16までの具体例を、図7に基づいて説明する。図7の例では、メタデータのカテゴリは5つあり、また、出現頻度の閾値は「30%」に設定されている。図7に示すように、カテゴリ毎に、出現頻度が30%以上となるメタデータがキーワードとして抽出される。抽出されたメタデータは、テンプレート53に追加される。
【0054】
[フィルタグループ作成処理:フィルタグループ作成]
続いて、図8〜図10を用いて、図3に示したステップA1について更に具体的に説明する。図8は、図3に示したステップA2におけるフィルタグループ作成処理を更に具体的に示すフロー図である。図9は、作成されたフィルタグループの一例を示す図である。図10は、作成されたフィルタグループの階層構造の一例を示す図である。
【0055】
図8に示すように、ステップA1の終了後、フィルタグループ作成部114は、キーワード分析部113が抽出したキーワードを含むテンプレート53(図6参照)から、1つのキーワードを選択する(ステップA21)。
【0056】
次に、フィルタグループ作成部114は、フィルタ蓄積部103より各フィルタの定義(フィルタ定義61)を取得する(ステップA22)。そして、フィルタグループ作成部114は、フィルタ定義61から、選択したキーワードと関連するフィルタを抜粋して、フィルタグループを作成する(ステップA23〜A26)。
【0057】
つまり、フィルタグループ作成部114は、まず、1のフィルタについて、このフィルタが、選択されたキーワードに関連しているかどうかを判定する(ステップA23)。具体的には、ステップA23では、フィルタの定義が、選択されたキーワードと一致しているかどうか、または、選択されたキーワードを含んでいるかどうか(即ち、キーワードが正規表現の範囲に入るかどうか)が判定される。
【0058】
ステップA23の判定の結果、フィルタが選択されたキーワードに関連していない場合は、フィルタグループ作成部114は、ステップA25を実行する。一方、ステップA23の判定の結果、フィルタが選択されたキーワードに関連している場合は、フィルタグループ作成部114は、判定対象となったフィルタを、選択されたキーワードのフィルタグループ(第1のフィルタグループ)に追加し(ステップA24)、その後、ステップA25を実行する。
【0059】
ステップA25では、フィルタグループ作成部114は、ステップA23の判定が必要なフィルタがまだ存在しているかどうかを判定する(ステップA25)。ステップA25の判定の結果、まだフィルタが存在している場合は、フィルタグループ作成部114は、再度ステップA23を実行する。一方、ステップA25の判定の結果、フィルタが存在していない場合は、フィルタグループ作成部114は、ステップA27を実行する。
【0060】
ステップA27では、フィルタグループ作成部114は、ステップA24によって得られた第1のフィルタグループを分類Aに所属させ、更に、この第1のフィルタグループの定義62を、グループ定義蓄積部108に蓄積させる。
【0061】
次に、フィルタグループ作成部114は、テンプレート53に、まだ選択されていないキーワードが存在しているかどうかを判定する(ステップA28)。ステップA28の判定の結果、まだ選択されていないキーワードが存在している場合は、フィルタグループ作成部114は、選択対象となるキーワードをまだ選択されていないキーワードにシフトして(ステップA29)、再度ステップA23を実行する。
【0062】
一方、ステップA28の判定の結果、まだ選択されていないキーワードが存在していない場合は、フィルタグループ作成部114は、キーワードに関連していなかったフィルタを集め、これらによって第2のフィルタグループを作成する。そして、フィルタグループ作成部114は、この第2のフィルタグループを分類Bに所属させ、更に、この第2のフィルタグループの定義63を、グループ定義蓄積部108に蓄積させる(ステップA30)。なお、以降の説明において、第1のフィルタグループの定義及び第2のフィルタグループの定義の両方を含む場合については、「グループ定義」と表すこともある。
【0063】
ここで、図9を用いて、ステップA21〜A28の具体例について説明する。図9に示すように、フィルタグループ作成部114は、テンプレート53と、フィルタ定義一覧61とを用いて、分類Aに所属する(各カテゴリのキーワードに関連する)フィルタグループと、分類Bに所属する(1つのキーワードとも関連しない)フィルタグループとを生成する。生成された各グループ定義は、グループ定義蓄積部108に蓄積される。
【0064】
また、図9に示すように、本実施の形態では、キーワード分析部109は、メタデータから、そのカテゴリ毎にキーワードを抽出した後、さらに、メタデータのカテゴリ毎に、抽出したキーワードそれぞれに、識別子(1、2、など)を割り当てる。
【0065】
そして、フィルタグループ作成部114は、抽出されたキーワード毎に、第1のフィルタグループを設定する際に、第1のフィルタグループに、グループIDを設定する。また、グループIDは、桁数がカテゴリの数と一致し、且つ、対応するキーワードのカテゴリが割り当てられている桁に、対応するキーワードの識別子をあてることによって設定される。
【0066】
つまり、グループIDは、以下の条件1〜条件4に基づいて設定される。
[条件1]
グループIDの桁数は、テンプレート61の全カテゴリの数と一致する。
[条件2]
カテゴリのグループIDの桁への割り当ては、カテゴリ番号1から順に、最も左側にある桁から行われる。即ち、「カテゴリ番号1」は、最も大きい桁に割り当てられ、「最も大きいカテゴリ番号」は、1の桁に割り当てられる。
[条件3]
対応するキーワードのカテゴリが割り当てられている桁に、対応するキーワードの識別子(キーワード番号)があてられるが、割当てられていない桁には、「0」があてられる。
[条件4]
グループIDの何れかの桁が「0」ではない場合は、そのフィルタグループは、分類Aに所属する。一方、グループIDの全ての桁が「0」である場合は、そのフィルタグループは、分類Bに所属する。
【0067】
例えば、全カテゴリの数が5で、カテゴリ番号が「1」のキーワードの「キーワード番号」が2である場合、グループIDは「20000」となる。また、全カテゴリの数が5で、カテゴリ番号が「5」のキーワードの「キーワード番号」が1である場合、グループIDは「00001」となる。また、所属するフィルタが、上記2つのキーワードの両方に関連する場合は、グループIDは「20001」となる。また、全カテゴリの数が5で、所属するフィルタが、いずれのカテゴリのキーワードとも関連しない場合は、このフィルタグループのグループIDは、「00000」となる。
【0068】
次に、フィルタグループ作成部114は、ステップA23〜A26によって先に作成した第1のフィルタグループを用いて、2以上のキーワードに関連するフィルタで構成された第1のフィルタグループを作成する(ステップA31〜A34)。
【0069】
具体的には、図10に示すように、フィルタグループ作成部114は、少なくとも1つのキーワードに関連するフィルタで構成された第1のフィルタグループの中から、任意の2以上の第1のフィルタグループを選択する。そして、選択したこれらの第1のフィルタグループの積集合をとり、新たなフィルタグループを作成する(ステップA31)。なお、本実施の形態では、分類Aに所属するフィルタグループと分類Bに所属するグループとで積集合をとることは、行われない。
【0070】
次に、フィルタグループ作成部114は、新たに作成したフィルタグループが、2以上のキーワードに関連するフィルタを1つ以上含んでいるかどうかを判定する(ステップA32)。これは、新たなフィルタグループは、2以上のキーワードに関連するフィルタで構成されている必要があるからである。
【0071】
ステップA32の結果、1つ以上のフィルタを含んでいない場合は、フィルタグループ作成部114は、ステップA34を実行する。一方、ステップA32の結果、1つ以上のフィルタを含んでいる場合は、フィルタグループ作成部114は、新たに作成したフィルタグループも第1のフィルタグループであるため、これを分類Aに所属させ、その定義を、グループ定義蓄積部108に蓄積させる(ステップA33)。その後、フィルタグループ作成部114は、ステップA34を実行する。
【0072】
ステップA34では、フィルタグループ作成部114は、分類Aに所属する第1のフィルタグループの組み合わせ全てについて、ステップA31〜A33の処理が終了しているかどうかを判定する。
【0073】
ステップA34の判定の結果、第1のフィルタグループの組み合わせ全てについて処理が終了している場合は、フィルタグループ作成部114における処理は終了する。一方、第1のフィルタグループの組み合わせ全てについて処理が終了していない場合は、フィルタグループ作成部114は、再度、ステップA31を実行する。
【0074】
[フィルタリング処理:全体]
続いて、フィルタリング処理の全体について図11及び図12を用いて説明する。図11は、本実施の形態における管理装置のフィルタリング処理時の動作を示すフロー図である。図12は、フィルタリング処理の説明を補足するブロック図である。図12においては、フィルタリング処理時に動作している部分のみが実線で示されている。
【0075】
図11及び図12に示すように、最初に、メッセージ受信部101が、エージェント200からメッセージを受信し、受信したメッセージ(以下「受信メッセージ」とする。)をフィルタグループ振分け部115に入力する(ステップB1)。これにより、フィルタグループ振分け部115は、キーワード蓄積部109に、キーワード分析部113によってキーワードが蓄積されているかどうかを判定する(ステップB2)。
【0076】
ステップB2の判定の結果、キーワード蓄積部109に、キーワード分析部113によってキーワードが蓄積されている場合は、フィルタグループ振分け部115による、適用するフィルタグループの選択と、フィルタグループ適用部116による、選択されたフィルタグループの適用とが行われる(ステップB3)。
【0077】
一方、ステップB2の判定の結果、キーワード蓄積部109に、キーワード分析部113によってキーワードが蓄積されていない場合は、フィルタグループ振分け部115による、デフォルトフィルタグループの選択と、フィルタグループ適用部116による、デフォルトフィルタグループの適用とが行われる(ステップB4)。
【0078】
[フィルタリング処理:キーワードが蓄積されていない場合]
続いて、図13を用いて、図11に示したステップB4について更に具体的に説明する。図13は、図11に示したステップB4におけるフィルタリング処理を更に具体的に示すフロー図である。
【0079】
図13に示すように、フィルタグループ振分け部115は、ステップB2において、キーワード蓄積部109にキーワードが蓄積されていないと判定すると、フィルタグループ適用部に、デフォルトグループによるフィルタ適用を実行させることを決定する(ステップB41)。デフォルトグループは、全てのフィルタを含むグループである。また、グループ振分け部115は、デフォルトグループを用いる旨の通知と共に、フィルタグループ適用部116に受信メッセージを受け渡す。
【0080】
次に、フィルタグループ適用部116は、グループ定義蓄積部108にアクセスし、そこに蓄積されているグループ定義64を取得する(ステップB42)。なお、グループ定義64は、第1のフィルタグループの定義62及び第2のフィルタグループの定義63(図8参照)を含む。
【0081】
次に、フィルタグループ適用部116は、グループ定義64に、デフォルトグループの定義が含まれているかどうかを判定する(ステップB43)。ステップB43の判定の結果、デフォルトグループの定義が存在する場合は、フィルタグループ適用部116は、ステップB46を実行する。
【0082】
一方、ステップB43の判定の結果、デフォルトグループの定義が存在しない場合は、フィルタグループ適用部116は、フィルタ蓄積部103から、各フィルタの定義(フィルタ定義61)を、それぞれに設定されている優先度の順に呼び出して、デフォルトグループを作成する(ステップB44)。次に、フィルタグループ適用部116は、作成したデフォルトグループの定義を、グループ定義蓄積部108に蓄積させ(ステップB45)、その後、ステップB46を実行する。
【0083】
ステップB46では、フィルタグループ適用部116は、受信メッセージを対象として、デフォルトグループに含まれるフィルタを用いた選別処理を実行し、監視対象メッセージに該当する受信メッセージを選別する(ステップB46〜B49)。
【0084】
具体的には、フィルタグループ適用部116は、まず、デフォルトグループに含まれる1のフィルタを優先度が高い順に選択し(ステップB46)、受信メッセージが、選択されたフィルタに適合するかどうかを判定する(ステップB47)。
【0085】
ステップB47の判定の結果、適合する場合は、フィルタグループ適用部116は、ステップB50を実行する。一方、ステップB47の判定の結果、適合しない場合は、フィルタグループ適用部116は、次に適用する別のフィルタが存在しているかどうか判定する(ステップB48)。
【0086】
ステップB48の判定の結果、別のフィルタが存在しない場合は、フィルタグループ適用部116は、ステップB50を実行する。一方、ステップB48の判定の結果、別のフィルタが存在する場合は、フィルタグループ適用部116は、別のフィルタを選択し(ステップB49)、これを適用して、再度ステップB47を実行する。
【0087】
ステップB50では、フィルタグループ適用部116は、選別されたメッセージのログをメッセージログ蓄積部104に蓄積させ、さらに、選別されたメッセージのメタデータをメタデータ蓄積部105に蓄積させる。また、このとき、メタデータは、カテゴリ別にメタデータ蓄積部105に蓄積される。
【0088】
[フィルタリング処理:キーワードが蓄積されている場合]
続いて、図14を用いて、図11に示したステップB3について更に具体的に説明する。図14は、図11に示したステップB3におけるフィルタリング処理を更に具体的に示すフロー図である。
【0089】
図14に示すように、最初に、フィルタグループ振分け部115は、ステップB2において、キーワード蓄積部109にキーワードが蓄積されていると判定する。そして、フィルタグループ振分け部115は、キーワード蓄積部109に蓄積されているテンプレート53から、カテゴリ番号の順に1つのカテゴリを選択し、さらに、それに含まれる任意のキーワードを1つ選択する(ステップB21)。
【0090】
次に、フィルタグループ振分け部115は、ステップB21で選択したキーワードが、これと同じカテゴリにおいて、受信メッセージのメタデータと一致するかどうかを判定する(ステップB22)。
【0091】
ステップB22の判定の結果、一致する場合は、フィルタグループ振分け部115は、フィルタグループを呼び出すために用意したID(初期状態では各桁は「0」に設定)の、ステップB21で選択したカテゴリに対応する桁に、ステップB21で選択したキーワードの識別子を割り当てる(ステップB23)。その後、フィルタグループ振分け部115は、ステップB24を実行する。
【0092】
一方、ステップB22の判定の結果、一致しない場合は、フィルタグループ振分け部115は、フィルタグループを呼び出すために用意したIDの、ステップB21で選択したカテゴリに対応する桁に、「0」を割り当てる(ステップB23)。
【0093】
そして、フィルタグループ振分け部115は、ステップB21で選択したカテゴリに、判定対象となる別のキーワードが含まれているかどうかを判定し(ステップB26)、含まれている場合は、そのキーワードを選択し(ステップB28)、再度ステップB22を実行する。一方、含まれていない場合は、フィルタグループ振分け部115は、ステップB24を実行する。
【0094】
ステップB24では、フィルタグループ振分け部115は、ステップB21で選択されたカテゴリとは別のカテゴリに、判定対象となるキーワードが含まれているかどうかを判定する。ステップB24の判定の結果、別のカテゴリに判定対象となるキーワードが含まれている場合は、フィルタグループ振分け部115は、別のカテゴリのキーワードを選択し(ステップB27)、再度ステップB22を実行する。
【0095】
一方、ステップB24の判定の結果、別のカテゴリに判定対象となるキーワードが含まれていない場合は、フィルタグループ振分け部115は、フィルタグループを呼び出すために用意したIDを現在の値で最終決定とする(ステップB29)。また、フィルタグループ振分け部115は、IDの値をフィルタグループ適用部116に入力する。
【0096】
次に、フィルタグループ適用部116は、グループ定義蓄積部108から、決定されたIDとグループIDが一致するフィルタグループの定義を取得し(ステップB30)、取得した定義に基づいて、フィルタ蓄積部103から、必要なフィルタを取得する(ステップB31)。
【0097】
次に、フィルタグループ適用部116は、取得としたフィルタから、優先度の順に、1つのフィルタを取り出し、受信メッセージが取り出したフィルタに適合するかどうかを判定する(ステップB32)。
【0098】
ステップB32の判定の結果、適合する場合は、フィルタグループ適用部116は、処理を終了する。一方、ステップB32の判定の結果、適合しない場合は、フィルタグループ適用部116は、次に適用する別のフィルタが存在しているかどうか判定する(ステップB33)。
【0099】
ステップB33の判定の結果、別のフィルタが存在しない場合は、フィルタグループ適用部116は、この場合も処理を終了する。一方、ステップB33の判定の結果、別のフィルタが存在する場合は、フィルタグループ適用部116は、別のフィルタを選択し(ステップB34)、これを適用して、再度ステップB32を実行する。なお、本実施の形態では、テンプレート53とグループIDとでは、整合性がとられているため、グループIDに対応していないフィルタグループの定義が存在することはない。
【0100】
以上、説明したステップB21〜B34、または、ステップB41〜B50が実行されると、受信メッセージが選別される。監視装置300では、メッセージ確認部301は、選別されたメッセージを、コンソールを介して管理者に通知することができる。また、本実施の形態では、メッセージに適合したフィルタの定義に、コマンド202(図1参照)の実行が紐づけられている場合、アクション実行部110は、実行対象のエージェント200に対してコマンド202の実行を指示する。
【0101】
[メンテナンス処理]
続いて、メンテナンス処理の全体について図15及び図16を用いて説明する。図15は、本実施の形態における管理装置のメンテナンス処理時の動作を示すフロー図である。図16は、メンテナンス処理の説明を補足するブロック図である。図16においては、メンテナンス処理時に動作している部分のみが実線で示されている。
【0102】
本実施の形態では、図7で示したように、カテゴリ単位でキーワードの出現頻度が算出されている。そのため、このようなキーワードに関連するフィルタを組み合わせて構成したフィルタグループの利用頻度が高くなる保証はない。従って、一定期間運用した後、生成された各フィルタグループについて呼び出される頻度を集計して、全く呼び出されない、または極端に呼び出される頻度が低いフィルタグループを削除するのが好ましいと考えられる。グループメンテナンス部112は、スケジュール部107から指示により、定期的にメンテナンス処理を実行して、このようなフィルタグループを削除する。
【0103】
図15に示すように、最初に、グループメンテナンス部112は、グループ定義蓄積部108から、一定期間中の各グループの呼び出し回数65、及びフィルタグループが削除の対象となる呼び出し回数の閾値(削除閾値)66とを取得する(ステップC1)。なお、フィルタグループ適用部116は、フィルタグループ毎に、それを呼び出す度に回数をカウントし、値をグループ定義蓄積部108に書き込んでいる。書き込まれた値が、呼び出し回数65である。また、削除閾値66は、予め、設定されている。
【0104】
次に、グループメンテナンス部112は、取得した各フィルタグループの呼び出し回数と削除閾値とを対比し、呼び出し回数が閾値を下回るフィルタグループが存在するかどうかを判定する(ステップC2)。
【0105】
ステップC2の判定の結果、呼び出し回数が閾値を下回るフィルタグループが存在しない場合は、グループメンテナンス部112は、処理を終了する。一方、ステップC2の判定の結果、呼び出し回数が閾値を下回るフィルタグループが存在する場合は、グループメンテナンス部112は、そのフィルタグループが最下層のフィルタグループであるかどうかを判定する(ステップC3)。
【0106】
ここで、最下層のフィルタグループとは、関連するキーワードの数が1つであるフィルタを含むフィルタグループをいう。例えば、図10に示す「グループ100」、「グループ200」、「グループ010」、「グループ001」、及び「グループ002」が、最下層のフィルタグループに該当する。
【0107】
ステップC3の判定の結果、呼び出し回数が閾値を下回るフィルタグループが最下層のフィルタグループでない場合は、グループメンテナンス部112は、ステップC4を実行する。一方、ステップC3の判定の結果、呼び出し回数が閾値を下回るフィルタグループが最下層のフィルタグループである場合は、グループメンテナンス部112は、ステップC9を実行する。
【0108】
ステップC4では、グループメンテナンス部112は、ステップC2で該当したフィルタグループの1つ下位層(関連するキーワードの数が1つ少ないフィルタを含むフィルタグループの集合)に、呼び出し回数が閾値を下回らないフィルタグループが存在するかどうかを判定する。
【0109】
ステップC4の判定の結果、下位層に呼び出し回数が閾値を下回らないフィルタグループが存在する場合は、グループメンテナンス部112は、該当するフィルタグループの中から最も呼び出し回数が多いフィルタグループを特定する(ステップC5)。
【0110】
さらに、ステップC5が実行されると、グループメンテナンス部112は、ステップC2で呼び出し回数が閾値を下回ると判定されたフィルタグループについて、その定義をグループ定義蓄積部108から削除する。
【0111】
そして、グループメンテナンス部112は、フィルタグループ適用部116が、削除されたフィルタグループを呼び出した場合に、ステップC6で特定された下位層のフィルタグループが呼び出されるように、グループ定義蓄積部108にマッピングを設定する(ステップC6)。ステップC6の実行後、グループメンテナンス部112における処理は終了する。
【0112】
一方、ステップC4の判定の結果、下位層に呼び出し回数が閾値を下回らないフィルタグループが存在しない場合は、グループメンテナンス部112は、ステップC4で判断の対象となった層のさらに下位層に、呼び出し回数が閾値を下回らないフィルタグループが存在するかどうかを判定する(ステップC7)。
【0113】
ステップC7の判定の結果、下位層に、呼び出し回数が閾値を下回らないフィルタグループが存在する場合は、グループメンテナンス部112は、このフィルタグループを対象として、再度ステップC4を実行する。
【0114】
一方、ステップC7の判定の結果、この下位層に、呼び出し回数が閾値を下回らないフィルタグループが存在しない場合は、グループメンテナンス部112は、ステップC2で呼び出し回数が閾値を下回ると判定されたフィルタグループについて、その定義をグループ定義蓄積部108から削除する。
【0115】
そして、グループメンテナンス部112は、フィルタグループ適用部116が、削除されたフィルタグループを呼び出した場合に、分類Bの第2のフィルタグループが呼び出されるように、グループ定義蓄積部108にマッピングを設定する(ステップC8)。ステップC8の実行後、グループメンテナンス部112における処理は終了する。
【0116】
また、ステップC9では、グループメンテナンス部112は、ステップC2で呼び出し回数が閾値を下回ると判定されたフィルタグループに含まれるフィルタを、分類Bの第2のフィルタグループにマージする。そして、グループメンテナンス部112は、フィルタグループ適用部116が、ステップC2で呼び出し回数が閾値を下回ると判定されたフィルタグループを呼び出した場合に、分類Bのフィルタグループが呼び出されるように、グループ定義蓄積部108にマッピングを設定する。ステップC9の実行後、グループメンテナンス部112における処理は終了する。
【0117】
以下に、図10に基づいて具体例を説明する。例えば、図10に示す例において、「グループ111」のフィルタグループが削除の対象になったとする。この場合、積集合の作成の際に対象となった下位層のフィルタグループ(グループ100、グループ101、グループ011)について、利用頻度の判定が行われる。そして、これらのうち、グループ101のフィルタグループの呼び出し回数が一番高いとすると、フィルタグループ適用部116がグループ111を呼び出した場合に、グループ111の代わりにグループ101が呼び出されるようにマッピングが行われる。
【0118】
また、例えば、図9に示す例において、「グループ200」のフィルタグループが削除の対象にとなったとする。この場合、グループ200は、最下位層のフィルタグループであるため、当該フィルタグループに含まれるフィルタを、分類Bに所属するグループ000のフィルタグループにマージする。そして、フィルタグループ適用部116がグループ200を呼び出した場合に、グループ200の代わりにグループ000が呼び出されるようにマッピングが行われる。
【0119】
以上のように本実施の形態によれば、適切なフィルタグループを構築でき、更に、構築したフィルタグループの中から最適なフィルタグループを選択できるので、無駄なフィルタ照会処理を低減でき、メッセージ処理の効率を向上させることができる。
【0120】
[変形例]
また、本実施の形態では、以下に述べる変形例とすることもできる。以下、具体的に説明する。
【0121】
本実施の形態は、メタデータ蓄積部105及びフィルタ蓄積部103が、データを外部に出力できる構成を備え、グループ処理部106が外部の別の装置(コンピュータ)に構築されている態様とすることもできる。この場合は、管理装置100は、複数のコンピュータによって構築されるため、フィルタグループの作成時におけるマネージャの負荷を低減することが可能となる。
【0122】
また、本実施の形態は、グループ定義蓄積部108が、データを外部に出力できる構成を備え、グループメンテナンス部112が外部の別の装置(コンピュータ)に構築されている態様とすることもできる。この場合は、フィルタグループのメンテナンス時におけるマネージャの負荷を低減することが可能となる。
【0123】
さらに、本実施の形態では、図6に示したステップA12において、蓄積されたメタデータに対して出現頻度が算出されているが、これに限定されるものではない。例えば、キーワード分析部113に、類似のメタデータを正規表現に基づいてまとめさせて、類似のメタデータの出現頻度を統合させ、そして、統合した出現頻度と閾値とを比較させても良い。この場合は、正規表現をキーワードとして用いることが可能となるため、フィルタグループの範囲を広くすることが可能となる。
【0124】
例えば、キーワードの出現頻度の閾値が30%以上であり、カテゴリが「ホスト名」となる蓄積メタデータの出現頻度が以下の通りであったとする。
・「hostABC」 出現頻度20%
・「hostBBC」 出現頻度8%
・「hostCBC」 出現頻度5%
・その他 出現頻度70%
【0125】
上記の場合において、正規表現により「host?BC」とすると、出現頻度は30%以上を満たすこととなるため、「host?BC」を、カテゴリ「ホスト名」のキーワード1に設定する。
【0126】
また、本実施の形態では、図6に示したステップA13において、各カテゴリにおける同一のメタデータの出現頻度とその閾値とが比較されているが、これに限定されず、出現頻度の代わりに、出現回数を用いることができる。この場合、閾値としては、出現回数の閾値が用いられる。
【0127】
さらに、本実施の形態では、図15に示したステップC2において、呼び出し回数とその閾値とが比較されているが、これに限定されず、呼び出し回数の代わりに、同一分類のフィルタグループ全体に対する1つのフィルタグループの呼び出し比率を用いることができる。この場合、閾値としては、呼び出し比率の閾値が用いられる。
【0128】
また、本実施の形態では、図15に示したステップC6、ステップC8、ステップC9において、閾値を下回るフィルタグループは削除される。そして、この結果、テンプレート53において、全てのフィルタグループのいずれのフィルタにも関連していないキーワードが存在することとなった場合には、テンプレート53より、そのキーワードが削除される態様であっても良い。さらに、キーワードの削除により、そのキーワードのカテゴリに所属するキーワードが全て削除されてしまう場合は、カテゴリもテンプレート53より削除される態様であっても良い。以上の態様とすれば、存在しないフィルタグループと、テンプレートのデータとの整合が図られ、図14に示したステップB21〜B26の処理工数が低減される。
【0129】
例えば、テンプレートの「カテゴリ1」に「キーワード1」「キーワード2」が所属し、「カテゴリ2」に「キーワード1」が所属し、「カテゴリ3」に「キーワード1」が所属しているとする。そして、上記テンプレートのデータを用いて生成されたフィルタグループには、グループID(3桁)に「2」を含むフィルタグループが存在していないとする。この場合、キーワード2が、テンプレートから削除される。
【0130】
本発明の実施の形態におけるプログラムは、コンピュータに、図3に示すステップA1及びA2、図5に示すステップA11〜A19、図8に示すステップA21〜A34、図11に示すステップB1〜B4、図13に示すステップB41〜B50、図14に示すステップB21〜B34、図15に示すステップC1〜C9を実行させるプログラムであれば良い。
【0131】
このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における管理装置100と管理方法とを実現することができる。この場合、コンピュータのCPU(Central Processing Unit)は、メッセージ受信部101、フィルタ処理部102、グループ処理部106、スケジュール部107、アクション実行部110、フィルタ更新部111、グループメンテナンス部112として機能し、処理を行なう。
【0132】
また、コンピュータに備えられたハードディスク等の記憶装置が、フィルタ蓄積部103、メッセージログ蓄積部104、メタデータ蓄積部105、グループ定義蓄積部108,及びキーワード蓄積部109として機能する。
【0133】
ここで、実施の形態におけるプログラムを実行することによって、管理装置100を実現するコンピュータ120について図17を用いて説明する。図17は、本発明の実施の形態における管理装置を実現するコンピュータの一例を示すブロック図である。
【0134】
図17に示すように、コンピュータ120は、CPU121と、メインメモリ122と、記憶装置123と、入力インターフェイス124と、表示コントローラ125と、データリーダ/ライタ126と、通信インターフェイス127とを備える。これらの各部は、バス131を介して、互いにデータ通信可能に接続される。
【0135】
CPU121は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ122に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ122は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体130に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス127を介して接続されたインターネット上で流通するものであっても良い。
【0136】
また、記憶装置123の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU121と、キーボード及びマウスといった入力機器128との間のデータ伝送を仲介する。表示コントローラ125は、ディスプレイ装置129と接続され、ディスプレイ装置129での表示を制御する。データリーダ/ライタ126は、CPU121と記録媒体130との間のデータ伝送を仲介し、記録媒体130からのプログラムの読み出し、及びコンピュータ120における処理結果の記録媒体130への書き込みを実行する。通信インターフェイス127は、CPU121と、他のコンピュータとの間のデータ伝送を仲介する。
【0137】
また、記録媒体130の具体例としては、CF(Compact Flash)及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記憶媒体、又はCD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体が挙げられる。
【0138】
上述した実施の形態の一部又は全部は、以下に記載する(付記1)〜(付記21)によって表現することができるが、以下の記載に限定されるものではない。
【0139】
(付記1)
管理対象となる機器から受信したメッセージに基づいて前記機器の管理を行う管理装置であって、
既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、キーワード分析部と、
設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、フィルタグループ作成部と、
前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、フィルタグループ振分け部と、
前記受信したメッセージに対して、選択されたフィルタグループを適用する、フィルタグループ適用部と、
を備えていることを特徴とする管理装置。
【0140】
(付記2)
前記フィルタグループ振分け部は、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードに関連する第1のフィルタが属している第1のフィルタグループを選択する、
付記1に記載の管理装置。
【0141】
(付記3)
前記キーワード分析部が、前記メタデータから、前記メタデータのカテゴリ毎に、キーワードを抽出し、その後、前記メタデータのカテゴリ毎に、抽出したキーワードそれぞれに、識別子を割り当て、
前記フィルタグループ作成部が、抽出された前記キーワード毎に、前記第1のフィルタグループを設定する際に、前記第1のフィルタグループに、桁数が前記カテゴリの数と一致し、且つ、当該キーワードのカテゴリが対応している桁に当該キーワードの前記識別子が割り当てられた、グループIDを設定し、
前記フィルタグループ振分け部は、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードの識別子とそのカテゴリとから、対応する前記グループIDを特定し、特定されたグループIDが設定された第1のフィルタグループを選択する、付記2に記載の管理装置。
【0142】
(付記4)
前記フィルタグループ作成部が、前記第1のフィルタグループを作成した後、2以上の前記第1のフィルタグループを用いて、2以上のキーワードに関連する第1のフィルタで構成された第1のフィルタグループを更に作成する、付記1〜3のいずれかに記載の管理装置。
【0143】
(付記5)
前記フィルタグループ適用部による前記フィルタグループの適用によって選別されたメッセージのメタデータを蓄積する、メタデータ蓄積部を更に備え、
前記キーワード分析部が、前記メタデータ蓄積部に蓄積されたメタデータを対象として、キーワードを抽出する、付記1〜4のいずれかに記載の管理装置。
【0144】
(付記6)
前記ファイルタグループそれぞれの適用された頻度を集計し、集計された頻度が設定された基準値を満たさないフィルタグループが存在する場合に、当該フィルタグループを削除する、グループメンテナンス部を、更に備えている、付記1〜5のいずれかに記載の管理装置。
【0145】
(付記7)
前記フィルタグループ適用部が、選択されたフィルタグループに属する各フィルタに優先度が設定されている場合に、優先度が高い順に、前記各フィルタを適用する、付記1〜6のいずれかに記載の管理装置。
【0146】
(付記8)
管理対象となる機器から受信したメッセージに基づいて前記機器の管理を行うための方法であって、
(a)既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、ステップと、
(b)設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、ステップと、
(c)前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、ステップと、
(d)前記受信したメッセージに対して、選択されたフィルタグループを適用する、ステップと、
を有することを特徴とする管理方法。
【0147】
(付記9)
前記(c)のステップにおいて、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードに関連する第1のフィルタが属している第1のフィルタグループを選択する、
付記8に記載の管理方法。
【0148】
(付記10)
前記(a)のステップにおいて、前記メタデータから、前記メタデータのカテゴリ毎に、キーワードを抽出し、その後、前記メタデータのカテゴリ毎に、抽出したキーワードそれぞれに、識別子を割り当て、
前記(b)のステップにおいて、抽出された前記キーワード毎に、前記第1のフィルタグループを設定する際に、前記第1のフィルタグループに、桁数が前記カテゴリの数と一致し、且つ、当該キーワードのカテゴリが対応している桁に当該キーワードの前記識別子が割り当てられた、グループIDを設定し、
前記(c)のステップにおいて、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードの識別子とそのカテゴリとから、対応する前記グループIDを特定し、特定されたグループIDが設定された第1のフィルタグループを選択する、付記9に記載の管理方法。
【0149】
(付記11)
前記(b)のステップにおいて、前記第1のフィルタグループを作成した後、2以上の前記第1のフィルタグループを用いて、2以上のキーワードに関連する第1のフィルタで構成された第1のフィルタグループを更に作成する、付記8〜10のいずれかに記載の管理方法。
【0150】
(付記12)
(e)前記フィルタグループの適用によって選別されたメッセージのメタデータを蓄積する、ステップを更に有し、
前記(a)のステップにおいて、前記(e)のステップで蓄積されたメタデータを対象として、キーワードを抽出する、付記8〜11のいずれかに記載の管理方法。
【0151】
(付記13)
(f)前記ファイルタグループそれぞれの適用された頻度を集計し、集計された頻度が設定された基準値を満たさないフィルタグループが存在する場合に、当該フィルタグループを削除する、ステップを、更に有する、付記8〜12のいずれかに記載の管理方法。
【0152】
(付記14)
前記(d)のステップにおいて、選択されたフィルタグループに属する各フィルタに優先度が設定されている場合に、優先度が高い順に、前記各フィルタを適用する、付記8〜13のいずれかに記載の管理方法。
【0153】
(付記15)
コンピュータによって、管理対象となる機器から受信したメッセージに基づいた前記機器の管理を行うためのプログラムであって、
前記コンピュータに、
(a)既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、ステップと、
(b)設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、ステップと、
(c)前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、ステップと、
(d)前記受信したメッセージに対して、選択されたフィルタグループを適用する、ステップと、
を実行させるプログラム。
【0154】
(付記16)
前記(c)のステップにおいて、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードに関連する第1のフィルタが属している第1のフィルタグループを選択する、
付記8に記載のプログラム。
【0155】
(付記17)
前記(a)のステップにおいて、前記メタデータから、前記メタデータのカテゴリ毎に、キーワードを抽出し、その後、前記メタデータのカテゴリ毎に、抽出したキーワードそれぞれに、識別子を割り当て、
前記(b)のステップにおいて、抽出された前記キーワード毎に、前記第1のフィルタグループを設定する際に、前記第1のフィルタグループに、桁数が前記カテゴリの数と一致し、且つ、当該キーワードのカテゴリが対応している桁に当該キーワードの前記識別子が割り当てられた、グループIDを設定し、
前記(c)のステップにおいて、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードの識別子とそのカテゴリとから、対応する前記グループIDを特定し、特定されたグループIDが設定された第1のフィルタグループを選択する、付記9に記載のプログラム。
【0156】
(付記18)
前記(b)のステップにおいて、前記第1のフィルタグループを作成した後、2以上の前記第1のフィルタグループを用いて、2以上のキーワードに関連する第1のフィルタで構成された第1のフィルタグループを更に作成する、付記8〜10のいずれかに記載のプログラム。
【0157】
(付記19)
(e)前記フィルタグループの適用によって選別されたメッセージのメタデータを蓄積する、ステップを更に前記コンピュータに実行させ、
前記(a)のステップにおいて、前記(e)のステップで蓄積されたメタデータを対象として、キーワードを抽出する、付記8〜11のいずれかに記載のプログラム。
【0158】
(付記20)
(f)前記ファイルタグループそれぞれの適用された頻度を集計し、集計された頻度が設定された基準値を満たさないフィルタグループが存在する場合に、当該フィルタグループを削除する、ステップを、更に前記コンピュータに実行させる、付記8〜12のいずれかに記載のプログラム。
【0159】
(付記21)
前記(d)のステップにおいて、選択されたフィルタグループに属する各フィルタに優先度が設定されている場合に、優先度が高い順に、前記各フィルタを適用する、付記8〜13のいずれかに記載のプログラム。
【産業上の利用可能性】
【0160】
本発明によれば、フィルタの優先度の設定を変更することなく、フィルタ処理の工数を低減することができる。よって、本発明は、データセンターなど、マネージャ−エージェント構成によってサーバを運用管理する必要があり、そして、大量のメッセージの処理が必要となる分野に有用である。
【符号の説明】
【0161】
51 メタデータ
52 閾値データ
53 テンプレート
61 フィルタ定義
62 第1のフィルタグループの定義
63 第2のフィルタグループの定義
64 グループ定義
65 呼び出し回数
66 削除閾値
100 管理装置
101 メッセージ受信部
102 フィルタ処理部
103 フィルタ蓄積部
104 メッセージログ蓄積部
105 メタデータ蓄積部
106 グループ処理部106
107 スケジュール部
108 グループ定義蓄積部
109 キーワード蓄積部
110 アクション実行部
111 フィルタ更新部
112 グループメンテナンス部
120 コンピュータ
121 CPU
122 メインメモリ
123 記憶装置
124 入力インターフェイス
125 表示コントローラ
126 データリーダ/ライタ
127 通信インターフェイス
128 入力機器
129 ディスプレイ装置
130 記録媒体
131 バス
140 管理システム
200 エージェント
201 メッセージログファイル蓄積部
202 コマンド
210 管理対象となる機器
300 監視装置
301 メッセージ確認部
302 フィルタ設定部
400 ネットワーク

【特許請求の範囲】
【請求項1】
管理対象となる機器から受信したメッセージに基づいて前記機器の管理を行う管理装置であって、
既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、キーワード分析部と、
設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、フィルタグループ作成部と、
前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、フィルタグループ振分け部と、
前記受信したメッセージに対して、選択されたフィルタグループを適用する、フィルタグループ適用部と、
を備えていることを特徴とする管理装置。
【請求項2】
前記フィルタグループ振分け部は、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードに関連する第1のフィルタが属している第1のフィルタグループを選択する、
請求項1に記載の管理装置。
【請求項3】
前記キーワード分析部が、前記メタデータから、前記メタデータのカテゴリ毎に、キーワードを抽出し、その後、前記メタデータのカテゴリ毎に、抽出したキーワードそれぞれに、識別子を割り当て、
前記フィルタグループ作成部が、抽出された前記キーワード毎に、前記第1のフィルタグループを設定する際に、前記第1のフィルタグループに、桁数が前記カテゴリの数と一致し、且つ、当該キーワードのカテゴリが対応している桁に当該キーワードの前記識別子が割り当てられた、グループIDを設定し、
前記フィルタグループ振分け部は、受信したメッセージのメタデータが、抽出された前記キーワードと一致する場合に、一致した前記キーワードの識別子とそのカテゴリとから、対応する前記グループIDを特定し、特定されたグループIDが設定された第1のフィルタグループを選択する、請求項2に記載の管理装置。
【請求項4】
前記フィルタグループ作成部が、前記第1のフィルタグループを作成した後、2以上の前記第1のフィルタグループを用いて、2以上のキーワードに関連する第1のフィルタで構成された第1のフィルタグループを更に作成する、請求項1〜3のいずれかに記載の管理装置。
【請求項5】
前記フィルタグループ適用部による前記フィルタグループの適用によって選別されたメッセージのメタデータを蓄積する、メタデータ蓄積部を更に備え、
前記キーワード分析部が、前記メタデータ蓄積部に蓄積されたメタデータを対象として、キーワードを抽出する、請求項1〜4のいずれかに記載の管理装置。
【請求項6】
前記ファイルタグループそれぞれの適用された頻度を集計し、集計された頻度が設定された基準値を満たさないフィルタグループが存在する場合に、当該フィルタグループを削除する、グループメンテナンス部を、更に備えている、請求項1〜5のいずれかに記載の管理装置。
【請求項7】
前記フィルタグループ適用部が、選択されたフィルタグループに属する各フィルタに優先度が設定されている場合に、優先度が高い順に、前記各フィルタを適用する、請求項1〜6のいずれかに記載の管理装置。
【請求項8】
管理対象となる機器から受信したメッセージに基づいて前記機器の管理を行うための方法であって、
(a)既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、ステップと、
(b)設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、ステップと、
(c)前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、ステップと、
(d)前記受信したメッセージに対して、選択されたフィルタグループを適用する、ステップと、
を有することを特徴とする管理方法。
【請求項9】
コンピュータによって、管理対象となる機器から受信したメッセージに基づいた前記機器の管理を行うためのプログラムであって、
前記コンピュータに、
(a)既に受信しているメッセージのメタデータから、出現頻度が設定された閾値以上となるメタデータをキーワードとして抽出する、ステップと、
(b)設定条件に基づいてメッセージを選別するフィルタ群を、抽出された前記キーワードに関連する第1のフィルタと、前記第1のフィルタ以外の第2のフィルタとに分け、
そして、抽出された前記キーワード毎に、当該キーワードに関連する前記第1のフィルタが属する第1のフィルタグループを作成し、
更に、前記第2のフィルタが属する第2のフィルタグループを作成する、ステップと、
(c)前記機器からメッセージを受信すると、受信したメッセージのメタデータが、抽出された前記キーワードと一致するかどうか判定し、判定結果に基づいて、いずれかの前記第1のフィルタグループと前記第2のフィルタグループとの中から、前記受信したメッセージに対して適用するフィルタグループを選択する、ステップと、
(d)前記受信したメッセージに対して、選択されたフィルタグループを適用する、ステップと、
を実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−123539(P2012−123539A)
【公開日】平成24年6月28日(2012.6.28)
【国際特許分類】
【出願番号】特願2010−272766(P2010−272766)
【出願日】平成22年12月7日(2010.12.7)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.COMPACTFLASH
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】