(57)【特許請求の範囲】
【請求項１】
ポリシ起動のトリガー条件と実行すべき動作とを対応付けたポリシに基づいて、管理対象システムを管理するポリシ処理装置において、
前記ポリシを記憶するポリシデータベースを参照して前記トリガー条件が満たされたポリシを検索し、該検索したポリシの動作を実行するポリシ実行装置と、
前記トリガー条件が満たされたポリシの通知を受けると、ポリシの動作履歴を記憶するポリシ動作ログ記憶部を参照し、当該トリガー条件が満たされたポリシについて前記通知を受けた時点以前の起動頻度を取得するポリシ動作ログ検索部と、
前記ポリシ動作ログ検索部が取得したポリシの起動頻度に基づいて、ポリシが異常であるか否かを判定し、異常と判定したポリシを異常ポリシ記憶部に記憶するポリシ実行パターン解析部とを有するポリシ異常検出装置とを備え、
前記ポリシ実行装置は、前記検索したポリシが前記異常ポリシ記憶部に記憶されているときは当該ポリシの実行を抑制することを特徴とするポリシ処理装置。
【請求項２】
前記ポリシ動作ログ検索部は、前記通知を受けた以前の履歴取得期間内のポリシ起動回数を取得し、前記ポリシ実行パターン解析部は、前記履歴取得期間内のポリシ起動回数が所定のしきい値以上であると、ポリシが異常であると判定する、請求項１に記載のポリシ処理装置。
【請求項３】
前記ポリシ動作ログ検索部は、ポリシと履歴取得期間とを対応付けて記憶する履歴取得期間保存部を参照して、前記トリガー条件が満たされたポリシの履歴取得期間を取得する、請求項２に記載のポリシ処理装置。
【請求項４】
前記ポリシ動作ログ検索部は、過去の起動頻度及び起動時間間隔の少なくとも一方の平均及び分散を演算し、該演算した平均及び分散に基づいて前記履歴取得期間を算出して前記履歴取得期間保存部に保存する、請求項３に記載のポリシ処理装置。
【請求項５】
前記ポリシ実行パターン解析部は、ポリシとしきい値とを対応付けて記憶するポリシ回数しきい値保存部を参照して、前記しきい値を取得する、請求項２〜４の何れか一に記載のポリシ処理装置。
【請求項６】
前記ポリシ実行パターン解析部は、ポリシの所定期間内の起動回数の平均及び分散を演算し、該演算した平均及び分散に基づいて前記しきい値を算出し前記ポリシ回数しきい値保存部に保存する、請求項５に記載のポリシ処理装置。
【請求項７】
前記ポリシ動作ログ検索部は、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定するポリシ近似判定部を備えており、該近似判定部によって、前記トリガー条件が満たされたポリシと近似すると判定されたポリシを、当該トリガー条件が満たされたポリシと同一とみなして、前記ポリシ動作ログ記憶部からポリシの起動回数を取得する、請求項１〜６の何れか一に記載のポリシ処理装置。
【請求項８】
前記ポリシ実行パターン解析部は、ポリシと該ポリシについてポリシ動作異常判定が必要か否かを示す影響度フラグとを対応付けて記憶するポリシフラグテーブルを参照して、前記トリガー条件が満たされたポリシが異常であるか否かの判定をするか否かを決定する、請求項１〜７の何れか一に記載のポリシ処理装置。
【請求項９】
前記ポリシ実行装置が、
管理対象システム内で発生するイベントを監視するイベント監視部と、
前記イベント監視部が前記トリガー条件に対応するイベントの発生を検出すると、前記ポリシデータベースを参照して、当該トリガー条件が満たされるポリシを検索し、該検索したポリシを前記ポリシ動作ログ検索部に通知するポリシ検索部と、
前記ポリシ検索部で検索されたポリシのうち、前記異常ポリシ記憶部に記憶されていないポリシの動作を実行する動作実行部とを有する、請求項１〜８の何れか一に記載のポリシ処理装置。
【請求項１０】
前記ポリシ検索部は、前記検索されたポリシと、当該ポリシの検索時刻とを対応付けて前記ポリシ動作ログ記憶部に保存する、請求項９に記載のポリシ処理装置。
【請求項１１】
前記ポリシ実行装置を複数備えており、該複数のポリシ実行装置がそれぞれ、前記ポリシ異常検出装置に通信回線を介して接続される、請求項９又は１０に記載のポリシ処理装置。
【請求項１２】
前記ポリシ検索部は、前記検索したポリシが前記異常ポリシ記憶部に記憶されているか否かを判断し、記憶されていないときは前記動作実行部に前記検索したポリシの動作を実行させ、記憶されているときは前記動作実行部による前記検索したポリシの動作を抑制させる、請求項９〜１１の何れか一に記載のポリシ処理装置。
【請求項１３】
前記ポリシ実行パターン解析部は、異常であると判定したポリシを、起動頻度及び最終実行時刻と対応付けて異常ポリシ記憶部に登録する、請求項９〜１２の何れか一に記載のポリシ処理装置。
【請求項１４】
前記ポリシ検索部は、前記検索されたポリシが、前記異常ポリシ記憶部に登録されたポリシであると、該異常ポリシ記憶部に保存された実行頻度及び最終実行時刻に基づいて、実行予定時刻を計算し、該計算された実行予定時刻まで前記動作実行部によるポリシの実行を抑止する、請求項１３に記載のポリシ処理装置。
【請求項１５】
前記ポリシ検索部は、前記実行が抑止されたポリシと前記実行予定時刻とを対応付けて動作待ちテーブルに登録し、該動作待ちテーブルに登録した実行予定時刻に、前記実行が抑止されたポリシを動作実行部に実行させる、請求項１４に記載のポリシ処理装置。
【請求項１６】
前記ポリシ検索部は、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定するポリシ近似評価部を備えており、前記異常ポリシ記憶部に記憶された、前記異常であると判定したポリシの実行頻度と前記ポリシ近似評価部によって近似すると判定されたポリシの実行頻度とを更新する、請求項１３〜１５の何れか一に記載のポリシ処理装置。
【請求項１７】
ポリシ起動のトリガー条件と実行すべき動作とを対応付けたポリシに基づいて管理対象システムを管理するポリシ処理装置が、トリガー条件が満たされたポリシの通知を受け、ポリシの動作履歴を記憶するポリシ動作ログ記憶部を参照し、当該トリガー条件が満たされたポリシについて前記通知を受けた時点以前の起動頻度を取得するステップと、
前記ポリシ処理装置が、前記取得したポリシの起動頻度に基づいて、ポリシが異常であるか否かを判定し、異常と判定したポリシを異常ポリシ記憶部に記憶するステップと、
前記ポリシ処理装置が、前記異常ポリシ記憶に記憶されたポリシの起動を抑制するステップとを有することを特徴とするポリシ異常検出方法。
【請求項１８】
前記起動頻度を取得するステップでは、前記通知を受けた以前の履歴取得期間内のポリシ起動回数を取得し、前記ポリシが異常であるか否かを判定するステップでは、前記履歴取得期間内のポリシ起動回数が所定のしきい値以上であると、ポリシが異常であると判定する、請求項１７に記載のポリシ異常検出方法。
【請求項１９】
前記起動頻度を取得するステップでは、ポリシと履歴取得期間とを対応付けて記憶する履歴取得期間保存部を参照して、前記トリガー条件が満たされたポリシの履歴取得期間を取得する、請求項１８に記載のポリシ異常検出方法。
【請求項２０】
前記ポリシ処理装置が、過去の起動頻度及び起動時間間隔の少なくとも一方の平均及び分散を演算し、該演算した平均及び分散に基づいて前記履歴取得期間を算出して前記履歴取得期間保存部に保存するステップを更に有する、請求項１９に記載のポリシ異常検出方法。
【請求項２１】
前記ポリシが異常であるか否かを判定するステップでは、ポリシとしきい値とを対応付けて記憶するポリシ回数しきい値保存部を参照して、前記しきい値を取得する、請求項１８〜２０の何れか一に記載のポリシ異常検出方法。
【請求項２２】
前記ポリシ処理装置がポリシの所定期間内の起動回数の平均及び分散を演算するステップと、前記ポリシ処理装置が該演算した平均及び分散に基づいて前記しきい値を算出し前記ポリシ回数しきい値保存部に保存するステップとを更に有する、請求項２１に記載のポリシ異常検出方法。
【請求項２３】
前記ポリシ処理装置が、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定するステップを更に有し、前記起動頻度を判定するステップでは、前記近似度を判定するステップで前記トリガー条件が満たされたポリシと近似すると判定されたポリシを、当該トリガー条件が満たされたポリシと同一とみなして、前記ポリシ動作ログ記憶部からポリシの起動回数を取得する、請求項１７〜２２の何れか一に記載のポリシ異常検出方法。
【請求項２４】
前記ポリシ処理装置が、前記ポリシが異常であるか否かを判定するステップに先だって、ポリシと該ポリシについてポリシ動作異常判定が必要か否かを示す影響度フラグとを対応付けて記憶するポリシフラグテーブルを参照して、前記トリガー条件が満たされたポリシが異常であるか否かの判定をするステップを実行するか否かを決定するステップを更に有する、請求項１７〜２３の何れか一に記載のポリシ異常検出方法。
【請求項２５】
ポリシ起動のトリガー条件と実行すべき動作とを対応付けたポリシに基づいて管理対象システムを管理するコンピュータのためのプログラムであって、前記コンピュータに、
トリガー条件が満たされたポリシの通知を受け、ポリシの動作履歴を記憶するポリシ動作ログ記憶部を参照し、当該トリガー条件が満たされたポリシについて前記通知を受けた時点以前の起動頻度を取得する処理と、
前記取得したポリシの起動頻度に基づいて、ポリシが異常であるか否かを判定し、異常と判定したポリシを異常ポリシ記憶部に記憶する処理と、
前記異常ポリシ記憶部に記憶されたポリシの起動を抑制する処理を実行させることを特徴とするプログラム。
【請求項２６】
前記起動頻度を取得する処理では、前記通知を受けた以前の履歴取得期間内のポリシ起動回数を取得し、前記ポリシが異常であるか否かを判定する処理では、前記履歴取得期間内のポリシ起動回数が所定のしきい値以上であると、ポリシが異常であると判定する、請求項２５に記載のプログラム。
【請求項２７】
前記起動頻度を取得する処理では、ポリシと履歴取得期間とを対応付けて記憶する履歴取得期間保存部を参照して、前記トリガー条件が満たされたポリシの履歴取得期間を取得する、請求項２６に記載のプログラム。
【請求項２８】
前記コンピュータに、過去の起動頻度及び起動時間間隔の少なくとも一方の平均及び分散を演算させ、該演算させた平均及び分散に基づいて前記履歴取得期間を算出して前記履歴取得期間保存部に保存する処理を更に実行させる、請求項２７に記載のプログラム。
【請求項２９】
前記ポリシが異常であるか否かを判定する処理では、ポリシとしきい値とを対応付けて記憶するポリシ回数しきい値保存部を参照して、前記しきい値を取得する、請求項２６〜２８の何れか一に記載のプログラム。
【請求項３０】
前記コンピュータに、ポリシの所定期間内の起動回数の平均及び分散を演算する処理と、該演算し平均及び分散に基づいて前記しきい値を算出し前記ポリシ回数しきい値保存部に保存する処理とを更に実行させる、請求項２９に記載のプログラム。
【請求項３１】
前記コンピュータに、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定する処理を更に実行させ、前記起動頻度を判定する処理では、前記近似度を判定するステップで前記トリガー条件が満たされたポリシと近似すると判定されたポリシを、当該トリガー条件が満たされたポリシと同一とみなして、前記ポリシ動作ログ記憶部からポリシの起動回数を取得する、請求項２５〜３０の何れか一に記載のプログラム。
【請求項３２】
前記コンピュータに、前記ポリシが異常であるか否かを判定する処理に先だって、ポリシと該ポリシについてポリシ動作異常判定が必要か否かを示す影響度フラグとを対応付けて記憶するポリシフラグテーブルを参照して、前記トリガー条件が満たされたポリシが異常であるか否かの判定をする処理を実行するか否かを決定する処理を更に実行させる、請求項２５〜３１の何れか一に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ポリシ処理装置、方法、及び、プログラムに関し、更に詳しくは、システムの管理規則等を記述したポリシを用いて、システムの自動実行・管理・制御を行うポリシ処理装置、方法、及び、プログラムに関する。
【背景技術】
【０００２】
従来、システムの管理についてのルールを記述したポリシを用いて、システムの管理等を自動的に行うことにより、管理のコストを削減し、異常等への対応を行う方式が開発されている。一般に、ポリシは、起動の条件と、起動時の動作とを含む。ポリシを処理するポリシ処理装置は、管理対象システムの内外で発生した事象（イベント）に対して、その発生した事象がポリシの起動条件となっているポリシを検索し、検索されたポリシの起動時の動作を実行する。
【０００３】
ポリシが適切に設定されている場合には、ポリシ処理装置が、ポリシの動作を実行することで、管理対象システムの自律的・自動的な管理を実現できる。しかし、ポリシが適切に設定されていないと、自律処理が正常に実行されないのみならず、逆に管理対象システムに異常を引き起こす可能性がある。また、一つ一つのポリシは適切に設定されている場合でも、ポリシ間の整合性が取れていない場合には、ポリシ間の相互作用により、管理対象システムに異常を引き起こすこともある。このため、ポリシを用いたシステム管理では、各ポリシやポリシ間の相互作用によって、障害が引き起こされないかを監視する必要がある。
【０００４】
ポリシの設定内容の誤りや不整合、矛盾等を検出する技術としては、例えば特許文献１に記載された技術がある。図３９は、特許文献１に記載された情報処理装置（ポリシ処理装置）５００の構成を示している。特許文献１では、通常のポリシを記憶するポリシデータベース５０４と、ポリシや管理対象システムにおいて、起こしてはいけないこと等を規定した上位のポリシ（グローバルポリシ）を記憶するグローバルポリシデータベース５０７とを用いる。
【０００５】
ポリシデータベース５０４は、例えば「午前３時にサーバＡのファイルをバックアップする」等の条件と動作からなる通常のポリシを記憶する。ポリシ検索部５０２は、イベント受理部５０１が受理したイベントにより起動条件が満たされるポリシを検索し、検索されたポリシを動作実行部５０３に受け渡す。動作実行部５０３は、管理対象システムに対して、ポリシの動作を実行する。
【０００６】
グローバルポリシデータベース５０７は、例えば「ひとつのテープデバイスに同時に複数のバックアップはできない」等の、ポリシが実行する動作に制限を加えるグローバルポリシを記憶する。グローバルポリシ比較部５０６は、ポリシデータベース５０４に記憶されたポリシが、グローバルポリシデータベース５０７に記憶されたグローバルポリシに抵触するか否かを調べる。ポリシ修正部５０５は、グローバルポリシに抵触するポリシを、グローバルポリシに抵触しないように修正する。
【０００７】
例えば、ポリシデータベース５０４に、「午前３時にサーバＡのファイルをバックアップする」旨のポリシ、及び、「午前３時にサーバＢのファイルをバックアップする」旨のポリシがある場合、これらポリシは、ポリシ単体ではなんら問題はない。しかし、動作実行部５０３が、これらポリシを実行すると、午前３時にサーバＡとサーバＢのバックアップを同時に実行することになり、「ひとつのテープデバイスに同時に複数のバックアップはできない」旨のグローバルポリシに抵触する。ポリシ修正部５０５は、例えば「午前３時にサーバＢのファイルをバックアップする」旨のポリシを、「午前２時にサーバＢのファイルをバックアップする」旨に変更する。
【０００８】
特許文献１に記載の技術では、ポリシ修正部５０５により、グローバルポリシに抵触するポリシのパラメータを自動的に修正する。このため、ポリシに記載された動作により自律処理を正常に動作させることができる。このように、特許文献１では、グローバルポリシに抵触するポリシの実行を防ぐことができ、管理対象システムの自律的・自動的な管理を実現できる。
【０００９】
【特許文献１】特開２００４−３０３１９０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、特許文献１に記載の技術では、グローバルポリシデータベース５０７が記憶するグローバルポリシに従って、登録された時点でポリシを解析してグローバルポリシに抵触するポリシを修正しているため、記述されたポリシのみからでは判らないシステムの動作やポリシの予期せぬ状態変化など、管理対象システムが関わる形でポリシが異常な連鎖を起こすような事態には対処できない。例えば、負荷が高いサービスに動的に資源を割り当てる場合に、二つのサービスが一つの資源を奪い合って短期間に資源が行ったり来たりを繰り返すといった状況には対処できない。
【００１１】
ポリシ動作の問題を発見し解決するためには、ポリシの実際の動作状況を見て判断する必要がある。しかし、特許文献１では、ポリシ起動後に、その動作状況を観察していないため、システムの動作とポリシの記述、又は、複数のポリシ間の記述に不整合があることにより、ポリシの動作によってシステムの状態が意図せぬ変化を起こし、その変化が再びポリシを起動し、そのポリシがシステムの状態をさらに悪化させるという悪循環を検出することはできない。
【００１２】
また、特許文献１に記載の技術では、ポリシ起動による不具合に対して、リアルタイムにその不具合に対応して、不具合が拡大することを抑える仕組みがない。このため、管理対象システムを停止させてよいかについて人の判断が必要となる場合に、人が対処方法を検討している間に、異常が拡大することを防ぐことができない。従って、悪循環をもたらす異常なポリシを発見したとしても、ポリシ動作が自動で高速に行われるため、管理者がシステムを停止させる余裕もなく、異常が進展するという問題がある。
【００１３】
本発明は、上記従来技術の問題点を解消し、ポリシの記述者が意図しない連鎖を検出することで、不適切なポリシによってシステムが異常・不安定となっていることを検出可能なポリシ処理装置、方法、及び、プログラムを提供することを目的とする。
【００１４】
また、本発明は、異常なポリシ動作を発見したときに、そのポリシ動作によるシステムへの悪影響を抑えることを可能にするポリシ処理装置、方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するために、本発明のポリシ処理装置は、ポリシ起動のトリガー条件と実行すべき動作とを対応付けたポリシに基づいて、管理対象システムを管理するポリシ処理装置において、前記トリガー条件が満たされたポリシの通知を受けると、ポリシの動作履歴を記憶するポリシ動作ログ記憶部を参照し、当該トリガー条件が満たされたポリシについて前記通知を受けた時点以前の起動頻度を取得するポリシ動作ログ検索部と、前記ポリシ動作ログ検索部が取得したポリシの起動頻度に基づいて、ポリシが異常であるか否かを判定するポリシ実行パターン解析部とを有するポリシ異常検出装置を備えたことを特徴とする。
【００１６】
ポリシを用いて管理対象システム（機器）の管理を行う場合、ポリシに異常があれば、管理対象システムの管理を正常に行うことができず、管理対象システムが異常・不安定となる。ポリシの異常は、ポリシの記述自体には問題がない場合でも、実際に管理対象システムの管理に適用した場合に発生することがある。また、他のポリシとの連係動作により発生することがある。本発明のポリシ処理装置では、ポリシの動作ログを参照してポリシの起動頻度を調べ、その起動頻度に基づいて、ポリシの異常を検出する。このように、ポリシの動作状況を監視して、その起動頻度に基づいてポリシの異常な振る舞いを検出することで、ポリシの記述者が意図しない連鎖を検出し、不適切なポリシによってシステムが異常・不安定となる事態を防ぐことができる。
【００１７】
本発明のポリシ処理装置では、前記ポリシ動作ログ検索部は、前記通知を受けた以前の履歴取得期間内のポリシ起動回数を取得し、前記ポリシ実行パターン解析部は、前記履歴取得期間内のポリシ起動回数が所定のしきい値以上であると、ポリシが異常であると判定する構成を採用できる。この場合、ポリシ処理装置は、履歴取得期間内のポリシの起動回数（起動状況）に基づいて、ポリシの異常を判断できる。
【００１８】
本発明のポリシ処理装置では、前記ポリシ動作ログ検索部は、ポリシと履歴取得期間とを対応付けて記憶する履歴取得期間保存部を参照して、前記トリガー条件が満たされたポリシの履歴取得期間を取得する構成を採用できる。この場合、ポリシごとに履歴取得期間を設定することができ、ポリシに応じた履歴取得期間で、ポリシの異常検出を行うことができる。
【００１９】
本発明のポリシ処理装置では、前記ポリシ動作ログ検索部は、過去の起動頻度及び起動時間間隔の少なくとも一方の平均及び分散を演算し、該演算した平均及び分散に基づいて前記履歴取得期間を算出して前記履歴取得期間保存部に保存する構成を採用できる。この場合、ポリシの起動状況に応じて、履歴取得期間を動的に設定することができる。
【００２０】
本発明のポリシ処理装置では、前記ポリシ実行パターン解析部は、ポリシとしきい値とを対応付けて記憶するポリシ回数しきい値保存部を参照して、前記しきい値を取得する構成を採用できる。この場合、ポリシごとにしきい値を設定することができ、ポリシに応じたしきい値で、ポリシの異常検出を行うことができる。
【００２１】
本発明のポリシ処理装置では、前記ポリシ実行パターン解析部は、ポリシの所定期間内の起動回数の平均及び分散を演算し、該演算した平均及び分散に基づいて前記しきい値を算出し前記ポリシ回数しきい値保存部に保存する構成を採用できる。この場合、ポリシの起動状況に応じて、しきい値を動的に設定することができる。
【００２２】
本発明のポリシ処理装置では、前記ポリシ動作ログ検索部は、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定するポリシ近似判定部を備えており、該近似判定部によって、前記トリガー条件が満たされたポリシと近似すると判定されたポリシを、当該トリガー条件が満たされたポリシと同一とみなして、前記ポリシ動作ログ記憶部からポリシの起動回数を取得する構成を採用できる。この場合、近似度の高いポリシを同一のポリシとみなすことで、近似するポリシが連鎖する事態を検出することができる。
【００２３】
本発明のポリシ処理装置では、前記ポリシ実行パターン解析部は、ポリシと該ポリシについてポリシ動作異常判定が必要か否かを示す影響度フラグとを対応付けて記憶するポリシフラグテーブルを参照して、前記トリガー条件が満たされたポリシが異常であるか否かの判定をするか否かを決定する構成を採用できる。この場合、特定のポリシの影響度フラグをポリシ動作異常判定が必要でない旨に設定することで、例えば起動時のログ保存など、異常を引き起こすことがないポリシについて、ポリシが異常か否かの判定を行わないように設定できる。
【００２４】
本発明のポリシ処理装置は、管理対象システム内で発生するイベントを監視するイベント監視部と、前記イベント監視部が、前記トリガー条件に対応するイベントの発生を検出すると、前記ポリシを記憶するポリシデータベースを参照して、当該トリガー条件が満たされるポリシを検索し、該検索したポリシを前記ポリシ動作ログ検索部に通知するポリシ検索部と、前記ポリシ検索部で検索されたポリシの動作を実行する動作実行部とを有するポリシ実行装置を更に備える構成を採用できる。ポリシ処理装置は、ポリシ異常検出装置と同一装置として構成できる。また、ポリシ異常検出装置と切り離して、ネットワークで接続する構成とすることもできる。
【００２５】
本発明のポリシ処理装置では、前記ポリシ検索部は、前記検索されたポリシと、当該ポリシの検索時刻とを対応付けて前記ポリシ動作ログ記憶部に保存する構成を採用できる。
【００２６】
本発明のポリシ処理装置は、前記ポリシ実行装置を複数備えており、該複数のポリシ実行装置がそれぞれ前記ポリシ異常検出装置に通信回線を介して接続される構成を採用できる。この場合、ポリシ異常検出装置は、複数のポリシ実行装置から、起動されたポリシの通知を受けて、ポリシの異常を検出する。
【００２７】
本発明のポリシ処理装置では、前記ポリシ実行パターン解析部は、異常であると判定したポリシを、起動を停止すべきポリシを記憶する停止ポリシ保存部に記憶し、前記ポリシ検索部は、前記停止ポリシ保存部を参照して、前記検索されたポリシの起動を停止すべきか否かを判断する構成を採用できる。この場合、ポリシ検索部が、停止ポリシ保存部に記憶されたポリシについて、その起動を停止することにより、異常なポリシが実行されることを防止することができ、異常なポリシが実行されることによるシステムへの悪影響を抑えることができる。
【００２８】
本発明のポリシ処理装置では、前記ポリシ実行パターン解析部は、異常であると判定したポリシを、起動頻度及び最終実行時刻と対応付けてポリシ連鎖情報保存部に登録する構成を採用できる。また、本発明のポリシ処理装置では、前記ポリシ検索部は、前記検索されたポリシが、前記ポリシ連鎖情報保存部に登録されたポリシであると、該ポリシ連鎖情報保存部に保存された実行頻度及び最終実行時刻に基づいて、実行予定時刻を計算し、該計算された実行予定時刻まで前記実行同サブによりポリシの実行を抑止する構成を採用できる。この場合、ポリシの実行を実行予定時刻まで遅らせることにより、ポリシが短時間に多数起動される事態を防ぐことができる。
【００２９】
本発明のポリシ処理装置では、前記ポリシ検索部は、前記実行が抑止されたポリシと前記実行予定時刻とを対応付けて動作待ちテーブルに登録し、該動作待ちテーブルに登録した実行予定時刻に、前記実行が抑止されたポリシを動作実行部に実行させる構成を採用できる。この場合、ポリシ検索部は、動作待ちテーブルを参照して、実行予定時刻までポリシの実行を遅らせることができる。
【００３０】
本発明のポリシ処理装置では、前記ポリシ検索部は、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定するポリシ近似評価部を備えており、前記ポリシ連鎖情報保存部に記憶された、前記異常であると判定したポリシの実行頻度と前記ポリシ近似評価部によって近似すると判定されたポリシの実行頻度とを更新する構成を採用できる。この場合、近似度の高いポリシが、短時間に多数起動される事態を防ぐことができる。
【００３１】
本発明の異常ポリシ検出方法は、ポリシ起動のトリガー条件と実行すべき動作とを対応付けたポリシに基づいて管理対象システムを管理するポリシ処理装置で、ポリシの異常を検出する方法であって、前記ポリシ処理装置が、トリガー条件が満たされたポリシの通知を受け、ポリシの動作履歴を記憶するポリシ動作ログ記憶部を参照し、当該トリガー条件が満たされたポリシについて前記通知を受けた時点以前の起動頻度を取得するステップと、前記ポリシ処理装置が、前記取得したポリシの起動頻度に基づいて、ポリシが異常であるか否かを判定するステップとを有することを特徴とする。
【００３２】
本発明のプログラムは、ポリシ起動のトリガー条件と実行すべき動作とを対応付けたポリシに基づいて管理対象システムを管理するコンピュータのためのプログラムであって、前記コンピュータに、トリガー条件が満たされたポリシの通知を受け、ポリシの動作履歴を記憶するポリシ動作ログ記憶部を参照し、当該トリガー条件が満たされたポリシについて前記通知を受けた時点以前の起動頻度を取得する処理と、前記取得したポリシの起動頻度に基づいて、ポリシが異常であるか否かを判定する処理とを実行させることを特徴とする。
【００３３】
本発明の異常ポリシ検出方法及びプログラムでは、ポリシの動作ログを参照して、ポリシの起動頻度を調べ、その起動頻度に基づいてポリシの異常を検出する。このようにすることで、ポリシが頻繁に起動されて異常を引き起こす事態を検出することができ、不適切なポリシによってシステムが異常・不安定となる事態を防ぐことができる。
【００３４】
本発明の異常ポリシ検出方法は、前記起動頻度を取得するステップでは、前記通知を受けた以前の履歴取得期間内のポリシ起動回数を取得し、前記ポリシが異常であるか否かを判定するステップでは、前記履歴取得期間内のポリシ起動回数が所定のしきい値以上であると、ポリシが異常であると判定する構成を採用できる。また、本発明のプログラムは、前記起動頻度を取得する処理では、前記通知を受けた以前の履歴取得期間内のポリシ起動回数を取得し、前記ポリシが異常であるか否かを判定する処理では、前記履歴取得期間内のポリシ起動回数が所定のしきい値以上であると、ポリシが異常であると判定する構成を採用できる。この場合、履歴取得期間内のポリシの起動回数（起動状況）に基づいて、ポリシの異常を判断できる。
【００３５】
本発明の異常ポリシ検出方法は、前記起動頻度を取得するステップでは、ポリシと履歴取得期間とを対応付けて記憶する履歴取得期間保存部を参照して、前記トリガー条件が満たされたポリシの履歴取得期間を取得する構成を採用できる。また、本発明のプログラムは、前記起動頻度を取得する処理では、ポリシと履歴取得期間とを対応付けて記憶する履歴取得期間保存部を参照して、前記トリガー条件が満たされたポリシの履歴取得期間を取得する構成を採用できる。この場合、ポリシごとに履歴取得期間を設定することができ、ポリシに応じた履歴取得期間で、ポリシの異常検出を行うことができる。
【００３６】
本発明の異常ポリシ検出方法は、前記ポリシ処理装置が、過去の起動頻度及び起動時間間隔の少なくとも一方の平均及び分散を演算し、該演算した平均及び分散に基づいて前記履歴取得期間を算出して前記履歴取得期間保存部に保存するステップを更に有する構成を採用できる。また、本発明のプログラムは、前記コンピュータに、過去の起動頻度及び起動時間間隔の少なくとも一方の平均及び分散を演算させ、該演算させた平均及び分散に基づいて前記履歴取得期間を算出して前記履歴取得期間保存部に保存する処理を更に実行させる構成を採用できる。この場合、ポリシの起動状況に応じて、履歴取得期間を設定することができる。
【００３７】
本発明の異常ポリシ検出方法は、前記ポリシが異常であるか否かを判定するステップでは、ポリシとしきい値とを対応付けて記憶するポリシ回数しきい値保存部を参照して、前記しきい値を取得する構成を採用できる。本発明のプログラムは、前記ポリシが異常であるか否かを判定する処理では、ポリシとしきい値とを対応付けて記憶するポリシ回数しきい値保存部を参照して、前記しきい値を取得する構成を採用できる。この場合、ポリシごとにしきい値を設定することができ、ポリシに応じたしきい値で、ポリシの異常検出を行うことができる。
【００３８】
本発明の異常ポリシ検出方法は、前記ポリシ処理装置がポリシの所定期間内の起動回数の平均及び分散を演算するステップと、前記ポリシ処理装置が該演算した平均及び分散に基づいて前記しきい値を算出し前記ポリシ回数しきい値保存部に保存するステップとを更に有する構成を採用できる。また、本発明のプログラムは、前記コンピュータに、ポリシの所定期間内の起動回数の平均及び分散を演算する処理と、該演算し平均及び分散に基づいて前記しきい値を算出し前記ポリシ回数しきい値保存部に保存する処理とを更に実行させる構成を採用できる。この場合、ポリシの起動状況に応じて、しきい値を動的に設定することができる。
【００３９】
本発明の異常ポリシ検出方法は、前記ポリシ処理装置が、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定するステップを更に有し、前記起動頻度を判定するステップでは、前記近似度を判定するステップで前記トリガー条件が満たされたポリシと近似すると判定されたポリシを、当該トリガー条件が満たされたポリシと同一とみなして、前記ポリシ動作ログ記憶部からポリシの起動回数を取得する構成を採用できる。また、本発明のプログラムは、前記コンピュータに、前記トリガー条件及び前記実行すべき動作の少なくとも一方に基づいてポリシの近似度を判定する処理を更に実行させ、前記起動頻度を判定する処理では、前記近似度を判定するステップで前記トリガー条件が満たされたポリシと近似すると判定されたポリシを、当該トリガー条件が満たされたポリシと同一とみなして、前記ポリシ動作ログ記憶部からポリシの起動回数を取得する構成を採用できる。この場合、近似度の高いポリシを同一のポリシとみなすことで、近似するポリシが連鎖する事態を検出することができる。
【００４０】
本発明の異常ポリシ検出方法は、前記ポリシ処理装置が、前記ポリシが異常であるか否かを判定するステップに先だって、ポリシと該ポリシについてポリシ動作異常判定が必要か否かを示す影響度フラグとを対応付けて記憶するポリシフラグテーブルを参照して、前記トリガー条件が満たされたポリシが異常であるか否かの判定をするステップを実行するか否かを決定するステップを更に有する構成を採用できる。また、本発明のプログラムは、前記コンピュータに、前記ポリシが異常であるか否かを判定する処理に先だって、ポリシと該ポリシについてポリシ動作異常判定が必要か否かを示す影響度フラグとを対応付けて記憶するポリシフラグテーブルを参照して、前記トリガー条件が満たされたポリシが異常であるか否かの判定をする処理を実行するか否かを決定する処理を更に実行させる構成を採用できる。この場合、特定のポリシの影響度フラグをポリシ動作異常判定が必要でない旨に設定することで、例えば起動時のログ保存など、異常を引き起こすことがないポリシについて、ポリシが異常か否かの判定を行わないように設定できる。
【発明の効果】
【００４１】
本発明のポリシ処理装置、ポリシ異常検出方法、及び、プログラムでは、ポリシの動作ログを参照してポリシの起動頻度を調べ、その起動頻度に基づいて、ポリシの異常を検出する。これにより、ポリシが、頻繁に起動されて異常を引き起こす事態を検出することができ、ポリシの記述者が意図しない連鎖を検出して、不適切なポリシによってシステムが異常・不安定となる事態を防ぐことができる。
【発明を実施するための最良の形態】
【００４２】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図１は、本発明の第１実施形態のポリシ処理装置の構成を示している。ポリシ処理装置１００は、イベント受理部１０１、ポリシ検索部１０２、動作実行部１０３、ポリシデータベース１０４、ポリシ実行パターン解析部１０５、ポリシ動作ログ検索部１０６、ポリシ動作ログ保存部１０７、及び、異常通知部１０８を備える。ポリシ処理装置１００は、管理対象において発生したイベントの通知を受け、そのイベントに従ってポリシを起動し、管理対象に対する操作を実行することで、図示しない、ネットワークで接続された機器の自律的な管理を行う。また、サービスの負荷に応じて資源を自動的に割り当てる。
【００４３】
ポリシ処理装置１００は、典型的には、ＣＰＵと主記憶装置と補助記憶装置と入力装置と出力装置とを有するコンピュータシステムに、所定のプログラムを読み込ませて動作させることにより実現される。ポリシ検索部１０２、ポリシ実行パターン解析部１０５、ポリシ動作ログ検索部１０６、及び、異常通知部１０８は、それぞれ、プログラム動作によって実現される。ポリシデータベース１０４及びポリシ動作ログ保存部１０７は、それぞれ所定のデータを記憶するハードディスク装置などの記憶装置として構成される。また、イベント受理部１０１及び動作実行部１０３は、それぞれ、ネットワークへのインタフェースとして構成される。
【００４４】
イベント受理部１０１は、外部からのイベント発生通知を受理するインタフェースとして構成される。ポリシデータベース１０４は、ポリシを記憶する。ポリシデータベース１０４は、ポリシの情報として、そのポリシの起動条件となるイベントを示す起動条件と、ポリシが起動したときに実行される動作及びその動作対象を含む起動時動作とを記憶する。ポリシの起動条件とは、イベントの種類や、そのパラメータの範囲を指定したものである。具体的には、「時刻が午後８時になったとき」、或いは、「認証されたユーザによりサービスＡに対する要求が発生したとき」等がある。
【００４５】
ポリシ検索部１０２は、ポリシ検索実行部１２１を有し、ポリシデータベース１０４を検索する。ポリシ検索実行部１２１は、ポリシデータベース１０４を参照して、イベント受理部１０１によって受理されたイベントに対して、起動の条件がそのイベントとマッチするポリシを検索する。動作実行部１０３は、ポリシ検索部１０２によって検索されたポリシの動作を実行する。
【００４６】
ポリシ動作ログ保存部１０７は、ポリシ検索部１０２によって過去に検索されたポリシの履歴を保存する。ポリシ動作ログ保存部１０７が保存する履歴情報は、過去にポリシ検索部１０２が検索したポリシの種類と、検索された時刻とを含む。ポリシ動作ログ検索部１０６は、ポリシ比較部１６１と、履歴取得期間決定部１６２を有し、ポリシ動作ログ保存部１０７を参照し、ポリシの起動履歴を検索する。履歴取得期間決定部１６２は、例えば、あらかじめ定められた所定の期間をポリシ比較部１６１に提示する。ポリシ比較部１６１は、履歴取得期間決定部１６２から提示された期間分の履歴から、ポリシ検索部１０２によって検索されたポリシと同一のものを探し出し、その結果を、ポリシ実行パターン解析部１０５に受け渡す。また、ポリシ検索部１０２によって検索されたポリシの履歴情報を、ポリシ動作ログ保存部１０７に追加登録する。
【００４７】
ポリシ実行パターン解析部１０５は、ポリシ実行回数評価部１５１と、ポリシ回数しきい値決定部１５２とを有し、ポリシ検索部１０２によって検索されたポリシの履歴を解析し、所定の条件でポリシ動作の異常を検出する。ポリシ回数しきい値決定部１５２は、所定の値を、しきい値としてポリシ実行回数評価部１５１に提示する。ポリシ実行回数評価部１５１は、ポリシ動作ログ検索部１０６から、ポリシ検索部１０２によって検索されたポリシの動作履歴を受け取り、その動作回数と、ポリシ回数しきい値決定部１５２から提示されたしきい値とを比較する。比較の結果、動作回数がしきい値に比して大きいときには、異常である旨を検出する。異常通知部１０８は、ポリシ実行パターン解析部１０５によってポリシ動作の異常が検出されると、その旨を、管理者等に通知する。管理者等への通知には、例えば電子メールを用いることができる。
【００４８】
図２は、ポリシ処理装置１００の動作手順を示している。イベント受理部１０１は、発生したイベントを受理し（ステップＳ２０１）、受理したイベントを、ポリシ検索部１０２に受け渡す。ポリシ検索部１０２は、ポリシデータベース１０４を検索して、ポリシに設定された起動条件が、受け取ったイベント情報に当てはまるポリシを検索する（ステップＳ２０２）。ポリシ検索部１０２は、イベント情報に当てはまるポリシが検索されたか否かを判断する（ステップＳ２０３）。ポリシ検索部１０２は、イベント情報に当てはまるポリシがポリシデータベース１０４に存在するときには、そのポリシをポリシ動作ログ検索部１０６に通知する。一方、イベント情報に当てはまるポリシがポリシデータベース１０４に存在しないときには、処理を終了して、次のイベントの発生に備える。
【００４９】
ポリシ動作ログ検索部１０６のポリシ比較部１６１が、ポリシ検索部１０２からステップＳ２０２で検索されたポリシを受け取ると、履歴取得期間決定部１６２は、ポリシの動作履歴を検索する期間を取得し、これをポリシ比較部１６１に提示する（ステップＳ２０４）。ポリシ比較部１６１は、ポリシ動作ログ保存部１０７から、ステップＳ２０２で検索されたポリシについて、ステップＳ２０４で取得した期間分の最近の動作履歴を取得し、そのポリシがその期間内に何回検索されたかを調べ（ステップＳ２０５）、検索回数、つまりポリシの実行回数をポリシ実行パターン解析部１０５に通知する。その後、ポリシ検索部１０２によって検索されたポリシと、検索された時刻とをポリシ動作ログ保存部１０７に登録する。
【００５０】
ポリシ実行パターン解析部１０５のポリシ実行回数評価部１５１は、ポリシ動作ログ検索部１０６からポリシの所定期間における検索回数を所得すると、ポリシ回数しきい値決定部１５２からしきい値を取得し（ステップＳ２０６）、そのしきい値と、ポリシ比較部１６１から通知されたポリシの動作回数とを比較する（ステップＳ２０７）。ポリシ実行回数評価部１５１は、ポリシ動作回数がしきい値を超えるときには、異常通知部１０８により、管理者等に、ポリシ動作が異常である旨を通知する（ステップＳ２０８）。その後、動作実行部１０３に、ステップＳ２０２で検索されたポリシを実行させる（ステップＳ２０９）。一方、ポリシ動作回数がしきい値以下であれば、ステップＳ２０９に進んで、動作実行部１０３に、ポリシを実行させる。
【００５１】
ポリシ処理装置１００の動作について、具体例を挙げて説明する。図３は、ポリシデータベース１０４に記憶されたポリシの具体例を示している。ポリシは、ポリシＩＤ、起動条件、及び、起動時動作を含む。ポリシＩＤは、ポリシを一意に指定するための識別子であり、例えば「ＰｏｌｉｃｙＡ」、「ＲｅｓｅｔＡｔ２２」等がある。起動条件は、ある範囲を持ってイベントを指定するものであり、例えば、「午後１０時になったとき」を意味する「time=22:00」、「サーバＢの負荷が０．９以上のとき」を意味する「server="serverB", cpuload>0.9」、認証されたユーザからのサービスＡに対して利用要求があったとき」を意味する「authorized=true, request="serviceA"」等がある。
【００５２】
ポリシの動作は、ポリシが起動条件にマッチするイベントの発生により、ポリシが起動したときに動作実行部１０３により実行される動作を規定するものであり、どのアドレスに、どのようなメッセージを送るのかを指定する。動作には、例えば、「サービスＡの提供するアプリケーションを停止する」、「サーバＤにサーバＢのサービスをミラーする」、「サービスＢのミラーサーバを作成する」、等がある。
【００５３】
図４は、ポリシ動作ログ保存部１０７に保存される動作履歴の具体例を示している。ポリシ動作ログ保存部１０７は、起動された（検索された）ポリシのポリシＩＤと起動時刻とを、起動した時間順に記憶する。例えば、“ＰｏｌｉｃｙＡ”が３月２１日の２２時０１分２２秒に起動された場合には、ポリシ動作ログ保存部１０７には、その旨を示す「PolicyA ; 03:21:22:01:22」が記憶される。
【００５４】
イベント受理部１０１が、３月２１日の時刻２２：０２：２４に、サーバＢの負荷が０．９５であることを示すイベント「server="serverB", cpuload=0.95」を受理した場合について考える。この場合、ポリシ検索部１０２は、ステップＳ２０２で、起動条件として「server="serverB", cpuload=0.95」を有するポリシを検索する。図３では、この起動条件にマッチするポリシは“ＰｏｌｉｃｙＡ”であるため、ポリシ検索部１０２は、ポリシＩＤ「ＰｏｌｙｃｙＡ」と、検索された時刻（３／２１  ２２：０２：２４）とを、ポリシ実行パターン解析部１０５に通知する。
【００５５】
ポリシ実行パターン解析部１０５は、通知されたポリシＩＤ「ＰｏｌｉｃｙＡ」のポリシの起動回数を、ポリシ動作ログ検索部１０６に尋ねる。ポリシ動作ログ検索部１０６は、まず、ステップＳ２０４で、履歴取得期間決定部１６２によって履歴取得期間を決定し、その後、ステップＳ２０５で、ポリシ比較部１６１により、その履歴取得期間分のポリシ起動回数を取得する。ステップＳ２０４の履歴取得期間の決定では、履歴取得期間決定部１６２は、例えば履歴を取得する期間を定めた設定ファイルを参照して、履歴取得期間を「３０秒」と決定する。
【００５６】
ステップＳ２０３のポリシ起動回数の取得では、ポリシ比較部１６１は、まず、ポリシ動作ログ保存部１０７を参照して、ポリシの起動時刻「３／２１  ２２：０２：２４」から、履歴取得期間の３０秒を引いた時刻「３／２１  ２２：０１：５４」までの間に起動されたポリシのリストを得る。次いで、そのリストに含まれる、起動されたポリシのＩＤ「ＰｏｌｉｃｙＡ」と同じＩＤのポリシの数をカウントし、「ＰｏｌｉｃｙＡ」の起動回数をポリシ実行パターン解析部１０５に受け渡す。図４の例では、ポリシ比較部１６１がカウントする「ＰｏｌｉｃｙＡ」の起動回数は、“３”となる。
【００５７】
ポリシ実行パターン解析部１０５は、ステップＳ２０６で、ポリシ回数しきい値決定部１５２によってしきい値を決定し、ステップＳ２０７で、ポリシ実行回数評価部１５１により、しきい値と、ポリシ比較部１６１から受け取ったポリシの起動回数とを比較する。ステップＳ２０６のしきい値の決定では、ポリシ回数しきい値決定部１５２は、例えば、しきい値を定めた設定ファイルを参照して、しきい値を「５」と決定する。「ＰｏｌｉｃｙＡ」の起動回数は“３”であるため、ステップＳ２０７では、ポリシ起動回数がしきい値より小さいと判断される。その後、ステップＳ２０９に進んで、動作実行部１０３に、「ＰｏｌｉｃｙＡ」の動作である「サーバＤにサーバＢのサービスをミラーする」という動作を実行させる。
【００５８】
イベント受理部１０１が、３月２１日の時刻２２：０２：２６に、サーバＣの負荷が０．９５であることを示すイベント「server="serverC", cpuload=0.95」を受理した場合について考える。この場合、ポリシ検索部１０２は、ステップＳ２０２で、起動条件として「server="serverB", cpuload=0.95」を有するポリシを検索する。図３では、この起動条件にマッチするポリシは“ＰｏｌｉｃｙＣ”であるため、ポリシ検索部１０２は、ポリシＩＤ「ＰｏｌｙｃｙＣ」と、検索された時刻（３／２１  ２２：０２：２６）とを、ポリシ実行パターン解析部１０５に通知する。
【００５９】
ポリシ実行パターン解析部１０５は、通知されたポリシＩＤ「ＰｏｌｉｃｙＣ」のポリシの起動回数を、ポリシ動作ログ検索部１０６に尋ねる。ポリシ動作ログ検索部１０６は、まず、ステップＳ２０４で、履歴取得期間決定部１６２によって履歴取得期間を決定し、その後、ステップＳ２０５で、ポリシ比較部１６１により、その履歴取得期間分のポリシ起動回数を取得する。図４では、ステップＳ２０５で取得される、「３／２１  ２２：０１：５６」から「３／２１  ２２：０２：２６」までの「ＰｏｌｉｃｙＣ」の起動回数は“６”となる。
【００６０】
ポリシ実行パターン解析部１０５は、ステップＳ２０６で、ポリシ回数しきい値決定部１５２によってしきい値を決定し、ステップＳ２０７で、ポリシ実行回数評価部１５１により、しきい値と、ポリシ比較部１６１から受け取ったポリシの起動回数とを比較する。「ＰｏｌｉｃｙＣ」の起動回数“６”はであるため、ポリシ実行回数評価部１５１は、ステップＳ２０７で、しきい値“５”を越えていると判断し、異常を引き起こしているポリシのＩＤ「ＰｏｌｉｃｙＣ」を異常通知部１０８に受け渡す。その後、ステップＳ２０８で、異常通知部１０８により、管理者に、「ＰｏｌｉｃｙＣ」が異常を起こしている旨を、電子メール等を用いて通知する。
【００６１】
本実施形態では、ポリシの起動に際して、所定期間における過去のポリシ起動回数を調べ、そのポリシ起動回数がしきい値を超えているとき、つまり、ポリシがあらかじめ規定された頻度以上で起動している場合には、ポリシが連鎖的に実行されシステムを不安定にしている異常の兆候であると捕らえて、管理者に、異常である旨を通知する。このようにすることで、ポリシによる動作がシステムの状態を悪化させ、その結果同じポリシが再び起動するという悪循環を検知することができ、ポリシ起動による不具合の拡大を防ぐことができる。
【００６２】
図５は、本発明の第２実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ａは、履歴取得期間決定部１６２ａが、履歴取得期間保存部１６２１と履歴取得期間取得部１６２２とを備える点で、図１に示す第１実施形態のポリシ処理装置１００と相違する。図６は、履歴取得期間保存部１６２１に保存された履歴取得期間の具体例を示している。履歴取得期間保存部１６２１は、ポリシＩＤと履歴取得期間とを対応付けて記憶する。履歴取得期間取得部１６２２は、履歴取得期間保存部１６２１から、ポリシ検索部１０２で検索されたポリシに対応する履歴取得期間を取得し、これをポリシ比較部１６１に提示する。
【００６３】
図７は、ポリシ処理装置１００ａの動作手順を示している。ポリシ処理装置１００ａは、図２のステップＳ２０１〜Ｓ２０３と同様な動作により、受理したイベントに対応して起動すべきポリシを検索する（ステップＳ７０１〜Ｓ７０３）。ポリシが検索されると、履歴取得期間取得部１６２２は、ステップＳ７０２で検索されたポリシのポリシＩＤをキーとして履歴取得期間保存部１６２１を検索し、そのポリシに対応する履歴取得期間を取得し、これをポリシ比較部１６１に提示する（ステップＳ７０４）。ポリシ比較部１６１は、ポリシ動作ログ保存部１０７から、ポリシ検索部１０２で検索されたポリシについて、ステップＳ７０４で提示された履歴取得期間分の最近の動作履歴を取得し、そのポリシがその期間内に何回検索されたかを調べ（ステップＳ７０５）、ポリシの実行回数をポリシ実行パターン解析部１０５に通知する。
【００６４】
例えば、ステップＳ７０２で検索されたポリシのＩＤが「ＰｏｌｉｃｙＡ」（図３）であれば、履歴取得期間取得部１６２２は、ステップＳ７０４で、図６に示す履歴取得期間から、「ＰｏｌｉｃｙＡ」に対応する履歴取得期間“４０秒”を取得して、これをポリシ比較部１６１に提示する。「ＰｏｌｉｃｙＡ」が「３／２１  ２２：０２：２４」に起動された場合には、ポリシ比較部１６１は、ステップＳ７０５で、ポリシ動作ログ保存部１０７（図４）を参照して、その起動時刻から履歴取得期間“４０秒”を引いた「３／２１  ２２：０１：４４」から「３／２１  ２２：０２：２４」までの「ＰｏｌｉｃｙＡ」の起動回数“４”を取得し、これをポリシ実行パターン解析部１０５に通知する。
【００６５】
また、ステップＳ７０２で検索されたポリシのＩＤが「ＰｏｌｉｃｙＣ」であれば、履歴取得期間取得部１６２２は、ステップＳ７０４で、ポリシ比較部１６１に、「ＰｏｌｉｃｙＣ」に対応する履歴取得期間“２０秒”（図６）を提示する。「ＰｏｌｉｃｙＣ」が「３／２１  ２２：０２：２６」に起動された場合には、ポリシ比較部１６１は、ステップＳ７０５で、ポリシ動作ログ保存部１０７（図４）を参照して、その起動時刻から履歴取得期間“２０秒”を引いた「３／２１  ２２：０２：０６」から「３／２１  ２２：０２：２６」までの「ＰｏｌｉｃｙＣ」の起動回数“４”を取得し、これをポリシ実行パターン解析部１０５に通知する。
【００６６】
ポリシ実行パターン解析部１０５は、ポリシの起動回数の通知を受けると、ステップＳ２０６と同様な動作により、ポリシ動作回数の異常と判断するしきい値を取得する（ステップＳ７０６）。ポリシ実行回数評価部１５１は、ステップＳ７０５で得られた所定期間内のポリシの動作回数と、ステップＳ７０６で提示されたしきい値とを比較する（ステップＳ７０７）。比較の結果、ポリシ動作回数がしきい値を超えるときには、異常通知部１０８により、管理者等に、ポリシ動作が異常である旨を通知する（ステップＳ７０８）。その後、動作実行部１０３に、ステップＳ７０２で検索されたポリシを実行させる（ステップＳ７０９）。一方、ポリシ動作回数がしきい値以下であれば、ステップＳ７０７からステップＳ７０９に進んで、動作実行部１０３に、ポリシを実行させる。
【００６７】
本実施形態では、ポリシ起動回数の履歴を取得する期間を、ポリシごとに異なる期間に設定できる。このようにすることで、第１実施形態で得られる効果に加えて、正常時のポリシの実行頻度や、重要度、ポリシの動作のシステムへの影響等に応じた適切な履歴の検索期間を、ポリシごとに設定可能であり、過剰に短い履歴取得期間によって、イベント到着のゆらぎの影響を受けて、異常を誤検出することを避けることができ、異常発見の精度を向上させることができる。
【００６８】
図８は、本発明の第３実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ｂは、履歴取得期間決定部１６２ｂが、履歴取得期間計算部１６２３を更に有する点で、図５に示す第２実施形態のポリシ処理装置１００ａと相違する。履歴取得期間計算部１６２３は、各ポリシがどの程度の頻度で起動されたかを記憶しておき、その平均や分散を用いて、各ポリシについて、履歴を検索する期間を決定する。
【００６９】
図９は、ポリシ処理装置１００ｂの動作手順を示している。ポリシ処理装置１００ｂは、図７のステップＳ７０１〜Ｓ７０９と同様な動作により、受理したイベントに対応して起動すべきポリシを検索し、そのポリシに対応した履歴取得期間のポリシの起動回数を取得して、起動回数がしきい値を超えたか否かを調べ、起動回数がしきい値を超える場合には、管理者等に異常を通知する（ステップＳ９０１〜Ｓ９０９）。
【００７０】
履歴取得期間計算部１６２３は、検索されたポリシの履歴から、その到着頻度の平均値、分散値を計算し、これらの値から履歴取得期間を計算して（ステップＳ９１０）、その値を、そのポリシの履歴取得期間として履歴取得期間保存部１６２１に保存する（ステップＳ９１１）。この履歴取得期間の計算では、例えば、履歴取得期間計算部１６２３は、まず、ポリシ動作ログ保存部１０７を参照して、１日或いは１ヶ月といった所定期間内でのポリシ起動時刻の時間間隔を調べ、その逆数を算出して平均と分散とを求める。次いで、前回ポリシが検索されたときの平均及び分散と、今回の平均及び分散とを比較し、分散が所定値以上大きくなったときには、履歴取得時間間隔を現在の値よりも長くする。
【００７１】
本実施形態では、履歴取得期間計算部１６２３が、検索されたポリシについて、実際の起動状況から履歴を取得する期間を決定する。このようにすることで、ポリシ登録者が、各ポリシについて、あらかじめ最適な履歴取得期間を見積もることができない場合でも、ポリシの起動状況に応じた適切な履歴取得期間で、ポリシの起動状況の履歴を取得することができる。
【００７２】
図１０は、本発明の第４実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ｃは、ポリシ回数しきい値決定部１５２ｃが、ポリシ回数しきい値保存部１５２１とポリシ回数しきい値取得部１５２２とを有する点で、図１に示す第１実施形態のポリシ処理装置１００と相違する。図１１は、ポリシ回数しきい値保存部１５２１に記憶されたポリシ回数しきい値を示している。ポリシ回数しきい値保存部１５２１は、ポリシＩＤと、ポリシ動作の異常を検出する際に用いるしきい値を格納する。ポリシ回数しきい値取得部１５２２は、ポリシ回数しきい値保存部１５２１を参照して、ポリシ検索部１０２で検索されたポリシに対応するしきい値を取得し、ポリシ実行回数評価部１５１に提示する。
【００７３】
図１２は、ポリシ処理装置１００ｃの動作手順を示している。ポリシ処理装置１００ｃは、図２のステップＳ２０１〜Ｓ２０５と同様な動作により、受理したイベントに対応して起動すべきポリシを検索し、所定期間内のポリシの動作履歴（動作回数）を取得する（ステップＳ１２０１〜Ｓ１２０５）。ポリシ回数しきい値取得部１５２２は、ステップＳ１２０２で検索されたポリシＩＤをキーとしてポリシ回数しきい値保存部１５２１を検索し、そのポリシに対応するしきい値を取得して、これをポリシ実行回数評価部１５１に提示する（ステップＳ１２０６）。
【００７４】
ポリシ実行回数評価部１５１は、ステップＳ１２０５で得られた所定期間内のポリシの動作回数と、ステップＳ１２０６で提示されたしきい値とを比較する（ステップＳ１２０７）。比較の結果、ポリシ動作回数がしきい値を超えるときには、異常通知部１０８により、管理者等に、ポリシ動作が異常である旨を通知する（ステップＳ１２０８）。その後、動作実行部１０３に、ステップＳ１２０２で検索されたポリシを実行させる（ステップＳ１２０９）。一方、ポリシ動作回数がしきい値以下であれば、ステップＳ１２０７からステップＳ１２０９に進んで、動作実行部１０３に、ポリシを実行させる。
【００７５】
例えば、ステップＳ１２０２で検索されたポリシのＩＤが「ＰｏｌｉｃｙＡ」（図３）であれば、ポリシ回数しきい値取得部１５２２は、図１１に示すポリシ回数しきい値から、「ＰｏｌｉｃｙＡ」に対応するしきい値“２”を取得して、これをポリシ実行回数評価部１５１に提示する。「ＰｏｌｉｃｙＡ」が「３／２１  ２２：０２：２４」に起動された場合には、ポリシ比較部１６１は、ポリシ動作ログ保存部１０７（図４）を参照して、その起動時刻から、履歴取得期間決定部１６２（図１）から提示された履歴取得期間“３０秒”を引いた「３／２１  ２２：０１：５４」から「３／２１  ２２：０２：２４」までの「ＰｏｌｉｃｙＡ」の起動回数“３”を取得し、これをポリシ実行パターン解析部１０５に通知する。この例では、「ＰｏｌｉｃｙＡ」の起動回数“３”は、しきい値“２”を超えるため、ステップＳ１２０８で、管理者等に、ポリシ動作が異常である旨が通知される。
【００７６】
また、ステップＳ１２０２で検索されたポリシのＩＤが「ＰｏｌｉｃｙＣ」であれば、ポリシ回数しきい値取得部１５２２は、図１１に示すポリシ回数しきい値から、「ＰｏｌｉｃｙＣ」に対応するしきい値“６”を取得して、これをポリシ実行回数評価部１５１に提示する。「ＰｏｌｉｃｙＣ」が「３／２１  ２２：０２：２６」に起動された場合には、ポリシ比較部１６１は、ポリシ動作ログ保存部１０７（図４）を参照して、その起動時刻から履歴取得期間“３０秒”を引いた「３／２１  ２２：０１：５６」から「３／２１  ２２：０２：２６」までの「ＰｏｌｉｃｙＣ」の起動回数“６”を取得し、これをポリシ実行パターン解析部１０５に通知する。この例では、「ＰｏｌｉｃｙＣ」の起動回数“６”は、しきい値“６”を超えていないため、異常である旨は通知されずに、ポリシ動作が実行される。
【００７７】
本実施形態では、ポリシ回数しきい値決定部１５２ｃは、検索されたポリシに対応したしきい値を、ポリシ実行回数評価部１５１に提示する。これにより、各ポリシについて、正常時のポリシの実行頻度や、重要度、ポリシの動作のシステムへの影響等に応じて、適切な動作回数のしきい値を設定することができ、過剰に低いしきい値による異常の誤検出や、過剰に高いしきい値による異常発見失敗を避けることができ、異常発見の精度を向上できる。
【００７８】
図１３は、本発明の第５実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ｄは、ポリシ回数しきい値決定部１５２ｄが、ポリシ回数しきい値計算部１５２３を更に有する点で、第４実施形態のポリシ処理装置１００ｃと相違する。ポリシ回数しきい値計算部１５２３は、ポリシ動作ログ保存部１０７を参照して、各ポリシがどの程度の頻度で起動されたかを計算し、その平均、分散から、各ポリシについて、異常と判断する際のしきい値を計算する。
【００７９】
図１４は、ポリシ処理装置１００ｄの動作手順を示している。ポリシ処理装置１００ｄは、図１２のステップＳ１２０１〜Ｓ１２０９と同様な動作により、受理したイベントに対応して起動すべきポリシを検索して、そのポリシの起動回数を取得し、起動回数が、そのポリシに対応したしきい値を超えたか否かを調べ、起動回数がしきい値を超える場合には、管理者等に異常を通知する（ステップＳ１４０１〜Ｓ１４０９）。
【００８０】
ポリシ回数しきい値計算部１５２３は、検索されたポリシの履歴から、その到着頻度の平均値、分散値を計算し、これらの値から、異常と判断する際のしきい値を計算し（ステップＳ１４１０）、その値を、検索されたポリシに対応するしきい値としてポリシ回数しきい値保存部１５２１に保存する（ステップＳ１４１１）。このしきい値の計算では、例えば、ポリシ回数しきい値計算部１５２３は、まず、ポリシ動作ログ保存部１０７を参照して、１日或いは１ヶ月といった所定期間内での、履歴取得期間ごとのポリシ起動回数を調べ、その平均と分散とを求める。次いで、前回ポリシが検索されたときの平均及び分散と、今回の平均及び分散とを比較し、分散が所定値以上大きくなったときには、しきい値を現在の値よりも大きくする。
【００８１】
本実施形態では、ポリシ回数しきい値計算部１５２３が、検索されたポリシについて、実際の起動状況から、異常と判断する際のしきい値を決定する。このようにすることで、ポリシ登録者が、各ポリシについて、あらかじめ最適なしきい値を見積もることができない場合でも、ポリシの起動状況に応じて、適切なしきい値を設定することができる。
【００８２】
図１５は、本発明の第６実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ｅは、ポリシ動作ログ検索部１０６ｅが、ポリシ比較部１６１に代えて、ポリシ近似度評価部１６３を有する点で、第１実施形態のポリシ処理装置１００と相違する。ポリシ近似度評価部１６３は、ポリシの起動条件や、ポリシの動作対象とその種類、ポリシが呼び出すメソッドからポリシの近似度を計算し、ポリシ動作ログ保存部１０７を参照して、検索されたポリシに近似するポリシの起動回数をカウントする。
【００８３】
図１６は、ポリシ処理装置１００ｅの動作手順を示している。ポリシ処理装置１００ｅは、図２のステップＳ２０１〜Ｓ２０４と同様な動作により、受理したイベントに対応して起動すべきポリシを検索し、履歴取得期間を決定する（ステップＳ１６０１〜Ｓ１６０４）。ポリシ近似度評価部１６３は、ステップＳ１６０４で提示された履歴取得期間分のポリシの動作履歴から、ポリシの近似度が高い、つまり、ステップＳ１６０２で検索されたポリシと似ているポリシの数をカウントし、これをポリシ実行パターン解析部１０５に通知する(ステップＳ１６０５)。
【００８４】
ポリシ実行パターン解析部１０５は、検索されたポリシと近似するポリシの起動回数の通知を受けると、ステップＳ２０６と同様な動作により、ポリシ動作回数の異常と判断するしきい値を取得する（ステップＳ１６０６）。ポリシ実行回数評価部１５１は、ステップＳ１６０５で得られたポリシの動作回数と、ステップＳ１６０６で提示されたしきい値とを比較する（ステップＳ１６０７）。比較の結果、ポリシ動作回数がしきい値を超えるときには、異常通知部１０８により、管理者等に、ポリシ動作が異常である旨を通知する（ステップＳ１６０８）。その後、動作実行部１０３に、ステップＳ１６０２で検索されたポリシを実行させる（ステップＳ１６０９）。一方、ポリシ動作回数がしきい値以下であれば、ステップＳ１６０７からステップＳ１６０９に進んで、動作実行部１０３に、ポリシを実行させる。
【００８５】
以下、具体例を挙げて説明する。図１７は、ポリシデータベース１０４が記憶するポリシの具体例を示している。「ＰｏｌｉｃｙＥ」の起動条件は、「server=*, bandwidth>80」であり、動作は「イベントの”server”の値が示す機器のミラーサーバを作成する」である。この「ＰｏｌｉｃｙＥ」のメソッドは、「ミラーサーバを作成」であり、その対象は、ポリシを起動するトリガーとなったイベントのパラメータの値に従って変化する。
【００８６】
「ＰｏｌｉｃｙＦ」の起動条件は、「server=”serverF”, diskspace<10」、つまり、「serverFのディスク容量の残りが10％以下になったとき」であり、動作は「serverFに対してバックアップを取る」である。「ＰｏｌｉｃｙＧ」の起動条件は、「server=”serverF”, diskwritesum>500」、つまり「serverFのディスク書き込み量の合計が５００Ｍｂｙｔｅ以上になったとき」であり、動作は「serverFに対してバックアップを取る」である。
【００８７】
図１８は、ポリシ動作ログ保存部１０７が記憶するポリシの動作ログの具体例を示している。ポリシ動作ログ保存部１０７は、起動したポリシのＩＤと、その起動時刻と、起動時のパラメータを保存する。この例では、ポリシ動作ログ保存部１０７は、３月２１日の２２：０１：５０に発生した“server”＝serverAのイベントをトリガーとして、「ＰｏｌｉｃｙＥ」が、“serverA”を対象に起動された旨を保存している。また、３月２１日の２２：０１：５５に、「ＰｏｌｉｃｙＥ」が、“serverB”を対象に起動された旨を保存している。
【００８８】
例えば、ステップＳ１６０１で、イベント「server=”serverA”, bandwidth=90」が、３月２１日の２２：０２：２４にイベント受理部１０１によって受理された場合について考える。この場合、ステップＳ１６０２では、300CＰｏｌｉｃｙＥ」が検索される。ステップＳ１６０５では、ポリシ近似度評価部１６３は、まず、ポリシ動作ログ保存部１０７から、ステップＳ１６０４で決定された履歴取得期間分の動作ログ、例えば“４０秒”分の動作ログを取得する。次いで、ステップＳ１６０２で検索されたポリシの動作の対象及びメソッドと、ポリシ動作ログ保存部１０７から取得された動作ログに含まれるポリシの動作の対象及びメソッドとに基づいて近似度を計算し、その近似度に基づいて、検索された「ＰｏｌｉｃｙＥ」に近似するポリシの起動回数をカウントする。
【００８９】
近似度の計算は、例えば、動作の対象が一致することで“１”、メソッドが一致することで“１”とする。動作の対象及びメソッドがともに一致する場合には、近似度は“２”となる。例えば、ステップＳ１６０１で入力されたイベントに対する「ＰｏｌｉｃｙＥ」の動作の対象は“serverA”であれば、動作対象を“serverA”とするポリシの近似度を“１”とし、更に、メソッドが「ミラーサーバを作成する」であるポリシの近似度に“１”を加える。
【００９０】
ポリシ近似度評価部１６３は、例えば、近似度が“２”以上のポリシを近似したポリシであると判断し、ポリシ動作ログ保存部１０７から取得したポリシの動作履歴に含まれる近似度が“２”以上のポリシの個数をカウントする。この場合には、起動されたポリシ自体は検索されたポリシと同じ「ＰｏｌｉｃｙＥ」であっても、動作対象が“severA”と異なる場合には、ポリシ近似度評価部１６３は、検索されたポリシに近似するポリシの起動回数としてカウントしない。
【００９１】
図１８の例では、「ＰｏｌｉｃｙＥ」自体は６回起動されている。ポリシ近似度評価部１６３は、そのうちで、パラメータが“serverA”である「ＰｏｌｉｃｙＥ」の起動回数“３”を、ステップＳ１６０２で検索されたポリシに近似するポリシの起動回数としてカウントする。例えば、ステップＳ１６０６で決定されたしきい値が“５”のときには、ステップＳ１６０７では、しきい値を超えていないと判断され、異常である旨は通知されずに、ステップＳ１６０９でポリシの動作が実行される。
【００９２】
次に、ステップＳ１６０１で、イベント「server=”serverF”, diskspace=8」が、３月２１日の２２：０２：２５にイベント受理部１０１によって受理された場合について考える。この場合、ステップＳ１６０２では、「ＰｏｌｉｃｙＦ」が検索される。検索された「ＰｏｌｉｃｙＦ」の動作の対象は“serverF”であり、「ＰｏｌｉｃｙＦ」及び「ＰｏｌｉｃｙＧ」がこれに一致する。また、「ＰｏｌｉｃｙＦ」のメソッドは、「バックアップを取る」であり、「ＰｏｌｉｃｙＦ」及び「ＰｏｌｉｃｙＧ」がこれに一致する。従って、ポリシ動作ログ保存部１０７から取得された動作ログ（図１８）に含まれるポリシのうちで、近似度が“２”以上となるポリシは、「ＰｏｌｉｃｙＦ」及び「ＰｏｌｉｃｙＧ」となる。
【００９３】
ステップＳ１６０５では、ポリシ近似度評価部１６３は、ポリシ動作ログ保存部１０７から取得された動作ログに含まれるポリシのうちで、近似度が“２”以上のポリシの数、つまり「ＰｏｌｉｃｙＦ」及び「ＰｏｌｉｃｙＧ」の数“６”を、ステップＳ１６０２で検索されたポリシに近似するポリシの起動回数としてカウントする。例えば、ステップＳ１６０６で決定されたしきい値が“５”のときには、ステップＳ１６０７では、近似のポリシの起動回数がしきい値を超えていると判断され、ステップＳ１６０８で、管理者等に、異常である旨が通知される。
【００９４】
本実施形態では、近似のポリシという概念を導入し、ポリシ近似度評価部１６３により、検索されたポリシに近似するポリシの起動回数をカウントして、その起動回数がしきい値を超えるか否かを判断する。この場合、全く同じポリシでなくても、その動作対象や動作内容が近いもの、つまり、ポリシの意図や効果が近いものを同じポリシとして扱うことにより、異常検出の精度を高めることができる。
【００９５】
図１９は、本発明の第７実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ｆは、ポリシ実行パターン解析部１０５ｆが、ポリシフラグ評価部１５３を更に有する点で、第１実施形態のポリシ処理装置１００と相違する。ポリシデータベース１０４ｆは、各ポリシについて、異常検出処理を行うか否かを示す影響度フラグを格納したポリシフラグテーブル１４１を有している。ポリシフラグ評価部１５３は、ポリシフラグテーブル１４１を参照して、ポリシ実行回数評価部１５１にポリシＩＤ等を受け渡してポリシ動作の異常検出動作を実行させるか否かを決定する。
【００９６】
図２０は、ポリシ処理装置１００ｆの動作手順を示している。ポリシ処理装置１００ｆは、図２のステップＳ２０１〜Ｓ２０３と同様な動作により、受理したイベントに対応して起動すべきポリシを検索する（ステップＳ２００１〜Ｓ２００３）。ポリシフラグ評価部１５３は、ポリシデータベース１０４ｆのポリシフラグテーブル１４１を参照して、ステップＳ２００２で検索されたポリシの影響度フラグが有効であるか否かを調査する（ステップＳ２００４）。影響度フラグが有効である場合には、ステップＳ２０４〜Ｓ２０９と同様な動作により、検索されたポリシの起動回数がしきい値を超えているかを調べ、超えている場合には、異常である旨を通知する（ステップＳ２００５〜Ｓ２０１０）。影響度フラグが有効でないときには、そのままステップＳ２０１０に進んで、検索されたポリシの動作を実行する。
【００９７】
ポリシデータベース１０４ｆには、例えば図２１に示すように、ポリシＩＤと、起動条件と、起動時動作と、影響度フラグとが対応付けて記憶されている。例えば、ステップＳ２００１で、イベント「server=”serverA”, programstart=”service1”, user=”user1”」がイベント受理部１０１によって受理されると、ステップＳ２００２では、「ＰｏｌｉｃｙＨ」が検索される。ステップＳ２００４では、ポリシフラグ評価部１５３は、検索された「ＰｏｌｉｃｙＨ」の影響度フラグが、有効（○）であるか、有効でない（×）かを調べる。図２１では、「ＰｏｌｉｃｙＨ」の影響度フラグは“×”である。従って、ポリシ動作が異常であるか否かの検査は行われずに、そのままステップＳ２０１０へ進んで、「ＰｏｌｉｃｙＨ」の動作「起動時刻にユーザをログに保存する」が実行される。
【００９８】
本実施形態では、各ポリシについて、ポリシ動作の異常検出処理を行うか否かの影響度フラグを用意し、その影響度フラグが有効になっているポリシについて、ポリシ動作が異常であるか否かの検査を行う。このようにすることで、例えば、システムに影響を与えないような、情報取得のためのポリシの影響度フラグを“有効でない”と設定することにより、そのようなポリシが異常であると誤検出されることを防止することができ、異常発見の精度を高めることができる。
【００９９】
図２２は、本発明の第８実施形態のポリシ処理装置の構成を示している。本実施形態では、ポリシ処理装置（システム）１００ｇを、受理したイベントに対応したポリシを起動して実行するポリシ検索装置１０、１１、１２と、ポリシ動作の異常を検出する異常ポリシ発見装置２０とに分離する。ポリシ検索装置１０、１１、１２は、それぞれ、図１に示す第１実施形態のポリシ処理装置１００と同様なイベント受理部１０１、ポリシ検索部１０２、動作実行部１０３、及び、ポリシデータベース１０４に加えて、ポリシ実行情報通知部１０９を有する。異常ポリシ発見装置２０は、図１５に示す第６実施形態のポリシ処理装置１００ｅと同様なポリシ実行パターン解析部１０５、ポリシ動作ログ保存部１０７、ポリシ動作ログ検索部１０６ｅ、及び、異常通知部１０８に加えて、ポリシ実行情報受理部２０１を有する。
【０１００】
各ポリシ検索装置１０、１１、１２及び異常ポリシ発見装置２０は、例えばワークステーション等のコンピュータシステムとして構成されており、ポリシ検索装置１０、１１、１２と、異常ポリシ発見装置２０とは、ネットワークを介して接続されている。ポリシ検索装置１０、１１、１２は、例えば管理対象とする機器が相互に異なっており、それぞれの機器で発生するイベントに従って、管理対象機器にポリシ動作を実行する。ポリシ検索装置１０、１１、１２では、イベント受理部１０１が受理したイベントに従って、ポリシ検索部１０２で起動されるポリシが検索されると、ポリシ実行情報通知部１０９は、検索されたポリシのＩＤと起動時刻とを、異常ポリシ発見装置２０のポリシ実行情報受理部２０１に送信する。
【０１０１】
ポリシ実行情報受理部２０１は、複数のポリシ検索装置１０、１１、１２の何れかで起動されたポリシの情報を受信し、これをポリシ実行パターン解析部１０５に通知する。ポリシ実行パターン解析部１０５は、ポリシ検索装置１０、１１、１２で検索されたポリシに近似するポリシの起動回数を、ポリシ動作ログ検索部１０６ｅから取得する。ポリシ実行パターン解析部１０５は、取得した近似するポリシの起動回数としきい値とを比較し、ポリシ動作の異常を検出する。
【０１０２】
図２３は、ポリシ処理装置１００ｇの動作手順を示している。ポリシ検索装置１０、１１、１２は、図１６のステップＳ１６０１〜Ｓ１６０３と同様な動作により、担当する機器で発生したイベントを受理し、そのイベントが起動条件となるポリシを検索する（ステップＳ２３０１〜Ｓ２３０３）。ポリシ処理装置１００ｇは、ポリシ検索部１０２によってポリシを検索すると、ポリシ実行情報通知部１０９により、検索されたポリシの情報を異常ポリシ発見装置２０に送信し（ステップＳ２３０４）、検索されたポリシの動作を実行する（ステップＳ２３０５）。
【０１０３】
異常ポリシ発見装置２０は、ポリシ実行情報受理部２０１によって、ポリシ検索装置１０、１１、１２から送信された検索されたポリシの情報を受信し、これを、ポリシ実行パターン解析部１０５に通知する（ステップＳ２３０６）。その後、図２のステップＳ２０４〜Ｓ２０９と同様な動作により、ポリシ動作ログ保存部１０７を参照して検索されたポリシの起動回数を取得し、起動回数がしきい値を超えたか否かを調べ、起動回数がしきい値を超える場合には、管理者等に異常を通知する（ステップＳ２３０７〜Ｓ２３１１）。
【０１０４】
以下、具体例を挙げて説明する。ポリシ検索装置１０のポリシデータベース１０４は、図２４に示すポリシを記憶し、ポリシ検索装置１１のポリシデータベース１０４は、図２５に示すポリシを記憶し、ポリシ検索装置１２のポリシデータベース１０４は、図２６に示すポリシを記憶しているとする。ステップＳ２３０１で、ポリシ検索装置１０のイベント受理部１０１が、イベント「server=”serverA”, state=no#response」を受理した場合について考える。この場合、ステップＳ２３０２では、このイベントを起動条件とするポリシ「ＰｏｌｉｃｙＩ」が検索される。また、ステップＳ２３０４では、ポリシ実行情報通知部１０９により、検索されたポリシのＩＤ「ＰｏｌｉｃｙＩ」と、起動時刻「３／２１  ２２：０２：２５」とが、異常ポリシ発見装置２０へ送信される。
【０１０５】
ポリシ実行パターン解析部１０５は、ステップＳ２３０６で、検索されたポリシの情報を受け取ると、ポリシ動作ログ検索部１０６ｅに、「ＰｏｌｉｃｙＩ」に近似するポリシの起動回数を問い合わせる。ポリシ動作ログ検索部１０６は、ステップＳ２３０７で、あらかじめ用意された設定ファイルに従って、履歴取得期間を、例えば“４０秒”と決定する。ポリシ動作ログ検索部１０６ｅは、ステップＳ２３０８では、まず、ポリシ動作ログ保存部１０７から、決定された履歴期間“４０秒”分の動作ログを取得する。次いで、取得した動作ログに含まれる、「ＰｏｌｉｃｙＩ」に近似するポリシの起動回数をカウントする。
【０１０６】
ポリシの近似度については、動作の対象が同じであれば“１”、メソッドが同じであれば更に“１”とする。つまり、動作対象及びメソッドの何れか一方が同じであれば近似度は“１”、双方が同じであれば近似度は“２”となる。ここでは、ポリシ動作ログ検索部１０６ｅは、近似度が１以上のポリシを、近似するポリシとする。「ＰｏｌｉｃｙＩ」の動作対象は“serverA”であり、メソッドは「再起動する」であるため、図２４〜図２６に示すポリシでは、「ＰｏｌｉｃｙＩ」、「ＰｏｌｉｃｙＪ」、「ＰｏｌｉｃｙＫ」、「ＰｏｌｉｃｙＬ」が、ポリシ検索装置１０において検索された「ＰｏｌｉｃｙＩ」と近似するポリシとなる。取得した動作ログが、図２７に示す内容であったときには、この動作ログに含まれる「ＰｏｌｉｃｙＩ」に近似するポリシの起動回数は、“７”となる。
【０１０７】
ポリシ実行パターン解析部１０５は、ステップＳ２３０９で、あらかじめ用意された設定ファイルに従って、しきい値を、例えば“５”と決定する。ステップＳ２３１０で、しきい値“５”と、ステップＳ２３０８で取得された「ＰｏｌｉｃｙＩ」に近似するポリシの起動回数“７”とを比較すると、起動回数がしきい値を超えている。従って、この場合には、ステップＳ２３１０で、電子メール等により、管理者に、ポリシ動作が異常である旨が通知される。
【０１０８】
本実施形態では、ポリシ処理装置を、ポリシを検索して実行するポリシ検索装置１０、１１、１２と、ポリシの異常を検出する異常ポリシ発見装置２０とに分離する。このようにすることで、複数個所に分散してポリシの処理を行う環境、例えば処理対象の機器ごとにポリシ検索装置１０、１１、１２を用意してポリシ処理を行う環境下において、ポリシの連鎖が引き起こす異常を検出することができる。
【０１０９】
図２８は、本発明の第９実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ｈは、ポリシ検索部１０２ｈが、ポリシ実行制御部１２２及び停止ポリシ保存部１２３を更に有する点で、第１実施形態のポリシ処理装置１００と相違する。停止ポリシ保存部１２３は、起動が抑止されるポリシを保存する。ポリシ実行制御部１２２は、ポリシ検索実行部１２１によって検索されたポリシが、停止ポリシ保存部１２３に保存されているポリシと一致するときには、そのポリシの起動を抑止する。
【０１１０】
図２９は、ポリシ処理装置１００ｈの動作手順を示している。ポリシ処理装置１００ｈは、図２のステップＳ２０１〜Ｓ２０７と同様な動作により、受理したイベントを起動条件とするポリシを検索し、そのポリシの起動回数を取得し、起動回数がしきい値を超えているか否かを調べる（ステップＳ２９０１〜Ｓ２９０７）。しきい値を超えていないときには、ステップＳ２９０９へ進む。
【０１１１】
ポリシ実行パターン解析部１０５は、起動回数がしきい値を超えていると判断すると、異常通知部１０８に、ポリシ動作が異常である旨を通知する。異常通知部１０８は、異常である旨の通知を受けると、その旨を管理者等に通知すると共に、ステップＳ２９０２で検索されたポリシを、停止ポリシ保存部１２３に追加登録する（ステップＳ２９０８）。
【０１１２】
ポリシ実行制御部１２２は、ステップＳ２９０２で検索されたポリシが、停止ポリシ保存部１２３に記憶されているか否かを判断する（ステップＳ２９０９）。ポリシ実行制御部１２２は、検索されたポリシが、停止ポリシ保存部１２３に記憶されていないときには、動作実行部１０３に、検索されたポリシを受け渡して、動作実行部１０３に、検索されたポリシの動作を実行させる（ステップＳ２９１０）。ポリシ実行制御部１２２は、検索されたポリシが、停止ポリシ保存部１２３に記憶されているときには、そのまま処理を終了して、ポリシの動作を実行させない。
【０１１３】
本実施形態では、ポリシ実行パターン解析部１０５によって、ポリシ動作が異常であると判断されたポリシを、停止ポリシ保存部１２３に記憶しておき、そのポリシの動作が実行されることを抑止する。このようにすることで、異常な動作を引き起こしているポリシを自動的に停止することができ、その結果、異常が拡大することを防ぐことができる。
【０１１４】
図３０は、本発明の第１０実施形態のポリシ処理装置の構成を示している。本実施形態のポリシ処理装置１００ｉは、ポリシ検索部１０２ｉが、ポリシ実行間隔制御部１２４、ポリシ実行間隔計算部１２５、ポリシ連鎖情報保存部１２６、及び、動作待ちテーブル１２７を更に有する点で、第１実施形態のポリシ処理装置１００と相違する。ポリシ連鎖情報保存部１２６は、ポリシ実行パターン解析部１０５によってポリシ動作が異常であると判断されたポリシと、動作頻度と、そのポリシの最終起動時刻とを対応付けて記憶する。ポリシ実行間隔計算部１２５は、ポリシ連鎖情報保存部１２６が記憶する動作頻度に基づいて、ポリシ実行の時間間隔を計算する。
【０１１５】
ポリシ実行間隔制御部１２４は、ポリシ実行間隔計算部１２５によって計算された時間間隔に基づいて、実行予定時刻を算出する。ポリシ実行間隔制御部１２４は、算出した実行予定時刻が現時刻よりも前の時刻を示している場合には、検索されたポリシを動作実行部１０３に通知して、ポリシの動作を実行させる。動作待ちテーブル１２７は、ポリシと、実行予定時刻とを対応付けて記憶する。ポリシ実行間隔制御部１２４は、算出した実行予定時刻が現時刻よりも後の時刻を示しているときには、動作待ちテーブル１２７に実行予定時刻を登録し、検索されたポリシの実行を、実行予定時刻まで遅らせる。
【０１１６】
図３１は、ポリシ処理装置１００ｉの動作手順を示している。ポリシ処理装置１００ｉは、図２のステップＳ２０１〜Ｓ２０７と同様な動作により、受理したイベントを起動条件とするポリシを検索し、そのポリシの起動回数を取得し、起動回数がしきい値を超えているか否かを調べる（ステップＳ３１０１〜Ｓ３１０７）。しきい値を超えていないときには、ステップＳ３１０９へ進む。
【０１１７】
ポリシ実行パターン解析部１０５は、起動回数がしきい値を超えていると判断すると、異常通知部１０８に、ポリシ動作が異常である旨を通知する。異常通知部１０８は、異常である旨の通知を受けると、その旨を管理者等に通知すると共に、ステップＳ３１０２で検索されたポリシの情報を、ポリシ連鎖情報保存部１２６に保存する（ステップＳ３１０８）。ステップＳ３１０８では、ポリシ連鎖情報保存部１２６に登録されている動作頻度に、ステップＳ３１０５で取得した起動回数を加算して、これを新たな動作頻度として登録する。
【０１１８】
ポリシ実行間隔制御部１２４は、ステップＳ３１０２で検索されたポリシを受け取る。ポリシ実行間隔計算部１２５は、ポリシ実行間隔制御部１２４が受け取ったポリシをキーとして、ポリシ連鎖情報保存部１２６を検索し、ポリシ連鎖情報保存部１２６に、そのポリシの情報が登録されているか否かを判断する（ステップＳ３１０９）。登録されていないときには、ステップＳ３１１８へ進む。
【０１１９】
ポリシ実行間隔計算部１２５は、検索されたポリシが登録されていると判断すると、ポリシ連鎖情報保存部１２６から動作頻度を取得し、その動作頻度から、ポリシ実行の時間間隔を計算する（ステップＳ３１１０）。ポリシ実行間隔の計算では、例えば動作頻度×１を、時間間隔（秒）とする。また、今回の実行分として、ポリシ連鎖情報保存部１２６に登録された動作頻度に１を加算する。
【０１２０】
ポリシ実行間隔制御部１２４は、ステップＳ３１０２で検索されたポリシと同じポリシが、動作待ちテーブル１２７に登録されているか否かを調べる（ステップＳ３１１１）。登録されていないときには、ポリシ連鎖情報保存部１２６から、検索されたポリシの最終実行時刻を取得し、その最終実行時刻に、ステップＳ３１１０で計算された時間間隔を加えた時刻を、実行予定時刻として算出する（ステップＳ３１１２）。最終実行時刻が未登録であれば、現時刻にステップＳ３１１０で計算された時間間隔を加えた時刻を実行予定時刻として算出する。
【０１２１】
ポリシ実行間隔制御部１２４は、ステップＳ３１１１で算出された実行予定時刻が、現時刻以降であるか否か、つまり、実行予定時刻が現在よりも未来であるか否かを調べる（ステップＳ３１１３）。実行予定時刻が現時刻以降であれば、ステップＳ３１１５へ進み、現時刻以前であれば、ステップＳ３１１７へ進む。
【０１２２】
ステップＳ３１１１で、動作待ちテーブル１２７にステップＳ３１０２で検索されたポリシと同じポリシが登録されていると判断されたときには、ポリシ実行間隔制御部１２４は、動作待ちテーブル１２７に登録されている当該ポリシの実行予定時刻のうちで、最も遅い実行予定時刻を取得する。その後、その最も遅い実行予定時刻に、ステップＳ３１１０で算出した実行間隔を加えた時刻を実行予定時刻として算出する（ステップＳ３１１４）。
【０１２３】
ポリシ実行間隔制御部１２４は、動作待ちテーブル１２７に、ステップＳ３１０２で検索されたポリシと、ステップＳ３１１２又はステップＳ３１１４で算出された実行予定時刻とを登録する（ステップＳ３１１５）。ポリシ実行間隔制御部１２４は、現時刻が、動作待ちテーブル１２７に登録された実行予定時刻まで待機する。ポリシ実行間隔制御部１２４は、現時刻が実行予定時刻となると、動作待ちテーブル１２７から、その実行予定時刻のポリシの項目を削除し（ステップＳ３１１６）、ポリシ連鎖情報保存部１２６に対して、現時刻を検索されたポリシの最終実行時刻として登録する（ステップＳ３１１７）。その後、ポリシ実行間隔制御部１２４は、動作実行部１０３に、検索されたポリシを受け渡し、動作実行部１０３に、検索されたポリシの動作を実行させる（ステップＳ３１１８）。
【０１２４】
以下、具体例を挙げて説明する。ポリシデータベース１０４は、図３２に示すポリシを記憶しているとする。ステップＳ３１０１で、イベント受理部１０１が、イベント「server=”serverA”, cpuload=93」を受理した場合について考える。この場合、ステップＳ３１０２では、このイベントを起動条件とするポリシ「ＰｏｌｉｃｙＯ」が検索される。この「ＰｏｌｉｃｙＯ」の起動回数がしきい値を超えている場合には、ステップＳ３１０８で、ポリシ連鎖情報保存部１２６に、ステップＳ３１０５で取得されたポリシの起動回数が、登録済みの動作頻度に加算される。
【０１２５】
ポリシ連鎖情報保存部１２６に、「ＰｏｌｉｃｙＯ」の情報が登録されている場合、ステップＳ３１０９では、検索された「ＰｏｌｉｃｙＯ」の情報が、ポリシ連鎖情報保存部１２６に登録されていると判断される。ポリシ連鎖情報保存部１２６が図３３に示す情報を保存しているときには、ポリシ実行間隔計算部１２５は、ステップＳ３１１０で、「ＰｏｌｉｃｙＯ」の動作頻度“５２回”を取得し、実行時間間隔を、“５２秒”と決定する。また、動作頻度に、“１”が加算し、動作頻度を“５３回”に更新する。
【０１２６】
ポリシ実行間隔制御部１２４は、ステップＳ３１１１で、「ＰｏｌｉｃｙＯ」が、動作待ちテーブル１２７に登録されているか否かを判断する。動作待ちテーブル１２７が、図３４に示す状態であれば、ステップＳ３１１４に進んで、「ＰｏｌｉｃｙＯ」の実行予定時刻を算出する。図３４では、「ＰｏｌｉｃｙＯ」の実行予定時刻として、「３／２１  １１：２７：４１」と、「３／２１  １１：２８：３２」とが登録されている。ステップＳ３１１４では、このうちの遅い方（３／２１  １１：２８：３２）にステップＳ３１１０で決定した実行時間間隔“５２秒”を加えた「３／２１  １１：２９：２４」を新たな実行予定時刻として算出する。
【０１２７】
ポリシ実行間隔制御部１２４は、ステップＳ３１１５で、動作待ちテーブル１２７に、「ＰｏｌｉｃｙＯ」、実行予定時間「３／２１  １１：２９：２４」を追加登録する。ポリシ実行間隔制御部１２４は、例えば「３／２１  １１：２７：４１」になると、ステップＳ３１１６で、動作待ちテーブル１２７に登録された「ＰｏｌｉｃｙＯ」の項目を削除し、ステップＳ３１１７で、ポリシ連鎖情報保存部１２６（図３３）に最終実行時刻を登録して、ステップＳ３１１８で「ＰｏｌｉｃｙＯ」の動作を実行させる。動作待ちテーブル１２７に登録された残りの項目についても、予定実行時刻になると、動作待ちテーブル１２７から削除して、ポリシの動作を実行させる。
【０１２８】
本実施形態では、ポリシ実行間隔制御部１２４により、ポリシ連鎖情報保存部１２６に登録されているポリシが、動作頻度に基づいて定まる時間間隔よりも狭い時間間隔で実行されることを防止する。このようにすることで、単位時間当たりのポリシの実行回数を制限することができ、ポリシの連鎖による異常の拡大の速度を抑えることができる。また、その結果、管理者等に、異常に対応するための時間を与えることができる。
【０１２９】
図３５は、本発明の第１１実施形態のポリシ処理装置の構成を示している。本実施形態は、ポリシ検索部１０２ｊが、ポリシ近似度評価部１２８を更に有する点で、第１０実施形態のポリシ処理装置１００ｉと異なる。ポリシ近似度評価部１２８は、ポリシの起動条件、動作対象とその種類、ポリシが呼び出すメソッドからポリシの近似度を計算し、近似度が高いポリシを同一のポリシとみなし、ポリシ動作が異常であると判定されたポリシに近似するポリシを、ポリシ連鎖情報保存部１２６に登録する。
【０１３０】
図３６は、ポリシ処理装置１００ｊの動作手順を示している。ポリシ処理装置１００ｊは、図３１のステップＳ３１０１〜Ｓ３１０７と同様な動作により、受理したイベントを起動条件とするポリシを検索し、そのポリシの起動回数を取得し、起動回数がしきい値を超えているか否かを調べる（ステップＳ３６０１〜Ｓ３６０７）。しきい値を超えていないときには、ステップＳ３６０７からステップＳ３６１０へ進む。
【０１３１】
ポリシ実行パターン解析部１０５は、ステップＳ３６０７で、起動回数がしきい値を超えていると判断すると、異常通知部１０８に、ポリシ動作が異常である旨を通知する。異常通知部１０８は、異常である旨の通知を受けると、その旨を管理者等に通知すると共に、ポリシ近似度評価部１２８に、ステップＳ３６０２で検索されたポリシと、ステップＳ３６０５で取得した起動回数とを通知する（ステップＳ３６０８）。ポリシ近似度評価部１２８は、ポリシデータベース１０４を検索して、ステップＳ３６０２で検索されたポリシと近似度が高いポリシを調べる。その後、検索されたポリシと近似度が高いポリシについて、動作頻度に、通知された起動回数を加算して、ポリシ連鎖情報保存部１２６に登録する（ステップＳ３６０９）。以降の処理は、図３１と同様である。
【０１３２】
本実施形態では、近似したポリシの動作の連鎖を防止できる。これにより、より精度を高くポリシの連鎖による異常の拡大の速度を抑えることができ、その結果、管理者等に、異常に対応するための時間を与えることができる。
【０１３３】
図３７は、本発明の第１２実施形態のポリシ処理装置の構成を示している。ポリシ処理装置１００ｋは、ポリシ検索装置１０ｋ、１１ｋ、１２ｋと、異常ポリシ発見装置２０とを備える。ポリシ検索装置１０ｋ、１１ｋ、１２ｋは、図２２に示す第８実施形態のポリシ検索装置１０、１１、１２と同様な構成に加えて、異常情報受理部１１０を有する。また、ポリシ検索装置１０ｋ、１１ｋ、１２ｋのポリシ検索部１０２ｋは、図２８に示す第９実施形態のポリシ検索部１０２ｈと同様な構成を有する。
【０１３４】
図３８は、ポリシ処理装置１００ｋの動作手順を示している。ポリシ検索装置１０ｋ、１１ｋ、１２ｋは、図２３のステップＳ２３０１〜Ｓ２３０４と同様な動作により、受理したイベントを起動条件とするポリシを検索し、検索されたポリシを、異常ポリシ発見装置２０に送信する（ステップＳ３８０１〜Ｓ３８０４）。その後、異常ポリシ発見装置２０は、ステップＳ２３０６〜Ｓ２３１０と同様な動作により、検索されたポリシに近似するポリシの起動回数を取得し、起動回数がしきい値を超えているか否かを調べる（ステップＳ３８０５〜Ｓ３７０９）。
【０１３５】
起動回数がしきい値を超えると判断されたときには、異常通知部１０８は、管理者等に異常を通知する。また、ポリシ検索装置１０ｋ、１１ｋ、１２ｋの異常情報受理部１１０に、ポリシ動作が異常と判断されたポリシを通知し、異常情報受理部１１０は、通知されたポリシを、停止ポリシ保存部１２３（図２８）に保存する（ステップＳ３８１０）。ポリシ処理装置１０ｋ、１１ｋ、１２ｋは、図２９のステップＳ２９０９及びＳ２９１０と同様な動作により、ステップＳ３８０２で検索されたポリシが停止ポリシ保存部１２３に登録されているか否かを調べ、登録されていない場合には、検索されたポリシの動作を実行する（ステップＳ３８１１、Ｓ３８１２）。
【０１３６】
本実施形態では、ポリシ検索装置１０ｋ、１１ｋ、１２ｋは、異常情報受理部１１０により、異常ポリシ発見装置２０でポリシ動作が異常であった旨を受理し、動作が異常であると判断されたポリシを、停止ポリシ保存部１２３に保存する。このようにすることで、ポリシ処理装置を、ポリシの検索を行った実行する部分と、ポリシ動作の異常を検出する部分とに分離する場合でも、ポリシの連鎖が引き起こす異常を抑制することができる。
【０１３７】
なお、上記各実施形態で説明したポリシ処理装置１００の動作は、適宜組み合わせることができる。例えば、第２実施形態と、第４実施形態と組み合わせて、ポリシに対応した履歴取得期間の起動回数が、ポリシに対応したしきい値を超えるか否かにより、ポリシ動作が異常であるか否かを判断してもよい。また、第１２実施形態において、第８実施形態と、第１０実施形態、又は、第１１実施形態とを組み合わせ、ポリシ動作が異常と判断されたポリシをポリシ連鎖情報保存部１２６に登録して、ポリシ動作の連鎖を防止してもよい。
【０１３８】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のポリシ処理装置及び方法は、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【産業上の利用可能性】
【０１３９】
本発明は、例えば、ネットワークで接続された機器の自律的な管理を行うといった用途に適用できる。また、サービスの負荷に応じて資源を自動的に割り当てるといった用途に適用できる。
【図面の簡単な説明】
【０１４０】
【図１】本発明の第１実施形態のポリシ処理装置の構成を示すブロック図。
【図２】ポリシ処理装置１００の動作手順を示すフローチャート。
【図３】ポリシデータベース１０４に記憶されたポリシの具体例を示す図。
【図４】ポリシ動作ログ保存部１０７に保存される動作履歴の具体例を示す図。
【図５】本発明の第２実施形態のポリシ処理装置の構成を示すブロック図。
【図６】履歴取得期間保存部１６２１に保存された履歴取得期間の具体例を示す図。
【図７】ポリシ処理装置１００ａの動作手順を示すフローチャート。
【図８】本発明の第３実施形態のポリシ処理装置の構成を示すブロック図。
【図９】ポリシ処理装置１００ｂの動作手順を示すフローチャート。
【図１０】本発明の第４実施形態のポリシ処理装置の構成を示すブロック図。
【図１１】ポリシ回数しきい値保存部１５２１に記憶されたポリシ回数しきい値の具体例を示す図。
【図１２】ポリシ処理装置１００ｃの動作手順を示すフローチャート。
【図１３】本発明の第５実施形態のポリシ処理装置の構成を示すブロック図。
【図１４】ポリシ処理装置１００ｄの動作手順を示すフローチャート。
【図１５】本発明の第６実施形態のポリシ処理装置の構成を示すブロック図。
【図１６】ポリシ処理装置１００ｅの動作手順を示すフローチャート。
【図１７】ポリシデータベース１０４が記憶するポリシの具体例を示す図。
【図１８】ポリシ動作ログ保存部１０７が記憶するポリシの動作ログの具体例を示す図。
【図１９】本発明の第７実施形態のポリシ処理装置の構成を示すブロック図。
【図２０】ポリシ処理装置１００ｆの動作手順を示すフローチャート。
【図２１】ポリシデータベース１０４ｆに格納されたポリシの具体例を示す図。
【図２２】本発明の第８実施形態のポリシ処理装置の構成を示すブロック図。
【図２３】ポリシ処理装置１００ｇの動作手順を示すフローチャート。
【図２４】図２２のポリシ検索装置１０のポリシデータベース１０４に格納されたポリシの具体例を示す図。
【図２５】図２２のポリシ検索装置１１のポリシデータベース１０４に格納されたポリシの具体例を示す図。
【図２６】図２２のポリシ検索装置１２のポリシデータベース１０４に格納されたポリシの具体例を示す図。
【図２７】ポリシ動作ログ保存部１０７が記憶するポリシ動作ログの具体例を示す図。
【図２８】本発明の第９実施形態のポリシ処理装置の構成を示すブロック図。
【図２９】ポリシ処理装置１００ｈの動作手順を示すフローチャート。
【図３０】本発明の第１０実施形態のポリシ処理装置の構成を示すブロック図。
【図３１】ポリシ処理装置１００ｉの動作手順を示すフローチャート。
【図３２】ポリシデータベース１０４が記憶するポリシの具体例を示す図。
【図３３】ポリシ連鎖情報保存部１２６が記憶する情報の具体例を示す図。
【図３４】動作待ちテーブル１２７が記憶する情報の具体例を示す図。
【図３５】本発明の第１１実施形態のポリシ処理装置の構成を示すブロック図。
【図３６】ポリシ処理装置１００ｊの動作手順を示すフローチャート。
【図３７】本発明の第１２実施形態のポリシ処理装置の構成を示すブロック図。
【図３８】ポリシ処理装置１００ｋの動作手順を示すフローチャート。
【図３９】ＣＰＵと専用処理部とを連携させた従来の一般的な計算機システムの構成を示すブロック図。
【符号の説明】
【０１４１】
１０、１１、１２：ポリシ検索装置
２０：異常ポリシ発見装置
１０１：イベント受理部
１０２：ポリシ検索部
１０３：動作実行部
１０４：ポリシデータベース
１０５：ポリシ実行パターン解析部
１０６：ポリシ動作ログ検索部
１０７：ポリシ動作ログ保存部
１０８：異常通知部
１２１：ポリシ検索実行部
１２２：ポリシ実行制御部
１２３：停止ポリシ保存部
１２４：ポリシ実行間隔制御部
１２５：ポリシ実行間隔計算部
１２６：ポリシ連鎖情報保存部
１２７：動作待ちテーブル
１２８：ポリシ近似度評価部
１４１：ポリシフラグテーブル
１５１：ポリシ実行回数評価部
１５２：ポリシ回数しきい値決定部
１５３：ポリシフラグ評価部
１６１：ポリシ比較部
１６２：ポリシ取得期間決定部
１６３：ポリシ近似度評価部
１５２１：ポリシ回数しきい値保存部
１５２２：ポリシ回数しきい値取得部
１５２３：ポリシ回数しきい値計算部
１６２１：履歴取得期間保存部
１６２２：履歴取得期間取得部
１６２３：履歴取得間計算部
【図１】
0004482816.tif 000002
【図２】
0004482816.tif 000003
【図３】
0004482816.tif 000004
【図４】
0004482816.tif 000005
【図５】
0004482816.tif 000006
【図６】
0004482816.tif 000007
【図７】
0004482816.tif 000008
【図８】
0004482816.tif 000009
【図９】
0004482816.tif 000010
【図１０】
0004482816.tif 000011
【図１１】
0004482816.tif 000012
【図１２】
0004482816.tif 000013
【図１３】
0004482816.tif 000014
【図１４】
0004482816.tif 000015
【図１５】
0004482816.tif 000016
【図１６】
0004482816.tif 000017
【図１７】
0004482816.tif 000018
【図１８】
0004482816.tif 000019
【図１９】
0004482816.tif 000020
【図２０】
0004482816.tif 000021
【図２１】
0004482816.tif 000022
【図２２】
0004482816.tif 000023
【図２３】
0004482816.tif 000024
【図２４】
0004482816.tif 000025
【図２５】
0004482816.tif 000026
【図２６】
0004482816.tif 000027
【図２７】
0004482816.tif 000028
【図２８】
0004482816.tif 000029
【図２９】
0004482816.tif 000030
【図３０】
0004482816.tif 000031
【図３１】
0004482816.tif 000032
【図３２】
0004482816.tif 000033
【図３３】
0004482816.tif 000034
【図３４】
0004482816.tif 000035
【図３５】
0004482816.tif 000036
【図３６】
0004482816.tif 000037
【図３７】
0004482816.tif 000038
【図３８】
0004482816.tif 000039
【図３９】
0004482816.tif 000040