(57)【特許請求の範囲】
【請求項１】
外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うと共に当該分析結果に基き前記フィルタ条件情報の更新を行うフィルタ分析更新部とを備えたフィルタ設定システムであって、
前記フィルタ分析更新部は、
前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出する単語分類手段と、
前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新するフィルタ条件追加更新手段と、
前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定するフィルタ有効性判定手段と、前記有効性がないと判定されたフィルタ条件情報を削除するフィルタ条件削除更新手段とを備えたことを特徴とするフィルタ設定システム。
【請求項２】
請求項１に記載のフィルタ設定システムにおいて、
前記フィルタ条件追加更新手段は、前記メッセージ中における前記単語の出現場所にかかる情報を取得すると共に、異なる条件単語間で前記算出された出現頻度割合が同値である場合に前記出現場所が前記メッセージ内の先頭に近い条件単語を優先する単語優先度設定機能を備えたことを特徴とするフィルタ条件設定システム。
【請求項３】
請求項１又は２に記載のフィルタ条件設定システムにおいて、
単語分類手段は、予め前記条件単語の定義内容を設定することにより前記メッセージ中における分析範囲を既定する条件単語定義設定機能を備えたことを特徴とするフィルタ条件設定システム。
【請求項４】
請求項１又は２に記載のフィルタ条件設定システムにおいて、
前記フィルタ条件削除更新手段が削除の対象とするフィルタ条件情報を前記フィルタ条件追加更新手段による追加更新が行われたフィルタ条件情報に限定することを特徴としたフィルタ条件設定システム。
【請求項５】
外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うフィルタ分析更新部とを備えたフィルタ設定システムにあって、前記分析結果に基き前記フィルタ条件情報の更新を行うフィルタ設定方法において、
前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出し、
前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新し、
前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定し、前記有効性がないと判定されたフィルタ条件情報を削除することを特徴としたフィルタ設定方法。
【請求項６】
外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うフィルタ分析更新部とを備えたフィルタ設定システムにあって、前記分析結果に基き前記フィルタ条件情報の更新を行うフィルタ設定プログラムにおいて、
前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出する単語分類機能と、
前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新するフィルタ条件追加更新機能と、
前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定するフィルタ有効性判定機能と、前記有効性がないと判定されたフィルタ条件情報を削除するフィルタ条件削除更新機能と、をコンピュータに実行させることを特徴としたフィルタ設定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メッセージ内に含まれる文字列情報に基づきメッセージのフィルタリング処理を行うメッセージ処理システムに関する。
【背景技術】
【０００２】
監視対象のエージェント端末から出力されるメッセージの監視を行うことにより、エージェント端末の運用管理を行う運用管理システムが利用されている。
この運用管理システムでは、メッセージ内容のフィルタリング処理を行い、システム管理に係るメッセージを判別し、これ収集することにより、管理者はエージェント端末の動作状態を監視する。
【０００３】
一般に、メッセージのフィルタリング処理を行うマネージャ装置では、フィルタリング処理の対象としてワイルドカード（＊）などの正規表現を利用して、メッセージ中の文字列との一致の有無を判定し、一致する文字列やキーワードが含まれている場合に、このメッセージをシステム管理用のメッセージとして抽出し監視端末に通知する。監視端末では、通知されたメッセージを出力表示することにより、システム管理者はエージェント端末の動作状態を監視することができる。
【０００４】
しかしながら、例えば、フィルタリング処理に利用されるフィルタ条件の中に非効率なフィルタ条件が含まれる場合、フィルタリング処理に係る処理負荷が膨大となり、その結果、他のフィルタ条件によるフィルタリング処理にも遅延が発生するといった不都合が生じ得る。
【０００５】
また、適切なフィルタが設定されていない場合、迅速なフィルタリング処理（メッセージ処理）が行われないことにより、メッセージ処理を行っているＣＰＵなどに高負荷がかかり、マネージャ装置における他のさまざまな処理などにも遅延などが生じ得るという不都合があった。
【０００６】
また、一般に、メッセージの発生頻度や傾向の分析は、システムの運用管理者により人的に行われる場合が多く、この場合、適切なフィルタ条件やフィルタ定義を設定するために膨大な工数や手間がかかる、といった不都合がある。
【０００７】
これに対する関連技術として、フィルタリング処理時にメッセージに一致したフィルタ定義にポイントを加算し、ポイントが大きいフィルタ定義が優先順位として上位にくるように設定してフィルタの優先順位を更新することにより、フィルタリング処理の効率を向上させるシステムが開示されている（特許文献１）。
また、フィルタに一致しなかったメッセージを収集し、このメッセージの内容および傾向などを分析し、フィルタリング処理する直前に、分析したデータからメッセージがフィルタリング処理を行う必要があるか否かを判別し、不要なフィルタリング処理が行われるのを軽減する技術も開示されている。
【０００８】
また、この関連技術として、フィルタ条件に一致したメッセージを検出すると共にこれを格納し、このメッセージ内容の分析結果に基きフィルタの条件の設定や変更を行うシステムが開示されている（特許文献２）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００６−２６００５６号公報
【特許文献２】特開２００９−２１７３９２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記特許文献１に記載の関連技術では、設定されたフィルタの順位を入れ替えることは可能であるが、そのフィルタの内容が所望のメッセージ抽出のために最適化されていない場合、フィルタ内容を更新することができないという不都合がある。
また、上記特許文献２に記載の関連技術では、フィルタリング処理における処理負荷軽減用にフィルタの内容を変更するものではないため、フィルタリング処理に係る処理負荷の増大を有効に抑止することができないといった不都合が生じ得る。
【００１１】
［発明の目的］
本発明は、上記関連技術の有する不都合を改善し、メッセージ処理にかかる処理負荷を軽減し迅速なメッセージ処理を行うフィルタ設定システム、フィルタ設定方法、及びフィルタ設定プログラムを提供することを、その目的とする。
【課題を解決するための手段】
【００１３】
本発明に係るフィルタ設定システムは、外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うと共に当該分析結果に基き前記フィルタ条件情報の更新を行うフィルタ分析更新部とを備えたフィルタ設定システムであって、前記フィルタ分析更新部は、前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出する単語分類手段と、前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新するフィルタ条件追加更新手段と、前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定するフィルタ有効性判定手段と、前記有効性がないと判定されたフィルタ条件情報を削除するフィルタ条件削除更新手段とを備えたことを特徴としている。
【００１４】
また、本発明に係るフィルタ設定方法は、外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うフィルタ分析更新部とを備えたフィルタ設定システムにあって、前記分析結果に基き前記フィルタ条件情報の更新を行うフィルタ設定方法において、前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出し、前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新し、前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定し、前記有効性がないと判定されたフィルタ条件情報を削除することを特徴としている。
【００１５】
また、本発明に係るフィルタ設定プログラムは、外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うフィルタ分析更新部とを備えたフィルタ設定システムにあって、前記分析結果に基き前記フィルタ条件情報の更新を行うフィルタ設定プログラムにおいて、前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出する単語分類機能と、前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新するフィルタ条件追加更新機能と、前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定するフィルタ有効性判定機能と、前記有効性がないと判定されたフィルタ条件情報を削除するフィルタ条件削除更新機能と、をコンピュータに実行させることを特徴としている。
【発明の効果】
【００１６】
本発明は、上述したように、フィルタリング処理によりフィルタに一致したメッセージから出現頻度割合が一定値以上の条件単語を追加フィルタ定義として抽出すると共にこの追加フィルタ定義により予め設定されたフィルタの内容を更新する手段と、追加フィルタによるフィルタリング処理の有効性が一定値に満たないフィルタを特定して削除する手段を備えた構成としたことにより、メッセージ処理にかかる処理負荷を軽減しメッセージ処理を迅速化することを可能とするフィルタ設定システム、フィルタ設定方法、及びフィルタ設定プログラムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態に係るフィルタ設定システムの一実施形態を示す概略ブロック図である。
【図２】図１で示したフィルタ設定システムにおけるフィルタ最適化時の分析手段の動作構成を示すブロック図である。
【図３】図１で示したフィルタ設定システムにおけるフィルタ最適化確認処理時の分析手段の動作構成を示すブロック図である。
【図４】図１で示したフィルタ設定システムにおけるフィルタリング処理の性能処理特性を示す説明図である。
【図５】図１で示したフィルタ設定システムにおけるフィルタ一致ＤＢ部から抽出されたメッセージに含まれる単語の分類内容を示す説明図である。
【図６】図１で示したフィルタ設定システムにおける追加フィルタ定義の候補として抽出された各単語の出現頻度を示す説明図である。
【図７】図１で示したフィルタ設定システムにおける追加フィルタ定義に一致したメッセージの件数および割合を示す説明図である。
【図８】図８（Ａ）は、図１で示したフィルタ設定システムにおけるフィルタに一致したメッセージ中の第１単語の分類内容を示す説明図であり、図８（Ｂ）は、上記メッセージ中における単語の長さの出現回数および割合を示す説明図である。
【図９】図１で示したフィルタ設定システムにおける追加フィルタ定義の候補として抽出された各単語の出現頻度を示す説明図である。
【図１０】図１で示したフィルタ設定システムにおける追加フィルタ定義に一致したメッセージの件数および割合を示す説明図である。
【図１１】図１１（Ａ）は、図１で示したフィルタ設定システムにおけるフィルタに一致したメッセージ中の第１単語の分類内容を示す説明図であり、図１１（Ｂ）は、フィルタに一致したメッセージ中の第２単語の分類内容を示す説明図であり、図１１（Ｃ）は、フィルタに一致したメッセージ中の第３単語の分類内容を示す説明図であり、図１１（Ｄ）は、フィルタに一致したメッセージ中の第４単語の分類内容を示す説明図であり、図１１（Ｅ）は、フィルタに一致したメッセージ中の第５単語の分類内容を示す説明図であり、図１１（Ｆ）は、上記メッセージ中における単語の長さの出現回数および割合を示す説明図である。
【図１２】図１で示したフィルタ設定システムにおける追加フィルタ定義の候補として抽出された各単語の出現頻度を示す説明図である。
【図１３】図１で示したフィルタ設定システムにおける追加フィルタ定義に一致したメッセージの件数および割合を示す説明図である。
【発明を実施するための形態】
【００１８】
［実施形態］
次に、本発明を実施するための実施形態について図面を参照して説明する。
【００１９】
本発明の実施形態としてのメッセージ処理システムは、プログラム制御により動作することによりメッセージ処理を行うマネージャ装置（フィルタ設定システム）５１を有し、このメッセージ処理装置５１は、図１に示すように、予め設定された端末装置である各エージェント端末（６１、６２、・・・、６Ｎ）から送り込まれたメッセージを受信するメッセージ受信部２２と、このメッセージに対して予め設定されたフィルタ条件との一致が確認されたメッセージを抽出する「フィルタリング処理」を行うフィルタ処理部２１と、フィルタ処理部２１で利用されるフィルタ条件（フィルタ条件情報：フィルタ（０１，０２，・・・，０Ｎ））を記憶保持するフィルタ保持部８１と、上記抽出されたメッセージを蓄積するフィルタ一致データベース部１１と、蓄積された各メッセージの分析を行うと共に当該分析の結果に基き上記フィルタ条件情報の更新を行う分析部７１を備えた構成を有する。
【００２０】
以下、これを詳説する。
マネージャ装置５１のメッセージ受信部２２は、エージェント端末６１、６２、・・・６（Ｎ−１）、６Ｎから送り込まれたメッセージを受信するメッセージ受信機能を有する。
【００２１】
フィルタ処理部２１は、フィルタ保持部８１内に予め設定されたフィルタ条件情報（以下「フィルタ」という）を読み込むと共にこのフィルタに基づき、メッセージ受信部２２を介して取得したメッセージのフィルタリング処理を行う。
また、フィルタ処理部２１は、上記フィルタリング処理として、取得したメッセージの内容がフィルタ保持部８１に格納されたフィルタ（フィルタ条件情報）０１、０２、・・・、０Ｎの何れかに一致するか否かの判定（フィルタ判定）を行う（フィルタ一致判定機能）。
また、フィルタ処理部２１は、フィルタ（フィルタ条件情報）０１、０２、・・・、またはＮに一致したメッセージ（フィルタ一致メッセージ）を抽出し、このフィルタ一致メッセージをフィルタ一致データベース部１１に格納するメッセージ抽出格納機能を有する。
【００２２】
ここで、フィルタ一致データベース（ＤＢ）部１１に格納されたメッセージ（フィルタ一致メッセージ）は、フィルタ一致ＤＢ部１１内に予め設定された蓄積期間設定情報に基づき、各フィルタ（０１、０２、・・・、またはＮ）に対応して一定期間格納される。
尚、フィルタ一致メッセージは、フィルタ０１用、フィルタ０２用、・・・フィルタＮ用のように（図１）、それぞれフィルタ保持部８１に格納された各フィルタに対応して格納されるものとする。また、蓄積期間設定情報には、フィルタ一致メッセージがフィルタ一致ＤＢ内に蓄積保存される期間が各フィルタに対応して予め設定されているものとする。
【００２３】
分析部７１は、上述のように、フィルタ一致ＤＢ部１１内に一定期間蓄積されたフィルタ一致メッセージについて、メッセージ内容の分析を行うと共に、この分析結果に基き、フィルタ保持部８１内に格納されたフィルタの最適化を行う（つまり、フィルタを最適状態に更新する）フィルタ最適化更新機能を有する（図１）。
【００２４】
尚、上記フィルタ最適化更新機能によりフィルタ保持部８１に追加更新されたフィルタは、既にフィルタの最適化が行われたとみなせるため、以降のフィルタ最適化更新機能の実行時においては最適化処理の対象としないものとする。
以下、分析部７１の内部構成について説明する（図２）。
【００２５】
分析部７１は、フィルタ保持部８１に設定されたフィルタに含まれる、予め設定された部分データに一致する部分データをフィルタ一致ＤＢ部１１に格納されたフィルタ一致メッセージから抽出し当該部分データについて単語長に係る分析を行う単語・長さ分析手段７２と、単語・長さ分析手段７２による分析結果として抽出された単語（文字列）について、当該単語（文字列）の出現頻度に基づき、フィルタ候補として選出するか否かを判定する出現頻度分析手段７４と、出現頻度分析手段７４により選出されたフィルタ候補の出現確率を算出すると共に、この出現確率が一定値より高い単語（文字列）を更新用フィルタ情報として選定するフィルタ候補選定手段７５を有する。
【００２６】
単語・長さ分析手段７２は、上述のように、フィルタ処理部２１によるフィルタリング処理を効率化するための該当箇所として特定された、フィルタ条件情報（フィルタ０１〜Ｎ）に含まれる部分データをフィルタ一致ＤＢ部１１に格納されたメッセージ中から抽出する部分データ抽出機能を備えている。
【００２７】
また、単語・長さ分析手段７２は、予め設定された単語設定情報に基づき、上記抽出された部分データに含まれる単語ごとに出現頻度をカウントし、出現頻度が一致しているものにグループ分けするグループ判別機能と、単語の出現場所が部分データにおける先頭から何バイト目か、単語の長さがいくつかを調べる単語出現位置調査機能を有する。
【００２８】
更に、単語・長さ分析手段７２は、部分データが含まれるメッセージの全体の長さを取得するメッセージ長取得機能を備えている。
尚、単語・長さ分析手段７２は、単語の出現場所が部分データにおける先頭から何バイト目か、単語の長さ、および部分データが含まれるメッセージの全体の長さを調査結果として出現頻度分析手段７４に通知するものとする。
【００２９】
出現頻度分析手段７４は、単語・長さ分析手段７２による調査結果に含まれる単語の出現頻度について、効率化フィルタ作成定義設定情報内に予め設定された単語の出現頻度に係る値（出現頻度値）を比較し、調査結果に含まれる単語の出現頻度が一定値以上であるか否かを判定する単語長比較判定機能と、調査結果に含まれる単語の出現頻度が一定値以上である場合に、この単語文字列をフィルタ候補として選出するフィルタ候補選出機能を有する。
尚、ここでフィルタ候補として選出された単語文字列はフィルタ候補選定手段７５に通知されるものとする。
【００３０】
フィルタ候補選定手段７５は、出現頻度分析手段７４から通知された各フィルタ候補の出現確率を算出する出現確率算出機能と、算出された出現確率と効率化フィルタ作成定義設定情報内に設定された値を比較すると共に、出現確率が一定値より高いフィルタ候補を最終的な更新用フィルタ情報として決定する更新用フィルタ情報決定機能を備えている。
【００３１】
また、フィルタ候補選定手段７５は、上記決定された更新用フィルタ情報に重複が無いことを確認する重複確認機能と、異なるフィルタ候補それぞれにおける出現確率が同じ（同等）である場合に、単語の出現場所が先頭により近いものを優先することにより更新用フィルタ情報を決定する出現場所優先決定機能を備えている。
また、フィルタ候補選定手段７５は、更新用フィルタ情報をフィルタ条件情報（フィルタ）としてフィルタ保持部８１に対して追加設定する（フィルタ追加設定機能）。
【００３２】
尚、上記フィルタ候補選定手段７５は、新たに追加した更新用フィルタ情報（追加フィルタ）に対して、当該フィルタ条件情報の元データとなった部分データを、フィルタ定義情報として付加するものとする。
これにより、フィルタ保持部８１内に設定された各フィルタ条件情報（追加フィルタ）について、後述する、「追加フィルタの最適化確認処理」時に、効率化用部分データに該当する部分を容易に確認することが可能となる。
【００３３】
更に、分析部７１は、図３に示すように、効率化フィルタ作成定義設定情報に基づき、蓄積されたメッセージを分析し、追加されたフィルタの有効性を確認するフィルタ有効性分析手段７７を備えている。
また、このフィルタ有効性分析手段７７は、フィルタ一致データベース部１１に蓄積されたメッセージより、追加フィルタと元になったフィルタで、それぞれ一致したメッセージ数と全体のメッセージ数に対して、追加された各フィルタで一致したメッセージ数の割合を算出する一致割合算出機能を有する。
【００３４】
ここで、本実施形態のマネージャ装置５１における処理機能について、具体的に説明する。マネージャ装置５１は上記構成により、以下に示す、通常の運用時におけるメッセージ蓄積機能、フィルタ最適化更新機能、および追加フィルタの最適化確認処理機能の実行を行う。
ここで、フィルタに使用される正規表現について説明する。
尚、本実施形態においては、フィルタ処理部２１における、フィルタリング処理の性能処理特性として、先頭に近く短い文字列の方が、ＣＰＵ処理時間が短いものとする。
以下、この正規表現について、図４に基づき具体的に説明する。
この図４では、ワイルドカード指定（＊）を行った場合を基準として、フィルタ処理部２１における処理時間（ＣＰＵ処理時間）、フィルタの種類、およびフィルタとしての条件例ごとの処理速度の改善率を示している。
【００３５】
例えば、先頭に近い一定値より短い文字列（例：ＡＡＡ）との一致の有無を調べるフィルタリング処理では、文字のワイルドカード指定（Ｘ）に比べて処理速度が約８６％改善されることが示されている。
また、文字列全体（ＡＡＡＢＢＢＣＣＣＤＤＤ）の一致を調べるフィルタリング処理では、文字のワイルドカード指定（Ｘ）に比べて処理速度が約１６％改善されることが示されている。
【００３６】
このように、フィルタ定義（種類、条件例）により、フィルタリング処理に係る性能処理時間が異なる。
このため、本実施形態では、フィルタに一致したメッセージを、各フィルタに対応させてフィルタ一致ＤＢ部１１に一定期間蓄積し、分析部７１において、蓄積されたメッセージを単語単位に分割し、各単語につき全メッセージ件数に占める出現頻度割合が一定基準を超えている場合に、この単語を使用したフィルタ定義（追加フィルタ）を生成し、このフィルタ定義に追加することにより、フィルタ保持部８１内のフィルタを最適化する。
これにより、フィルタ処理部２１におけるフィルタ性能を向上させる構成となっている。
【００３７】
尚、フィルタ一致ＤＢ部１１内に予め設定された蓄積期間設定情報は、フィルタに一致したメッセージをフィルタ一致データベース部１１に蓄積する期間（例えば「1ヶ月と定義した場合、フィルタ一致データベース部１１に1ヶ月間、蓄積される」）が記載されたファイル情報である。
【００３８】
また、フィルタ保持部８１に格納された各フィルタ（０１，０２，・・・，０Ｎ）は、１または異なる複数のフィルタ定義が記載されたファイル情報であって、フィルタ処理部２１は、このフィルタ定義に基づきメッセージフィルタリング処理の実行する。
これにより、メッセージ受信部２２が取得したメッセージ全体から抽出対象となるメッセージが選別される。
【００３９】
各フィルタ（０１，０２，・・・，０Ｎ）の内容は、正規表現により特定のキーワードが指定記載されたファイル情報であって、各フィルタは、予め設定されたフィルタ定義や、分析部７１によるフィルタ最適化処理機能の実行により、追加記載されたフィルタ定義などを含む。
【００４０】
また、各フィルタには、当該各フィルタの元になったフィルタ（元フィルタ）が記述されているものとし、例えば、「「フィルタｘｘｘｘ」の分析結果より追加」といった文言がコメントとして記載されているものとする。
【００４１】
また、後述する追加フィルタの最適化処理により、削除されたフィルタ定義は、元になった定義が何かわかるように、例えば、「「フィルタｘｘｘｘ」の分析結果より追加確認後無効」といった文言が、分析部７１によりコメントとして記載されているものとする。
【００４２】
ここで、具体的にフィルタ０１、０２、および０３の記載内容であるフィルタ定義を例示する。
【００４３】
（フィルタ０１の内容始まり）
＊
（フィルタ０１の内容始まり）
【００４４】
（フィルタ０２の内容始まり）
＃  ＣＰＵが高負荷：＊  で発生の分析結果より追加
ＣＰＵが高負荷：．｛８｝  で発生。
＃  ＣＰＵが高負荷：＊  で発生の分析結果より追加
ＣＰＵが高負荷：．｛７｝ で発生。
ＣＰＵが高負荷：* で発生。
（フィルタ０２の内容  ここまで）
【００４５】
（フィルタ０３の内容始まり）
＃  Ｅｒｒｏｒ：  ＊  ＯＲＡ−．＊  （サーバ）の分析結果より追加確認後無効
＃  Ｅｒｒｏｒ：  ｛２４｝  ＯＲＡ−．｛５７｝  (サーバ)
Ｅｒｒｏｒ：  ＊  ＯＲＡ−．＊（サーバ）
（フィルタ０２の内容  ここまで）
【００４６】
尚、上記フィルタ０２では、追加したフィルタ定義を示すため、フィルタ定義にコメント（＃から文末まで）が記述されている。
また、上記フィルタ０３においては、削除されたフィルタ定義を示すためのコメント（＃から文末まで）が記述されている。
【００４７】
（通常の運用時におけるメッセージ蓄積機能）
ここで、マネージャ装置５１における、「通常の運用時におけるメッセージ蓄積機能」について、図１に基づき説明する。
まず、メッセージ受信部２２が、上述のように、エージェント６１，６２，〜，６Ｎそれぞれから送られたメッセージを受信する。
尚、メッセージ受信部２２は、マネージャ装置５１の通常運用時にエージェント端末から出力されるメッセージを常時監視しているものとする。
【００４８】
次いで、フィルタ処理部２１が、受信されたメッセージがフィルタ保持部８１内に設定された各フィルタに一致するか否かの判定を行う。
ここで、フィルタ処理部２１は、設定されたフィルタに一致したメッセージを、予めフィルタ一致ＤＢ部内に設定された蓄積期間設定情報に基づきフィルタ一致データベース部１１に一定期間格納する。
【００４９】
（フィルタ最適化更新機能）
次に、本実施形態における、「フィルタ最適化更新機能」について、図２に基づき説明する。
ここでは、各フィルタ（０１，０２，・・・，０Ｎ）に対応してフィルタ一致ＤＢ部１１内に一定期間蓄積されているメッセージ（フィルタ用メッセージ）について、分析部７１がメッセージ内容の分析を行い、これに基づき最適なフィルタの生成およびフィルタ更新を行う。
【００５０】
尚、このフィルタ最適化更新機能において、最適化対象となるフィルタには、このフィルタ最適化更新機能の実行により追加されたフィルタは、追加されたフィルタの最適化は既に行われているため、含まれないものとする。
【００５１】
まず、単語・長さ分析手段７２が、効率化したいフィルタの部分（効率化対象フィルタ部分）の抽出を行う。尚、この効率化対象フィルタ部分は、マネージャ装置５１の外部（例えば、オペレータ）から入力された情報に基づき設定される設定であってもよい。
ここで、単語・長さ分析手段７２は、効率化対象フィルタ部分を、フィルタ一致ＤＢ部１１内に蓄積されているメッセージ中から抜き出す。
【００５２】
また、単語・長さ分析手段７２は、単語出現頻度調査、単語長調査、単語出現場所調査、グループ分けついて、予め設定された単語設定情報に基づき、メッセージを単語単位に分割すると共に、当該単語の分類を行うものとする。
【００５３】
ここで、単語・長さ分析手段７２におけるメッセージ分析機能の実行時に利用される上記単語設定情報は、分析範囲、分析対象を示すファイルデータであり、単語・長さ分析手段７２は、この単語設定情報の内容により規定された分析範囲で上記メッセージ分析機能を実行するものとする。
【００５４】
単語設定情報の内容としては、例えば、「助詞や句読点等は除外する／しない」、「メッセージ中における「が」「。」等を除外する」、「単語の区切り文字（例えば、空白文字(タブ含む)とする）」などが記載されているものとする。
【００５５】
ここで、例えば、上記単語設定情報として、「同一メッセージ内に複数個ある同一単語を「1つ」としてカウントする」と記載されている場合、フィルタ一致ＤＢ部１１に格納された「ＣＰＵエラー。ＣＰＵが異常です。」というメッセージにおいては、文字列「ＣＰＵ」は２個出現しているが、１回の出現として扱われる。
【００５６】
尚、単語設定情報の内容は、マネージャ装置５１のオペレータなどにより入力および設定変更が可能であるものとする。これにより、オペレータは、マネージャ装置５１におけるフィルタリング処理にかかる処理負荷やフィルタリング処理時間などを考慮して、分析部７１による分析範囲を自由にカスタマイズすることができる。
【００５７】
ここで、単語・長さ分析手段７２は、以下に示すように、単語の分類処理を実行するものとする。
まず、単語・長さ分析手段７２は、単語ごとにメッセージ中における出現頻度を算出し、出現頻度が一致しているものを同一グループに設定し、単語の出現場所がメッセージ内における先頭から何バイト目かを算出すると共に、各単語の長さ（単語長）を算出する。
また、単語・長さ分析手段７２は、メッセージの全体の長さ（メッセージ長）を算出する。
【００５８】
次いで、出現頻度分析手段７４は、単語・長さ分析手段７２における上記分類処理結果の各値が、予め設定された効率化フィルタ作成定義設定情報として定義された閾値情報に基づき比較判定を行う。
ここで、分類処理結果の値が、効率化フィルタ作成定義設定情報として定義された閾値情報を上回る場合に、当該分類処理結果の値に対応する単語やメッセージを追加フィルタ候補として選出する。
【００５９】
尚、上記効率化フィルタ作成定義設定情報は、文字列のメッセージ全体に対する出現割合や文字列の一致の割合などの閾値情報が定義されているものとする。
例えば、効率化フィルタ作成定義設定情報の内容として、「全体に対する出現割合：３０％以上」と定義されている場合、メッセージ全体における特定の文字列の出現頻度が３０％以上である場合に、この文字列はフィルタ定義（追加フィルタ）としてフィルタ保持部８１に追加設定される。
【００６０】
次に、フィルタ候補選定手段７５は、追加フィルタ候補から最終的なフィルタ候補を決定する。
ここでは、まず、フィルタ候補選定手段７５は、出現頻度分析手段７４で選出された追加フィルタ候補のメッセージ内における出現確率を算出し、ここで算出された出現確率が予め設定された効率化フィルタ作成定義情報を上回る場合に、その追加フィルタ候補を追加フィルタ（追加フィルタ定義）として決定する。また、この追加フィルタの出現確率の高い順にフィルタ候補を選定する。
【００６１】
更に、フィルタ候補選定手段７５は、追加フィルタに重複が無いかを確認する。ここで、追加フィルタ同士の出現確率が同じである場合、追加フィルタである単語の出現場所が先頭に近いものを優先し、最終的な追加フィルタを決定する。
【００６２】
また、フィルタ候補選定手段７５は、フィルタ保持部８１に対して上記決定した追加フィルタを追加する
ここで、フィルタ候補選定手段７５は、追加したフィルタ定義（追加フィルタ）に対して、元になったフィルタ定義が何であるかがわかるように、フィルタ定義中に元になったフィルタ定義を示すコメントの記述を行うものとする。
尚、元になったフィルタ定義が何であるかを示す情報は、後述の「追加フィルタの最適化確認処理」時に使用される。
【００６３】
（追加フィルタの最適化確認処理機能）
次に、本実施形態のフィルタ有効性分析手段７７における、「追加フィルタの最適化確認処理機能」について、図３に基づき説明する。
ここで、分析部７１のフィルタ有効性分析手段７７は、最適化確認処理機能の実行により、フィルタ一致データベース部１１内に蓄積されたメッセージを取得すると共に、このメッセージを分析することにより追加フィルタの有効性の確認および有効性判定を行う。
【００６４】
尚、本実施形態における、追加フィルタの最適化確認処理機能実行時において、削除されるフィルタはフィルタ最適化により追加されたフィルタ（追加フィルタ）に限定されるものとする。また、追加フィルタの元となったフィルタは削除されないものとする。
以下、これを詳述する
【００６５】
フィルタ最適化処理機能の実行により、追加されたフィルタ（追加フィルタ）に対しても、「通常の運用時におけるメッセージ蓄積」と同様に、一致したメッセージは、フィルタごとに、フィルタ一致データベース部１１に一定期間蓄積される。
【００６６】
フィルタ有効性分析手段７７は、処理・フィルタ一致ＤＢ部１１に蓄積されたメッセージに基づき、追加されたフィルタ（追加フィルタ）と、この追加フィルタの元になったフィルタ（元フィルタ）とで、それぞれのフィルタに一致したメッセージ数を算出する。
尚、処理・フィルタ一致ＤＢ部１１に蓄積されたメッセージそれぞれには、どのフィルタに基づき抽出されたかを示す情報が含まれているものとする。
【００６７】
また、フィルタ有効性分析手段７７は、フィルタリング処理が行われた全体のメッセージ数に対して、各追加フィルタに一致したメッセージ数（つまり、追加フィルタにより抽出されたメッセージ）のメッセージ全体に対する割合（追加フィルタ抽出割合値）と、元フィルタに一致したメッセージ数のメッセージ全体に対する割合（元フィルタ抽出割合値）とをそれぞれ算出する。
これにより、追加フィルタおよび元フィルタそれぞれのフィルタリング効率が算出される。
【００６８】
更に、フィルタ有効性分析手段７７は、算出された追加フィルタ抽出割合値および元フィルタ抽出割合値が効率化フィルタ作成定義設定情報に設定された値を上回るか否か判定し、これにより、追加されたフィルタの有効性を判定する（フィルタ有効性判定機能）。
ここで、フィルタ有効性分析手段７７は、有効性が確認されたフィルタ（つまり、抽出割合値が効率化フィルタ作成定義設定情報に設定された値を上回る追加フィルタおよび元フィルタ）について、出現確率の高い順にフィルタを並べ替えを行い、一定の出現確率以上のフィルタを最終的なフィルタとして決定する。
また、フィルタ有効性分析手段７７は、フィルタ有効性判定機能の実行により有効性が確認できなかった、つまり、抽出割合値が効率化フィルタ作成定義設定情報に設定された値を下回るフィルタを削除する処理を行う。
【００６９】
（実施形態の動作説明）
次に上記実施形態の動作内容について、概説する。
本実施形態では、上記分析部７１の単語・長さ分析手段７２が、フィルタ一致ＤＢ部１１内のメッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、出現頻度分析手段７４が、算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出し（単語分類工程）、出現頻度分析手段７４が、条件単語からメッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、フィルタ候補選定手段７５が、追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新する（フィルタ条件追加更新工程）。
また、分析部７１のフィルタ有効性分析手段が、フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定し（フィルタ有効性判定工程）、有効性がないと判定されたフィルタ条件情報を削除する処理を行う（フィルタ条件削除更新工程）。
ここで、上記単語分類工程、フィルタ条件追加更新工程、フィルタ有効性判定工程、およびフィルタ条件削除更新工程については、その実行内容をプログラム化しコンピュータに実行させる構成であってもよい。
【００７０】
次に、上述の実施形態における「通常の運用時のメッセージ格納機能」、「フィルタ最適化処理機能」、および「追加フィルタの最適化確認処理機能」それぞれの機能の実行動作内容について、具体的に説明する。
【００７１】
尚、単語設定情報の記述内容は、「助詞や句読点等は除外する。」、「同じメッセージに複数個ある単語を1つとしてカウントしない。」、および「単語の区切りは、空白文字(タブ含む)。」とする。
【００７２】
また、効率化フィルタ作成定義設定情報の記述内容は、「全体に対する出現割合：３０％以上」とする。また、蓄積期間設定情報の記述内容は、「1ヶ月」とする。
ここで、フィルタ条件情報であるフィルタ０１の内容（フィルタ定義）を以下に示す。
【００７３】
（フィルタ０１の内容）
＊
（フィルタ０１の内容  ここまで）
【００７４】
（通常の運用時のメッセージ格納機能の実行動作）
まず、マネージャ装置５１のメッセージ受信部２２は、エージェント６１〜６Ｎそれぞれから送り込まれたメッセージを受信する。
次に、フィルタ処理部２１が、受信したメッセージがフィルタ０１（上記）の内容に一致するか否かを判定すると共に、一致したメッセージを抽出しフィルタ一致データベース部１１に格納する（フィルタリング処理）。尚、格納されたメッセージは蓄積期間設定に設定された期間記憶されるものとする。
【００７５】
ここで、フィルタ処理部２１によるフィルタリング処理の結果、フィルタ一致データベース部１１には、以下に示すメッセージが蓄積されるものとする。
【００７６】
（フィルタ一致データベース部１１の蓄積メッセージ）
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。
２００９／１／２  Ｅｒｒｏｒ：ネットワークコネクション切断
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
Ｅｒｒｏｒ：２００９ １ １１ Ｓｕｎ １３：２３  ＯＲＡ−１６５４： ｕｎａｂｌｅ ｔｏ ｅｘｔｅｎｄ ｉｎｄｅｘ (サーバ)
ＣＰＵ Ｅｒｒｏｒ：ＨＯＳＴ＿ＡＡＡ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
２００９／１／１８  Ｈａｎｄｌｅ Ｌｅａｋ．
Ｅｒｒｏｒ：２００９ ２ １１ Ｗｅｄ ８：３４  ＯＲＡ−１２５１４： ＴＮＳ： リスナーは接続記述子にあるＳＥＲＶＩＣＥ(サーバ)
（フィルタ一致データベース部１１の蓄積メッセージ  ここまで）
【００７７】
（フィルタ最適化処理機能の実行動作）
次に、分析部７１は、フィルタ一致データベース部１１に蓄積されているメッセージの分析を行い、これに基づきフィルタ保持部８１内に最適なフィルタを更新設定する。
ここでは、分析部７１の単語・長さ分析手段７２が、効率化したいフィルタの部分（フィルタ定義）の抽出を行う。
ここでは、フィルタ条件「＊」の「＊」に該当する部分を切り出して解析する。
【００７８】
ここで、単語・長さ分析手段７２が、フィルタ一致データベース部１１から切り出したメッセージを以下に示す。
【００７９】
（切り出されたメッセージ）
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。
２００９／１／２  Ｅｒｒｏｒ：ネットワークコネクション切断
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
Ｅｒｒｏｒ：２００９ １ １１ Ｓｕｎ １３：２３  ＯＲＡ−１６５４： ｕｎａｂｌｅ ｔｏ ｅｘｔｅｎｄ ｉｎｄｅｘ (サーバ)
ＣＰＵ Ｅｒｒｏｒ：ＨＯＳＴ＿ＡＡＡ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
２００９／１／１８  Ｈａｎｄｌｅ Ｌｅａｋ．
Ｅｒｒｏｒ：２００９ ２ １１ Ｗｅｄ ８：３４  ＯＲＡ−１２５１４： ＴＮＳ： リスナーは接続記述子にあるＳＥＲＶＩＣＥ(サーバ)となる。
（切り出されたメッセージ  ここまで）
【００８０】
次いで、単語・長さ分析手段７２は、メッセージ集における単語ごとの出現頻度、単語長さ調査を行うと共に、単語のグループ分け、単語ごとの出現頻度を算出し、出現頻度が一致するものにグループ分けを行う。
【００８１】
また、単語の出現場所が先頭から何バイト目かを調べると共に、単語の長さがを算出する。尚、単語の分類の方法は、「単語設定情報」に予め記載された定義に基づくものとする。
【００８２】
これにより、単語・長さ分析手段７２は、図５に示すように、抽出された各単語について、出現回数、出現割合、単語の出現場所、および単語の長さについて、リスト化された情報（テーブル情報）を生成する。
【００８３】
次に、出現頻度分析手段７４が、上記グループ分けの後、単語ごとにフィルタ定義を設定する。ここでは、予め設定された効率化フィルタ作成定義情報に設定された閾値以上の出現回数の単語をフィルタに追加する候補（追加フィルタ候補）として設定する。
【００８４】
尚、本実施形態では、効率化フィルタ作成定義情報の上記閾値は「３回」であるものとする。
これにより、ＣＰＵ、高負荷、ＨＯＳＴ＿ＡＡ、発生、Ｅｒｒｏｒ、およびＨＯＳＴ＿ＣＣが出現頻度分析手段７４により、フィルタ候補として抽出される。
【００８５】
次に、フィルタ候補選定手段７５は、上記追加フィルタ候補の出現確率（割合）を算出すると共に、図６に示すように、上記追加フィルタ候補を出現確率の高い順に並べ替え、出現確率が効率化フィルタ作成定義情報に設定された値（ここでは、「３０％」とする）以上のフィルタ候補を追加フィルタ候補として選出する（フィルタ候補選定機能）。また、フィルタ候補選定手段７５は、出現確率が３０％に満たないフィルタ候補は切り捨てる。
【００８６】
次いで、フィルタ候補選定手段７５は、選出した追加フィルタ候補に重複が無いか確認を行うと共に、重複があった場合、出現確率の低い方の追加フィルタ候補を削除する。
更に、出現確率も同値である場合、追加フィルタ候補の単語の出現場所が先頭に近い単語を優先する、つまり、追加フィルタ候補としての優先順位を上位に設定する。
【００８７】
具体的には、図６においては、「ＣＰＵ」と「発生」が重複であり、出現確率も同値なので、単語の出現場所が文末に近い「発生」を削除する。
また、「ＣＰＵ」と「高負荷」が重複なので、出現確率の低い「高負荷」を削除し、そして、「ＣＰＵ」と「ＨＯＳＴ＿ＡＡＡ」が重複なので、出現確率の低い「ＨＯＳＴ＿ＡＡＡ」を削除し、最後に、「ＣＰＵ」と「ＨＯＳＴ＿ＣＣ」が重複なので、出現確率の低い「ＨＯＳＴ＿ＣＣ」を削除する。
【００８８】
これにより、この段階における追加フィルタ候補は、「ＣＰＵ」と「Ｅｒｒｏｒ」になる。
フィルタ候補選定手段７５は、「ＣＰＵ」と「Ｅｒｒｏｒ」を追加フィルタ候補としてフィルタ保持部８１に送信する。
これにより、フィルタ０１の内容は、以下に示すように、更新される。
【００８９】
（フィルタ０１の内容）
＃  ＊の分析結果より追加
ＣＰＵ
＃  ＊の分析結果より追加<
Ｅｒｒｏｒ
＊
（フィルタ０１の内容ここまで）
【００９０】
尚、追加されたフィルタ定義は、元になったフィルタ定義が何であるかがわかるように、フィルタ候補選定手段７５により、フィルタ定義にコメントが付与されるものとする。
【００９１】
次いで、マネージャ装置５１のフィルタ処理部２１では、上記のように追加更新されたフィルタ０１に基づきフィルタリング処理されたメッセージ（フィルタに一致したメッセージ）がフィルタ一致データベース部１１に格納される、フィルタリング処理が実行される（通常の運用時のメッセージ格納工程）。
【００９２】
（追加フィルタの最適化確認処理機能）
次いで、分析部７１のフィルタ有効性分析手段７７が、フィルタ一致データベース部１１に格納されたメッセージを分析することにより、フィルタ保持部８１に設定された各フィルタのフィルタ定義によるフィルタリング処理の有効性を確認する処理を行う。
【００９３】
ここでは、フィルタ有効性分析手段７７が、フィルタ０１に含まれるフィルタ定義である、「ＣＰＵ」、「Ｅｒｒｏｒ」、および「＊」について、それぞれのフィルタリング処理に係る有効性を確認する。
以下、フィルタ０１に含まれるフィルタ定義を示す。
【００９４】
（フィルタ０１）
ＣＰＵ  分析の結果追加
Ｅｒｒｏｒ  分析の結果追加
＊
（フィルタ０１  ここまで）
【００９５】
ここで、フィルタ０１に含まれるフィルタ定義それぞれに一致したメッセージ数と、その全体のメッセージ数に対する割合は、図７に示すように、「ＣＰＵ」の蓄積件数が４０件、全体の割合が４０％、「Ｅｒｒｏｒ」の蓄積件数が１０件、全体の割合が１０％、「＊」の蓄積件数が５０件、全体の割合が５０％であるものとする。
【００９６】
この場合、「ＣＰＵ」、「Ｅｒｒｏｒ」、「＊」に一致した全体の件数１００件に対して、追加したフィルタ定義「ＣＰＵ」および「Ｅｒｒｏｒ」の蓄積件数は、それぞれ４０件および１０件で、全体に対する割合４０％および１０％であり、フィルタ有効性分析手段７７は、効率化フィルタ作成定義情報に設定された値に満たないフィルタ定義「Ｅｒｒｏｒ」は削除する。
これにより、フィルタ有効性分析手段７７による有効性確認処理後のフィルタ０１は、以下に示すように更新設定される。
【００９７】
（フィルタ０１の内容）
＃  ＊の分析結果より追加
ＣＰＵ
＃  ＊の分析結果より追加  確認後無効
＃Ｅｒｒｏｒ
＊
（フィルタ０１  ここまで）
【００９８】
尚、ここでは、削除されたフィルタ定義が何であるかがわかるように、削除されたフィルタ定義（Ｅｒｒｏｒ）をコメントアウトした状態で記述している。
【００９９】
以上のように、本実施形態では、ＣＰＵ使用時間が短くなるように、フィルタを効率化することが可能であり、メッセージが多発した場合でも、マネージャ装置に高負荷がかかるのを有効に抑制することができ、更には、メッセージ処理遅延の発生を抑制することが可能となる。
また、マネージャ装置５１の運用管理者が発生したメッセージの傾向を調べフィルタ内容（フィルタ定義）の更新を手動で行うことなく、自動でフィルタ内容を最適化する更新を行うことができる。
【０１００】
［実施形態の変形例（１）］
ところで、文字列の検索やフィルタリング処理のおいては、コンピュータ環境により正規表現の性能処理特性が異なるが、フィルタ定義としてのワイルドカード「＊」を、別の正規表現に置換えることにより、ＣＰＵ処理時間が短くすることが可能となる。
【０１０１】
つまり、効率的にフィルタ定義の更新を行うためのロジック（フィルタ更新ロジック）は、フィルタリング処理が行われるコンピュータ環境により異なるため、コンピュータ環境に応じてフィルタ更新ロジックを変更することにより、フィルタリング処理に係るＣＰＵ処理時間を短くすることができる。
尚、どのようなロジックを使用するかは、システム導入時に予め決定し、更には、フィルタリング処理の運用中に必要に応じて変更を実施するものとする。
【０１０２】
以下、上記実施形態における異なるロジックを採用した場合の、「通常の運用時のメッセージ格納機能」、「フィルタ最適化処理機能」、および「追加フィルタの最適化確認処理機能」それぞれの機能の実行動作について、具体的に説明する。
【０１０３】
尚、単語設定情報の記述内容は、上記実施形態と同様に、「助詞や句読点等は除外する。」、「同じメッセージに複数個ある単語を1つとしてカウントしない。」、および「単語の区切りは、空白文字(タブ含む)。」とする。
【０１０４】
また、効率化フィルタ作成定義設定情報の記述内容は、「全体に対する出現割合：３０％以上」とする。また、蓄積期間設定情報の記述内容は、「1ヶ月」とする。
ここで、フィルタ条件情報であるフィルタ０２の内容（フィルタ定義）を以下に示す。
【０１０５】
（フィルタ０２の内容）
ＣＰＵが高負荷：＊で発生。
（フィルタ０２の内容  ここまで）
【０１０６】
（通常の運用時のメッセージ格納機能の実行動作）
まず、マネージャ装置５１のメッセージ受信部２２は、エージェント６１〜６Ｎそれぞれから送り込まれたメッセージを受信する。
次に、フィルタ処理部２１が、受信したメッセージがフィルタ０１（上記）の内容に一致するか否かを判定すると共に、一致したメッセージを抽出しフィルタ一致データベース部１１に格納する（フィルタリング処理）。尚、格納されたメッセージは蓄積期間設定に設定された期間記憶されるものとする。
【０１０７】
ここで、フィルタ処理部２１によるフィルタリング処理の結果、フィルタ一致データベース部１１には、以下に示すメッセージが蓄積されるものとする。
【０１０８】
（フィルタ一致データベース部１１の蓄積メッセージ）
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡで発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣで発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＤＤＤで発生。
ＣＰＵが高負荷：ＨＯＳＴ＿Ｂで発生。
ＣＰＵが高負荷：ＨＯＳＴ＿ＤＤＤで発生。
（フィルタ一致データベース部１１の蓄積メッセージ  ここまで）
【０１０９】
次に、分析部７１は、フィルタ一致データベース部１１に蓄積されているメッセージの分析を行い、これに基づきフィルタ保持部８１内に最適なフィルタを更新設定する。
ここでは、分析部７１の単語・長さ分析手段７２が、効率化したいフィルタの部分（フィルタ定義）の抽出を行う。
ここでは、フィルタ条件「ＣＰＵが高負荷：＊で発生。」における「＊」の部分を切り出して解析する。
【０１１０】
ここで、単語・長さ分析手段７２が、フィルタ一致データベース部１１から切り出したメッセージを以下に示す。
【０１１１】
（切り出されたメッセージ）
ＨＯＳＴ＿ＡＡＡ
ＨＯＳＴ＿ＣＣ 
ＨＯＳＴ＿ＡＡＡ 
ＨＯＳＴ＿ＡＡＡ 
ＨＯＳＴ＿ＣＣ 
ＨＯＳＴ＿ＣＣ 
ＨＯＳＴ＿ＡＡＡ 
ＨＯＳＴ＿ＤＤＤ 
ＨＯＳＴ＿Ｂ 
ＨＯＳＴ＿ＤＤＤ
（切り出されたメッセージ  ここまで）
【０１１２】
次いで、単語・長さ分析手段７２は、単語設定情報に基づく単語分類を行う。
ここで、単語・長さ分析手段７２は、単語ごとに出現回数、および出現割合を算出しこれに基づきグループ分けを行う（図８（Ａ））。また、対象の単語の出現場所がメッセージ中の先頭から何バイト目か、また、単語の長さを算出する。更には、メッセージの全体の長さも算出する（図８（Ｂ））。
【０１１３】
これにより、単語・長さ分析手段７２は、図８（Ａ）および（Ｂ）に示すように、抽出された各単語について、出現回数、出現割合、単語の出現場所、および単語の長さについて、また、メッセージ全体の長さに対する出現回数、出現割合をリスト化したテーブル情報を生成する。
【０１１４】
次に、出現頻度分析手段７４が、単語・長さ分析手段７２で生成されたテーブル情報の内容に基づき、効率化フィルタ作成定義設定情報に設定された値との閾値判定を行い、追加フィルタ候補を選定する。
【０１１５】
ここでは、図８（Ａ）の内容に基づき出現割合が３０％以上である、ＨＯＳＴ＿ＡＡＡ、およびＨＯＳＴ＿ＣＣをフィルタ候補として抽出する。
これにより、この段階でのフィルタ候補は、「ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡで発生。」および「ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。」となる。
【０１１６】
図８（Ｂ）における全体の長さでは、効率化フィルタ作成定義情報の閾値を上回る文は、
８バイト、および７バイトが当てはまるので、それぞれをフィルタ候補として抽出する。
これにより、この段階での追加フィルタ候補は、「ＣＰＵが高負荷：．｛８｝ で発生。」、「ＣＰＵが高負荷：．｛７｝ で発生。」「ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡ で発生。」および「ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣ で発生。」となる。
【０１１７】
次いで、フィルタ候補選定手段７５は、選出した追加フィルタ候補の出現確率を算出すると共に、出現確率が３０％以上のものを追加フィルタ候補として選出し、次に、重複が無いか確認を行う。
ここで、重複があった場合、出現確率の低い方の追加フィルタ候補を削除する。
更に、出現確率も同値である場合、追加フィルタ候補の単語の出現場所が先頭に近い単語を優先する、つまり、追加フィルタ候補としての優先順位を上位に設定する。
【０１１８】
具体的には、図９に示すように、「ＣＰＵが高負荷：．｛８｝で発生。」と「ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡで発生。」が重複なので、出現確率の低い「ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡで発生。」を削除し、次に、「ＣＰＵが高負荷：．｛７｝で発生。」と「ＣＰＵが高負荷：ＨＯＳＴ＿ＣＣで発生。」が重複なので、優先度の低い「ＣＰＵが高負荷：ＨＯＳＴ＿ＡＡＡで発生。」を削除する。
【０１１９】
これにより、この段階における追加フィルタ候補は、「ＣＰＵが高負荷：．｛８｝で発生。」と「ＣＰＵが高負荷：．｛７｝で発生。」となる。
次いで、フィルタ候補選定手段７５は、この「ＣＰＵが高負荷：．｛８｝で発生。」と「ＣＰＵが高負荷：．｛７｝で発生。」を追加フィルタ候補としてフィルタ保持部８１に送信する。
これにより、フィルタ０２の内容は、以下に示すように、更新される。
【０１２０】
（フィルタ０２の内容）
＃ ＣＰＵが高負荷：＊ で発生 の分析結果より追加
ＣＰＵが高負荷：．｛８｝ で発生。
＃ ＣＰＵが高負荷：＊ で発生 の分析結果より追加
ＣＰＵが高負荷：．｛７｝ で発生。
ＣＰＵが高負荷：＊ で発生。
（フィルタ０２の内容  ここまで）
【０１２１】
尚、追加されたフィルタ定義は、元になったフィルタ定義が何であるかがわかるように、フィルタ候補選定手段７５により、フィルタ定義にコメントが付与されるものとする。
【０１２２】
次いで、マネージャ装置５１のフィルタ処理部２１では、上記のように追加更新されたフィルタ０２に基づきフィルタリング処理されたメッセージ（フィルタに一致したメッセージ）がフィルタ一致データベース部１１に格納される、フィルタリング処理が実行される（通常の運用時のメッセージ格納工程）。
【０１２３】
（追加フィルタの最適化確認処理機能）
次いで、分析部７１のフィルタ有効性分析手段７７が、フィルタ一致データベース部１１に格納されたメッセージを分析することにより、フィルタ保持部８１に設定された各フィルタのフィルタ定義によるフィルタリング処理の有効性を確認する処理を行う。
【０１２４】
ここでは、フィルタ有効性分析手段７７が、フィルタ０２に含まれるフィルタ定義である、「ＣＰＵが高負荷：．｛８｝で発生。」、「ＣＰＵが高負荷：．｛７｝で発生。」、および「ＣＰＵが高負荷：＊で発生。」について、それぞれのフィルタリング処理に係る有効性を確認する。
以下、フィルタ０２に含まれるフィルタ定義を示す。
【０１２５】
（フィルタ０２）
＃  ＣＰＵが高負荷：＊で発生の分析結果より追加
ＣＰＵが高負荷：．｛８｝で発生。
＃  ＣＰＵが高負荷：＊で発生の分析結果より追加
ＣＰＵが高負荷：．｛７｝で発生。
ＣＰＵが高負荷：＊で発生。
（フィルタ０２  ここまで）
【０１２６】
ここで、フィルタ有効性分析手段７７は、フィルタ一致データベース部１１に蓄積されているメッセージより、追加フィルタと元になったフィルタに基づき抽出された（一致した）メッセージ数と、全体のメッセージ数に対して、追加された各フィルタで一致したメッセージ数の割合を求める。
また、フィルタ有効性分析手段７７は、一致したメッセージ数の割合が効率化フィルタ作成定義設定情報の閾値以上であるか否かを判定し、これにより、追加されたフィルタの有効性を判定する。
有効性を確認したフィルタ定義については、出現確率の高い順にフィルタを並べ替えを行い、最終的なフィルタ定義を決定する。また、有効性が確認できなかったフィルタ定義については削除する。
【０１２７】
具体的には、フィルタ０２に含まれるフィルタ定義それぞれに一致したメッセージ数と、その全体のメッセージ数に対する割合は、図１０に示すように、「ＣＰＵが高負荷：．｛８｝で発生。」の蓄積件数が５０件、全体の割合が５０％、「ＣＰＵが高負荷：．｛７｝で発生。」の蓄積件数が４０件、全体の割合が４０％、「ＣＰＵが高負荷：＊で発生。」の蓄積件数が１０件、全体の割合が１０％である。
【０１２８】
ここでは、「ＣＰＵが高負荷：．｛８｝で発生。」、「ＣＰＵが高負荷：．｛７｝で発生。」、「ＣＰＵが高負荷：＊で発生。」に一致した全体の件数１００件に対して、追加したフィルタ定義「ＣＰＵが高負荷：．｛８｝で発生。」および「ＣＰＵが高負荷：．｛８｝で発生。」の蓄積件数は、それぞれ５０件および４０件で、全体に対する割合５０％および４０％である（一致）。
ここで、追加フィルタ定義の割合は、効率化フィルタ作成定義情報に設定された値（３０％）を上回っているため、削除されない。
これにより、フィルタ有効性分析手段７７による有効性確認処理後のフィルタ０２は、以下に示すように更新設定される。
【０１２９】
（フィルタ０２の内容）
＃  ＣＰＵが高負荷：＊で発生の分析結果より追加
ＣＰＵが高負荷：．｛８｝で発生。
＃  ＣＰＵが高負荷：＊で発生の分析結果より追加
ＣＰＵが高負荷：．｛７｝で発生。
ＣＰＵが高負荷：＊で発生。
（フィルタ０２  ここまで）
【０１３０】
尚、ここでは、削除されたフィルタ定義が何であるかがわかるように、削除されたフィルタ定義（Ｅｒｒｏｒ）をコメントアウトした状態で記述している。
【０１３１】
以上のように、上記実施形態の変形例（１）では、上記実施形態の場合と同様に、ＣＰＵ使用時間が短くなるように、フィルタを効率化することが可能であり、メッセージが多発した場合でも、マネージャ装置に高負荷がかかるのを有効に抑制することができ、更には、メッセージ処理遅延の発生を抑制することが可能となる。
また、マネージャ装置５１の運用管理者が発生したメッセージの傾向を調べフィルタ内容（フィルタ定義）の更新を手動で行うことなく、自動でフィルタ内容を最適化する更新を行うことができる。
【０１３２】
［実施形態の変形例（２）］
次に、上記実施形態および変形例（１）とは異なるフィルタ更新ロジックを採用した場合としての上記実施形態の変形例（２）における、「通常の運用時のメッセージ格納機能」、「フィルタ最適化処理機能」、および「追加フィルタの最適化確認処理機能」それぞれの実行動作内容について、具体的に説明する。
【０１３３】
尚、単語設定情報の記述内容は、上記実施形態と同様に、「助詞や句読点等は除外する。」、「同じメッセージに複数個ある単語を1つとしてカウントしない。」、および「単語の区切りは、空白文字(タブ含む)。」とする。
【０１３４】
また、効率化フィルタ作成定義設定情報の記述内容は、「全体に対する出現割合：３０％以上」とする。また、蓄積期間設定情報の記述内容は、「1ヶ月」とする。
ここで、フィルタ条件情報であるフィルタ０３の内容（フィルタ定義）を以下に示す。
【０１３５】
（フィルタ０３の内容）
Ｅｒｒｏｒ：．＊  ＯＲＡ−．＊  （サーバ）
（フィルタ０３の内容  ここまで）
【０１３６】
（通常の運用時のメッセージ格納機能の実行動作）
まず、マネージャ装置５１のメッセージ受信部２２は、エージェント６１〜６Ｎそれぞれから送り込まれたメッセージを受信する。
次に、フィルタ処理部２１が、受信したメッセージがフィルタ０３の内容に一致するか否かを判定すると共に、一致したメッセージを抽出しフィルタ一致データベース部１１に格納する（フィルタリング処理）。尚、格納されたメッセージは蓄積期間設定に設定された期間記憶されるものとする。
【０１３７】
ここで、フィルタ処理部２１によるフィルタリング処理の結果、フィルタ一致データベース部１１には、以下に示すメッセージが蓄積されるものとする。
【０１３８】
（フィルタ一致データベース部１１の蓄積メッセージ）
Ｅｒｒｏｒ：２００９ １ １ Ｓａｔ １２：２３  ＯＲＡ−１６５４： ｕｎａｂｌｅ ｔｏ ｅｘｔｅｎｄ ｉｎｄｅｘ (サーバ)
Ｅｒｒｏｒ：２００９ １ １１ Ｓｕｎ １３：２３  ＯＲＡ−１６５４： ｕｎａｂｌｅ ｔｏ ｅｘｔｅｎｄ ｉｎｄｅｘ (サーバ)
Ｅｒｒｏｒ：２００９ １ １５ Ｔｈｕ ８：３４  ＯＲＡ−１２１５４： ＴＮＳ： 指定された接続識別子を解決できませんでした。(サーバ)
Ｅｒｒｏｒ：２００９ １ ２０ Ｔｕｅ ２２：３  ＯＲＡ−１２１５４： ＴＮＳ： 指定された接続識別子を解決できませんでした。(サーバ)
Ｅｒｒｏｒ：２００９ １ ２８ Ｗｅｄ ７：１３  ＯＲＡ−１０３４： Ｏｒａｃｌｅは使用できません。(サーバ)
Ｅｒｒｏｒ：２００９ ２ ２ Ｍｏｎ １２：２３  ＯＲＡ−１２１５４： ＴＮＳ： 指定された接続識別子を解決できませんでした。(サーバ)
Ｅｒｒｏｒ：２００９ ２ ８ Ｓｕｎ １３：２３  ＯＲＡ−１２５４１： ＴＮＳ： リスナーがありません。(サーバ)
Ｅｒｒｏｒ：２００９ ２ １１ Ｗｅｄ ８：３４  ＯＲＡ−１２５１４： ＴＮＳ： リスナーは接続記述子にあるＳＥＲＶＩＣＥ(サーバ)
Ｅｒｒｏｒ：２００９ ２ ２２ Ｓｕｎ ２：３  ＯＲＡ−１２１５４： ＴＮＳ：ｃｏｕｌｄ ｎｏｔ ｒｅｓｏｌｖｅ ｓｅｒｖｉｃｅ ｎａｍｅ (サーバ)
Ｅｒｒｏｒ：２００９ ２ ２２ Ｓｕｎ ２：３３  ＯＲＡ−６５０２： ＰＬ／ＳＱＬ： 数値または値のエラー: 文字列バッファが小さすぎます。(サーバ)
（フィルタ一致データベース部１１の蓄積メッセージ  ここまで）
【０１３９】
次に、分析部７１は、フィルタ一致データベース部１１に蓄積されているメッセージの分析を行い、これに基づきフィルタ保持部８１内に最適なフィルタを更新設定する。
ここでは、分析部７１の単語・長さ分析手段７２が、効率化したいフィルタの部分（フィルタ定義）の抽出を行う。
ここでは、フィルタ０３「Ｅｒｒｏｒ：．＊  ＯＲＡ−．＊  （サーバ）」に含まれる２つの＊のうち、前側の（前半の）「＊」部分を切り出して解析を行うものとする。
【０１４０】
ここで、単語・長さ分析手段７２が、効率化指定フィルタに該当する部分としてフィルタ一致データベース部１１から切り出したメッセージを以下に示す。
【０１４１】
（切り出されたメッセージ）
２００９ １ １ Ｓａｔ １２：２３
２００９ １ １１ Ｓｕｎ １３：２３
２００９ １ １５ Ｔｈｕ ８：３４
２００９ １ ２０ Ｔｕｅ ２２：３
２００９ １ ２８ Ｗｅｄ ７：１３
２００９ ２ ２ Ｍｏｎ １２：２３
２００９ ２ ８ Ｓｕｎ １３：２３
２００９ ２ １１ Ｗｅｄ ８：３４
２００９ ２ ２２ Ｓｕｎ ２：３  
２００９ ２ ２２ Ｓｕｎ ２：３３
（切り出されたメッセージ  ここまで）
【０１４２】
次いで、単語・長さ分析手段７２は、メッセージに含まれる第１〜５単語について、単語設定情報に基づき単語分類を行う。
ここで、単語・長さ分析手段７２は、単語出現頻度調査、単語長調査、単語出現場所調査、グループ分け、を単語設定情報の定義に基づき出現回数、および出現割合を算出し、これに基づきグループ分けを行う。また、対象の単語（第１〜５単語）の出現場所がメッセージ中の先頭から何バイト目か、また、単語の長さを算出する。更には、メッセージの全体の長さも算出する（図１１（Ａ）〜（Ｆ））。
【０１４３】
これにより、単語・長さ分析手段７２は、図１１（Ａ）〜（Ｆ）に示すように、抽出された各単語（第１〜５単語）について、出現回数、出現割合、単語の出現場所、および単語の長さについて、また、メッセージ全体の長さに対する出現回数、出現割合をリスト化したテーブル情報を生成する。
【０１４４】
次に、出現頻度分析手段７４が、単語・長さ分析手段７２で生成されたテーブル情報の内容に基づき、効率化フィルタ作成定義設定情報に設定された値との閾値判定を行い、追加フィルタ候補を選定する。
【０１４５】
ここでは、まず、図１１（Ａ）の内容に基づき出現割合が１００％である、「２００９」を更新フィルタ候補として抽出する。
次いで、図１１（Ｂ）の内容に基づき、効率化フィルタ作成定義情報の閾値を上回る文は、出現回数５０％の「１」と同じく出現回数５０％の「２」を抽出する。
また、図１１（Ｃ）の内容に基づき、効率化フィルタ作成定義情報の閾値を上回る文を検索した場合、候補がないので、単語の長さについて、効率化フィルタ作成定義情報の閾値を上回る文を検索する。
これにより、単語の長さ「２バイト」７０％、および単語の長さ「１バイト」３０％が抽出される。
更に、図１１（Ｄ）の内容に基づき、効率化フィルタ作成定義情報の閾値を上回る文を検索することにより、出現回数４０％の「Ｓｕｎ」を抽出することができる。
また、図１１（Ｅ）の内容に基づき、効率化フィルタ作成定義情報の閾値を上回る文を検索した場合、候補がないので、単語の長さについて、効率化フィルタ作成定義情報の閾値を上回る文を検索する。
これにより、単語の長さ「５バイト」５０％、および単語の長さ「４バイト」４０％が抽出される。
更に、図１１（Ｆ）の内容に基づき、効率化フィルタ作成定義情報の閾値を上回る文を検索することにより、全体の長さ「１８バイト」８０％を抽出することができる。
これにより、この段階での追加フィルタ候補は、以下のように示される。
【０１４６】
（この段階での追加フィルタ候補）
Ｅｒｒｏｒ：２００９ [１｜２] ．{１} Ｓｕｎ ．{５} ＯＲＡ−．＊ (サーバ)
Ｅｒｒｏｒ：２００９ [１｜２] ．{２} Ｓｕｎ ．{４} ＯＲＡ−．＊ (サーバ)
Ｅｒｒｏｒ：２００９ [１｜２] ．{１} Ｓｕｎ ．{５} ＯＲＡ−．＊ (サーバ)
Ｅｒｒｏｒ：２００９ [１｜２] ．{２} Ｓｕｎ ．{４} ＯＲＡ−．＊ (サーバ)
（この段階での追加フィルタ候補  ここまで）
【０１４７】
次いで、フィルタ候補選定手段７５は、選出した追加フィルタ候補の出現確率を算出すると共に、出現確率が３０％以上のものを追加フィルタ候補として選出し、次に、重複が無いか確認を行う。
ここで、重複があった場合、出現確率の低い方の追加フィルタ候補を削除する。
更に、出現確率も同値である場合、追加フィルタ候補の単語の出現場所が先頭に近い単語を優先する、つまり、追加フィルタ候補としての優先順位を上位に設定する。
【０１４８】
具体的には、図１２に示すように、各フィルタ候補の出現確率、および実際に一致した数の合算が１００％となる値が算出される。
ここで、出現頻度、および一致した数が３０％より低い（２）〜（５）のフィルタ候補は削除され、この段階でのフィルタ候補は、「Ｅｒｒｏｒ：．｛２４｝  ＯＲＡ−．＊  （サーバ）」となる。
【０１４９】
次いで、単語・長さ分析手段７２が、効率化したいフィルタの部分（フィルタ定義）の抽出を行う。
ここでは、フィルタ０３「Ｅｒｒｏｒ：．＊  ＯＲＡ−．＊  （サーバ）」に含まれる２つの＊のうち、後側の（後半の）「＊」部分を切り出して解析を行うものとする。
【０１５０】
ここで、単語・長さ分析手段７２が、効率化指定フィルタに該当する部分としてフィルタ一致データベース部１１から切り出したメッセージを以下に示す。
【０１５１】
（切り出されたメッセージ）
１６５４： ｕｎａｂｌｅ ｔｏ ｅｘｔｅｎｄ ｉｎｄｅｘ 
１６５４： ｕｎａｂｌｅ ｔｏ ｅｘｔｅｎｄ ｉｎｄｅｘ 
１２１５４： ＴＮＳ： 指定された接続識別子を解決できませんでした。
１２１５４： ＴＮＳ： 指定された接続識別子を解決できませんでした。
１０３４： Ｏｒａｃｌｅは使用できません。
１２１５４： ＴＮＳ： 指定された接続識別子を解決できませんでした。
１２５４１： ＴＮＳ： リスナーがありません。
１２５１４： ＴＮＳ： リスナーは接続記述子にあるSERVICE
１２１５４： ＴＮＳ：  ｃｏｕｌｄ ｎｏｔ ｒｅｓｏｌｖｅ ｓｅｒｖｉｃｅ ｎａｍｅ 
６５０２： ＰＬ／ＳＱＬ： 数値または値のエラー: 文字列バッファが小さすぎます。
（切り出されたメッセージ  ここまで）
【０１５２】
次いで、単語・長さ分析手段７２は、切り出されたメッセージについて、単語設定情報に基づき単語分類を行う。
ここで、単語・長さ分析手段７２は、単語出現頻度調査、単語長調査、単語出現場所調査、グループ分け、を単語設定情報の定義に基づき出現回数、および出現割合を算出し、これに基づき単語分類（グループ分け）を行う。また、対象の単語の出現場所がメッセージ中の先頭から何バイト目か、また、単語の長さを算出する。更には、メッセージの全体の長さも算出する。
【０１５３】
次に、出現頻度分析手段７４は、単語・長さ分析手段７２で生成されたテーブル情報の内容に基づき、効率化フィルタ作成定義設定情報に設定された値との閾値判定を行い、追加フィルタ候補を選定する。
ここでは、算出された単語の出現回数に基づき効率化フィルタ作成定義情報の閾値を上回る単語をフィルタ候補として抽出する。
【０１５４】
次いで、フィルタ候補選定手段７５が、出現頻度分析手段７４により抽出された追加フィルタ候補の出現確率を算出し、出現確率が３０％以上のものを追加フィルタ候補として決定する。
このとき、フィルタ候補選定手段７５は、上記（前半の＊の場合）と同様に、出現確率の高い順にフィルタ候補をソートし、フィルタに重複が無いか、確認する。また、出現確率が同値である場合、単語の出現場所が先頭に近いものを優先し、最終的に追加するフィルタを決定するものとする。
【０１５５】
これにより、追加フィルタ候補は、「Ｅｒｒｏｒ：．＊ ＯＲＡ−．｛５７｝ (サーバ)」を追加フィルタ候補として選定する。尚、「．｛５７｝」の部分は、「１２１５４： ＴＮＳ： 指定された接続識別子を解決できませんでした。」の部分である。
【０１５６】
次いで、フィルタ候補選定手段７５は、上記フィルタ０３における「前半の＊」、および「後半の＊」それぞれに対応して選定した追加フィルタ候補を合わせることにより、追加フィルタ候補「Ｅｒｒｏｒ：．｛２４｝  ＯＲＡ−．｛５７｝  （サーバ）」を決定する。
【０１５７】
更に、フィルタ候補選定手段７５は、この追加フィルタ候補「Ｅｒｒｏｒ：．｛２４｝  ＯＲＡ−．｛５７｝  （サーバ）」をフィルタ保持部８１に対して送信することにより、以下に示す、フィルタ０３を更新設定する（フィルタ追加削除処理）。
【０１５８】
（フィルタ０３の内容）
＃ Ｅｒｒｏｒ：．＊ ＯＲＡ−．＊ (サーバ) の分析結果より追加
Ｅｒｒｏｒ：．{２４} ＯＲＡ−．｛５７｝ (サーバ)
Ｅｒｒｏｒ：．＊ ＯＲＡ−．＊ (サーバ)
（フィルタ０３の内容  ここまで）
【０１５９】
尚、上記フィルタ０３の内容において、追加されたフィルタ定義は、元になったフィルタ定義が何であるかがわかるように、フィルタ候補選定手段７５により、フィルタ定義にコメントが付与されるものとする。
【０１６０】
次いで、マネージャ装置５１のフィルタ処理部２１では、上記のように追加更新されたフィルタ０２に基づきフィルタリング処理されたメッセージ（フィルタに一致したメッセージ）がフィルタ一致データベース部１１に格納される、フィルタリング処理が実行される（通常の運用時のメッセージ格納工程）。
【０１６１】
（追加フィルタの最適化確認処理機能）
次に、分析部７１のフィルタ有効性分析手段７７が、フィルタ一致データベース部１１に格納されたメッセージを分析することにより、フィルタ保持部８１に設定された各フィルタのフィルタ定義によるフィルタリング処理の有効性を確認する処理を行う。
【０１６２】
ここでは、フィルタ有効性分析手段７７が、フィルタ０３に含まれるフィルタ定義である、「Ｅｒｒｏｒ：．{２４} ＯＲＡ−．{５７} (サーバ)」、「Ｅｒｒｏｒ：．＊ ＯＲＡ−．＊ (サーバ)」について、それぞれのフィルタリング処理に係る有効性を確認する。
以下、フィルタ０３に含まれるフィルタ定義を示す。
【０１６３】
（フィルタ０３の内容）
＃ Ｅｒｒｏｒ：．＊ ＯＲＡ−．＊ (サーバ) の分析結果より追加
Ｅｒｒｏｒ：．{２４} ＯＲＡ−．｛５７｝ (サーバ)
Ｅｒｒｏｒ：．＊ ＯＲＡ−．＊ (サーバ)
（フィルタ０３の内容  ここまで）
【０１６４】
ここで、フィルタ有効性分析手段７７は、フィルタ一致データベース部１１に蓄積されているメッセージより、追加フィルタと元になったフィルタに基づき抽出された（一致した）メッセージ数と、全体のメッセージ数に対して、追加された各フィルタで一致したメッセージ数の割合を求める。
また、フィルタ有効性分析手段７７は、一致したメッセージ数の割合が効率化フィルタ作成定義設定情報の閾値以上であるか否かを判定し、これにより、追加されたフィルタの有効性を判定する。
有効性を確認したフィルタ定義については、出現確率の高い順にフィルタを並べ替えを行い、最終的なフィルタ定義を決定する。また、有効性が確認できなかったフィルタ定義については削除する。
【０１６５】
具体的には、フィルタ０３に含まれるフィルタ定義それぞれに一致したメッセージ数と、その全体のメッセージ数に対する割合は、図１３に示すように、「Ｅｒｒｏｒ：．｛２４｝ ＯＲＡ−．｛５７｝ (サーバ)」の蓄積件数が２９件、全体の割合が２９％、「Ｅｒｒｏｒ：．＊ ＯＲＡ−．＊ (サーバ)」の蓄積件数が７１件、全体の割合が７１％、「ＣＰＵが高負荷：＊で発生。」であり、その合計は、「Ｅｒｒｏｒ：．{２４} ＯＲＡ−．｛５７｝ (サーバ)」または「Ｅｒｒｏｒ：．＊ ＯＲＡ−．＊ (サーバ)」に一致した１００件に一致している。
【０１６６】
ここで、追加フィルタ定義「Ｅｒｒｏｒ：．｛２４｝  ＯＲＡ−．｛５７｝  (サーバ)」の割合は、効率化フィルタ作成定義情報に設定された値（３０％）を下回っているため削除され、これにより、フィルタ有効性分析手段７７による有効性確認処理が行われた結果、フィルタ０３は、以下に示すように更新設定される。
【０１６７】
（フィルタ０３の内容）
＃ Ｅｒｒｏｒ：．＊  ＯＲＡ−．＊  （サーバ）の分析結果より追加  確認後無効
＃Ｅｒｒｏｒ：．｛２４｝  ＯＲＡ−．｛５７｝  （サーバ）
Ｅｒｒｏｒ：．＊  ＯＲＡ−．＊  （サーバ）
（フィルタ０３  ここまで）
【０１６８】
尚、ここでは、削除されたフィルタ定義が何であるかがわかるように、削除されたフィルタ定義をコメントアウトした状態で記述している。
【０１６９】
以上のように、上記実施形態の変形例（２）では、上記実施形態の場合と同様に、ＣＰＵ使用時間が短くなるように、フィルタを効率化することが可能であり、メッセージが多発した場合でも、マネージャ装置に高負荷がかかるのを有効に抑制することができ、更には、メッセージ処理遅延の発生を抑制することが可能となる。
また、マネージャ装置５１の運用管理者が発生したメッセージの傾向を調べフィルタ内容（フィルタ定義）の更新を手動で行うことなく、自動でフィルタ内容を最適化する更新を行うことができる。
【０１７０】
上述した実施形態については、その新規な技術的内容の要点をまとめると、以下のようになる。
尚、上記の実施形態の一部又は全部は、新規な技術として以下のようにまとめられるが、本発明は必ずしもこれに限定されるものではない。
【０１７１】
（付記１）
外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うと共に当該分析結果に基き前記フィルタ条件情報の更新を行うフィルタ分析更新部とを備えたフィルタ設定システムであって、
前記フィルタ分析更新部は、
前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出する単語分類手段と、
前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新するフィルタ条件追加更新手段と、
前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定するフィルタ有効性判定手段と、前記有効性がないと判定されたフィルタ条件情報を削除するフィルタ条件削除更新手段とを備えたことを特徴とするフィルタ設定システム。
【０１７２】
（付記２）
付記１に記載のフィルタ設定システムにおいて、
前記フィルタ条件追加更新手段は、前記メッセージ中における前記単語の出現場所にかかる情報を取得すると共に、異なる条件単語間で前記算出された出現頻度割合が同値である場合に前記出現場所が前記メッセージ内の先頭に近い条件単語を優先する単語優先度設定機能を備えたことを特徴とするフィルタ条件設定システム。
【０１７３】
（付記３）
付記１又は２に記載のフィルタ条件設定システムにおいて、
前記フィルタ有効性判定部および前記フィルタ条件削除更新部における動作起動タイミングを前記フィルタ条件追加更新手段における動作内容に基づき決定する更新動作タイミング決定部を備えたことを特徴とするフィルタ条件設定システム。
【０１７４】
（付記４）
付記１又は２に記載のフィルタ条件設定システムにおいて、
単語分類手段は、予め前記条件単語の定義内容を設定することにより前記メッセージ中における分析範囲を既定する条件単語定義設定機能を備えたことを特徴とするフィルタ条件設定システム。
【０１７５】
（付記５）
付記１又は２に記載のフィルタ条件設定システムにおいて、
前記フィルタ有効性判定部による前記フィルタ有効性の有無判定が行われるフィルタ条件情報を前記フィルタ条件追加更新手段による追加更新が行われたフィルタ条件情報に限定することを特徴としたフィルタ条件設定システム。
【０１７６】
（付記６）
外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うフィルタ分析更新部とを備えたフィルタ設定システムにあって、前記分析結果に基き前記フィルタ条件情報の更新を行うフィルタ設定方法において、
前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出し、
前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新し、
前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定し、前記有効性がないと判定されたフィルタ条件情報を削除することを特徴としたフィルタ設定方法。
【０１７７】
（付記７）
外部から入力されたメッセージから予め設定されたフィルタ条件情報に一致したメッセージを抽出するフィルタリング処理を行うと共に条件一致メッセージとして記憶するフィルタリング処理部と、前記条件一致メッセージの分析を行うフィルタ分析更新部とを備えたフィルタ設定システムにあって、前記分析結果に基き前記フィルタ条件情報の更新を行うフィルタ設定プログラムにおいて、
前記条件一致メッセージに含まれる単語の出現回数、出現位置、および当該単語の長さを算出し、前記算出された出現回数が予め設定されたフィルタ作成定義情報の値を上回る単語を条件単語として抽出する単語分類機能と、
前記条件単語から前記メッセージ内における出現頻度割合が一定値以上の条件単語を追加フィルタ定義として決定し、前記追加フィルタ定義を追加することにより前記フィルタ条件情報の内容を更新するフィルタ条件追加更新機能と、
前記フィルタ条件情報に一致したメッセージの割合に基づき前記フィルタ条件情報のフィルタリング処理に係る有効性を判定するフィルタ有効性判定機能と、前記有効性がないと判定されたフィルタ条件情報を削除するフィルタ条件削除更新機能と、をコンピュータに実行させることを特徴としたフィルタ設定プログラム。
【産業上の利用可能性】
【０１７８】
本発明は、ネットワークを介して送り込まれる通信データについて通信データを有効に選別しフィルタリングを行うコンピュータネットワークシステムに対して適用することができる。
【符号の説明】
【０１７９】
１１  フィルタ一致データベース部
２１  フィルタ処理部
２２  メッセージ受信部
３１  監視端末へ通知処理部
４１  監視端末
５１  マネージャ装置
６１、６２  エージェント装置
７２  単語・長さ分析手段
７４  出現頻度分析手段
７５  フィルタ候補選定手段
８１  フィルタ保持部
【図１】
0005577879.tif 000002
【図２】
0005577879.tif 000003
【図３】
0005577879.tif 000004
【図４】
0005577879.tif 000005
【図５】
0005577879.tif 000006
【図６】
0005577879.tif 000007
【図７】
0005577879.tif 000008
【図８】
0005577879.tif 000009
【図９】
0005577879.tif 000010
【図１０】
0005577879.tif 000011
【図１１】
0005577879.tif 000012
【図１２】
0005577879.tif 000013
【図１３】
0005577879.tif 000014