(57)【特許請求の範囲】
【請求項１】
複数のストライプにおいて、複数のコンピューティング又はネットワーキングシステムを含むエンタープライズシステム内の第１のイベントの発生を識別する情報を受信するステップであって、前記第１のイベントは前記コンピューティング又はネットワーキングシステム内のコンピューティング又はネットワーキング装置に発生し、あるいは関与し、前記ストライプは、複数の通信リンクにより相互接続された複数のコンピューティングノードを含むファブリック監視システムの異なるインスタンスを含む、ステップと、
前記複数のストライプを用いて、前記情報をリアルタイムで処理して前記第１のイベントの発生を識別し、前記第１のイベントを複数の状況に割り当てるステップであって、前記第１のイベントは前記ストライプによりアクセス可能なルールを用いて識別され、前記第１のイベントは前記ストライプによりアクセス可能な１つ以上の処理モデルを用いて前記状況に割り当てられる、ステップと、
前記ストライプ間で第２のイベントを送信して前記第１のイベント又は前記状況のクロスストライプ相関をサポートするステップであり、前記第２のイベントは合成イベントを含む、ステップと、
前記状況を識別する情報を出力するステップと、
を含む方法。
【請求項２】
前記ファブリック監視システムの各インスタンスにおいて動作するコンピューティングノードの数はスケーラブルであり、
前記複数のストライプにおけるストライプの数はスケーラブルである、
請求項１に記載の方法。
【請求項３】
前記第１のイベント及び前記状況に関する情報と前記状況が如何にして解決されるかに関する情報とを含む前記第１のイベント及び前記状況に関連付けられた情報を記憶して、前記第１のイベント及び前記状況の監査証跡を提供するステップ
をさらに含む請求項１に記載の方法。
【請求項４】
前記ルールを１つ以上のポリシーから取得するステップであって、前記１つ以上のポリシーの少なくとも一部が監視定義言語を用いて少なくとも１のユーザにより定義される、ステップ
をさらに含む請求項１に記載の方法。
【請求項５】
前記１つ以上の処理モデルは、前記第１のイベントをカテゴリ化し、かつ前記状況を識別する方法を定義し、前記１つ以上の処理モデルは、
少なくとも１のユーザにより定義される少なくとも１つのユーザ定義されたモデル、及び、
前記第１のイベントの発生を識別する前記情報を用いて動作する１つ以上の解析機能を定義する少なくとも１つの解析モデル
を含む、請求項１に記載の方法。
【請求項６】
前記状況の識別に応答して、前記合成イベントを作成するステップであって、前記複数のストライプの各ストライプは独立して動作する、ステップ、
をさらに含む請求項１に記載の方法。
【請求項７】
前記複数のストライプのうち異なるストライプが、
前記コンピューティング又はネットワーキングシステム内の異なる資産、
前記コンピューティング又はネットワーキングシステムが展開される異なる場所、
前記コンピューティング又はネットワーキングシステム内のハードウェア、ソフトウェア、又はファームウェアの異なる展開、
前記コンピューティング又はネットワーキングシステムを用いた異なるビジネスユニット、及び
前記コンピューティング又はネットワーキングシステムを用いて取引されるビジネスの異なるタイプ
のうち少なくとも１つに関連付けられた異なる第１のイベントを処理する、請求項１に記載の方法。
【請求項８】
前記第１のイベントは、
前記コンピューティング又はネットワーキングシステム内の前記コンピューティング又はネットワーキング装置の現在の状態、
前記コンピューティング又はネットワーキングシステム内の前記コンピューティング又はネットワーキング装置の前記現在の状態における変化、
前記コンピューティング又はネットワーキングシステム内の前記コンピューティング又はネットワーキング装置における異常、及び、
前記コンピューティング又はネットワーキングシステム内における定義された条件の発生
のうち少なくとも１つを含む、請求項１に記載の方法。
【請求項９】
前記状況を識別する前記情報を出力するステップは、
前記状況のうち少なくとも１つを識別する情報を、前記少なくとも１つの状況を自動的に解決する自動化されたエージェントに提供するステップ
を含む、請求項１に記載の方法。
【請求項１０】
前記状況を識別する前記情報を出力するステップは、
前記状況のうち少なくとも１つを識別する情報を、要員のための少なくとも１つの通知を生成するチケッティングエージェントに提供するステップであって、前記少なくとも１つの通知は前記少なくとも１つの状況を識別する、ステップ
を含む、請求項１に記載の方法。
【請求項１１】
システムであって、
複数のストライプ、を含み、前記ストライプは、複数のコンピューティングノードと該コンピューティングノードを結合する複数の通信リンクとを含むファブリック監視システムの異なるインスタンスを含み、前記コンピューティングノードの少なくとも１つが１つ以上のプロセッサを含み、前記ストライプは、
複数のコンピューティング又はネットワーキングシステムを含むエンタープライズシステム内の第１のイベントの発生を識別する情報を受信することであって、前記第１のイベントは前記コンピューティング又はネットワーキングシステム内のコンピューティング又はネットワーキング装置に発生し、あるいは関与し、
前記情報をリアルタイムで処理して前記第１のイベントの発生を識別し、前記第１のイベントを複数の状況に割り当てることであって、前記第１のイベントは前記ストライプによりアクセス可能なルールを用いて識別され、前記第１のイベントは前記ストライプによりアクセス可能な１つ以上の処理モデルを用いて前記状況に割り当てられ、
互いに対して第２のイベントを生成及び送信して前記第１のイベント又は前記状況のクロスストライプ相関をサポートすることであって、前記第２のイベントは合成イベントを含み、
前記状況を識別する情報を出力する
ように構成される、システム。
【請求項１２】
前記ファブリック監視システムの各インスタンスにおいて動作するコンピューティングノードの数はスケーラブルであり、
前記複数のストライプにおけるストライプの数はスケーラブルである、
請求項１１に記載のシステム。
【請求項１３】
前記ストライプは、前記第１のイベント及び前記状況に関する情報と前記状況が如何にして解決されるかに関する情報とを含む前記第１のイベント及び前記状況に関連付けられた情報を記憶して、前記第１のイベント及び前記状況の監査証跡を提供するようにさらに構成される、請求項１１に記載のシステム。
【請求項１４】
前記ルールを含む１つ以上のポリシーを記憶するように構成されたリポジトリ、をさらに含み、前記１つ以上のポリシーの少なくとも一部が監視定義言語を用いて少なくとも１のユーザにより定義される、請求項１１に記載のシステム。
【請求項１５】
前記１つ以上の処理モデルは、前記第１のイベントをカテゴリ化し、かつ前記状況を識別する方法を定義し、前記１つ以上の処理モデルは、
少なくとも１のユーザにより定義される少なくとも１つのユーザ定義されたモデル、及び、
前記第１のイベントの発生を識別する前記情報を用いて動作する１つ以上の解析機能を定義する少なくとも１つの解析モデル
を含む、請求項１１に記載のシステム。
【請求項１６】
前記ストライプは、
前記状況の識別に応答して、前記合成イベントを作成するようにさらに構成され、前記複数のストライプの各ストライプは独立して動作する、
請求項１１に記載のシステム。
【請求項１７】
各ストライプは、該ストライプによる状況の識別に対して前記合成イベントのうち少なくともいくつかを生成するように構成される、請求項１１に記載のシステム。
【請求項１８】
前記複数のストライプのうち異なるストライプが、
前記コンピューティング又はネットワーキングシステム内の異なる資産、
前記コンピューティング又はネットワーキングシステムが展開される異なる場所、
前記コンピューティング又はネットワーキングシステム内のハードウェア、ソフトウェア、又はファームウェアの異なる展開、
前記コンピューティング又はネットワーキングシステムを用いた異なるビジネスユニット、及び
前記コンピューティング又はネットワーキングシステムを用いて取引されるビジネスの異なるタイプ
のうち少なくとも１つに関連付けられた異なる第１のイベントを処理するように構成される、請求項１１に記載のシステム。
【請求項１９】
前記第１のイベントは、
前記コンピューティング又はネットワーキングシステム内の前記コンピューティング又はネットワーキング装置の現在の状態、
前記コンピューティング又はネットワーキングシステム内の前記コンピューティング又はネットワーキング装置の前記現在の状態における変化、
前記コンピューティング又はネットワーキングシステム内の前記コンピューティング又はネットワーキング装置における異常、及び、
前記コンピューティング又はネットワーキングシステム内における定義された条件の発生
のうち少なくとも１つを含む、請求項１１に記載のシステム。
【請求項２０】
前記ストライプは、前記状況のうち少なくとも１つを識別する情報を、前記少なくとも１つの状況を自動的に解決する自動化されたエージェントに提供することにより、前記状況を識別する前記情報を出力するように構成される、請求項１１に記載のシステム。
【請求項２１】
前記ストライプは、前記状況のうち少なくとも１つを識別する情報を、要員のための少なくとも１つの通知を生成するチケッティングエージェントに提供することにより、前記状況を識別する前記情報を出力するように構成され、前記少なくとも１つの通知は前記少なくとも１つの状況を識別する、請求項１１に記載のシステム。
【請求項２２】
複数の通信リンクにより相互接続された複数のコンピューティングノードを含むファブリック監視システムの異なるインスタンスを含む複数のストライプに、
複数のコンピューティング又はネットワーキングシステムを含むエンタープライズシステム内の第１のイベントの発生を識別する情報を受信することであって、前記第１のイベントは前記コンピューティング又はネットワーキングシステム内のコンピューティング又はネットワーキング装置に発生し、あるいは関与する、ことと、
前記情報をリアルタイムで処理して前記第１のイベントの発生を識別し、前記第１のイベントを複数の状況に割り当てることであって、前記第１のイベントは前記ストライプによりアクセス可能なルールを用いて識別され、前記第１のイベントは前記ストライプによりアクセス可能な１つ以上の処理モデルを用いて前記状況に割り当てられる、ことと、
互いに対して第２のイベントを生成及び送信して前記第１のイベント又は前記状況のクロスストライプ相関をサポートすることであって、前記第２のイベントは合成イベントを含む、ことと、
前記状況を識別する情報を出力することと、
をさせる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンピューティングシステムに一般に関する。より詳細には、本開示は、ファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステム及び方法に関する。
【背景技術】
【０００２】
ビジネス、行政、及び他の組織は、広範囲の地理的エリアにわたり分散された非常に多数のコンピューティング及びネットワーキング装置をしばしば有する。例えば、大きな多国籍企業は、数万のコンピューティング及びネットワーキング装置を各々が有する複数のデータセンターと、少数のコンピューティング又はネットワーキング装置から何千のコンピューティング又はネットワーキング装置に及ぶ世界中の様々なオフィスとを有することがある。各コンピューティング又はネットワーキング装置は、必要に応じて追跡、調査、及び解決される必要がある、あり得る異常又は他のイベントのソースを表す。しかしながら、組織の大きさがそのコンピューティングシステム及びネットワークと共に成長するとき、これらイベントを扱うことは組織のますますより多くの時間及びリソースを消費する可能性がある。
【発明の概要】
【０００３】
本開示は、ファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステム及び方法を提供する。
【０００４】
第１の実施形態において、方法が、ファブリック監視システムにおいて、複数のコンピューティング又はネットワーキングシステムを有するエンタープライズシステム内のイベントの発生を識別する情報を受信するステップを含む。イベントは、コンピューティング又はネットワーキングシステム内のコンピューティング又はネットワーキング装置に発生し、あるいは関与し、イベントは、ファブリック監視システムによりアクセス可能なルールを用いて識別される。上記方法は、ファブリック監視システムを用いて、上記情報をリアルタイムで処理してイベントの発生を識別し、イベントを複数の状況に割り当てるステップをさらに含む。イベントは、ファブリック監視システムによりアクセス可能な１つ以上の処理モデルを用いて状況に割り当てられる。上記方法は、状況を識別する情報を出力するステップをさらに含む。
【０００５】
第２の実施形態において、システムが、複数のコンピューティングノードと該コンピューティングノードを結合する複数の通信リンクとを有するファブリック監視システムを含む。ファブリック監視システムは、複数のコンピューティング又はネットワーキングシステムを有するエンタープライズシステム内のイベントの発生を識別する情報を受信するように構成される。イベントは、コンピューティング又はネットワーキングシステム内のコンピューティング又はネットワーキング装置に発生し、あるいは関与し、イベントは、ファブリック監視システムによりアクセス可能なルールを用いて識別される。ファブリック監視システムは、上記情報をリアルタイムで処理してイベントの発生を識別し、イベントを複数の状況に割り当てるようにさらに構成される。イベントは、ファブリック監視システムによりアクセス可能な１つ以上の処理モデルを用いて状況に割り当てられる。ファブリック監視システムは、状況を識別する情報を出力するようにさらに構成される。
【０００６】
第３の実施形態において、非一時的コンピュータ読取可能媒体がコンピュータ読取可能プログラムコードを含み、上記コンピュータ読取可能プログラムコードは、ファブリック監視システムのコンピューティングノードにより実行されるときにコンピューティングノードに、複数のコンピューティング又はネットワーキングシステムを有するエンタープライズシステム内のイベントの発生を識別する情報を受信することをさせる。イベントは、コンピューティング又はネットワーキングシステム内のコンピューティング又はネットワーキング装置に発生し、あるいは関与し、イベントは、ファブリック監視システムによりアクセス可能なルールを用いて識別される。上記コンピュータ読取可能プログラムコードは、ファブリック監視システムのコンピューティングノードにより実行されるときにコンピューティングノードに、上記情報をリアルタイムで処理してイベントの発生を識別し、イベントを複数の状況に割り当てることをさらにさせる。イベントは、ファブリック監視システムによりアクセス可能な１つ以上の処理モデルを用いて状況に割り当てられる。上記コンピュータ読取可能プログラムコードは、ファブリック監視システムのコンピューティングノードにより実行されるときにコンピューティングノードに、状況を識別する情報を出力することをさらにさせる。
【０００７】
他の技術的特徴が下記の図面、説明、及び請求項から当業者に容易に明らかになるであろう。
【図面の簡単な説明】
【０００８】
本開示及びその特徴のより完全な理解のために、次に、添付図面と併せて下記説明に対して参照が行われる。
【図１】本開示によるファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱う一例示的なシステムを示す。
【図２】本開示によるファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステムに関連付けられた一例示的なコンピューティング装置を示す。
【図３】本開示によるコンピューティングシステム及びネットワークに関与するイベントを扱う一例示的なファブリック監視システム並びに関連した詳細を示す。
【図４】本開示によるコンピューティングシステム及びネットワークに関与するイベントを扱う一例示的なファブリック監視システム並びに関連した詳細を示す。
【図５】本開示によるコンピューティングシステム及びネットワークに関与するイベントを扱う一例示的なファブリック監視システム並びに関連した詳細を示す。
【図６】本開示によるコンピューティングシステム及びネットワークに関与するイベントを扱う一例示的なファブリック監視システム並びに関連した詳細を示す。
【図７】本開示に従うファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステムにおける例示的な処理フローを示す。
【図８】本開示に従うファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステムにおける例示的な処理フローを示す。
【発明を実施するための形態】
【０００９】
下記で論じられる図１乃至図８、及び本特許文献において本発明の原理を説明するのに用いられる様々な実施形態は、単に例示であり、いかなる形でも本発明の範囲を限定するようみなされるべきではない。当業者は、本発明の原理が任意タイプの適切に配置された装置又はシステムにおいて実装できることを理解するであろう。
【００１０】
図１は、本開示によるファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与する（involving）イベントを扱う一例示的なシステム１００を示す。図１に示されるように、システム１００は、１つ以上のコンピューティングシステム又はネットワーク１０２ａ〜１０２ｎを含み、あるいは該１つ以上のコンピューティングシステム又はネットワーク１０２ａ〜１０２ｎに関連付けられる。各コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎは、コンピューティング装置１０４及び／又はネットワーキング装置１０６の集合を表す。各コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎは、任意数の装置１０４及び／又は１０６を含むことができる。上述されたように、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎは、ほんの一握りの装置１０４及び／又は１０６を有するシステム又はネットワークから、最大で数万の装置１０４及び／又は１０６（あるいはさらに多く）を有するシステム又はネットワークに及んでよい。複数のコンピューティングシステム又はネットワーク１０２ａ〜１０２ｎが、単一の共通の地理的エリア内で、又はかなり長い距離で分離されるエリアを含む複数の地理的エリアにわたって使用できる。
【００１１】
コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎの各々における１つ以上の装置が、少なくとも１つのネットワーク１０８を通じて通信することができる。ネットワーク１０８は、１つ以上の場所における任意の適切なネットワーク又はネットワークの組み合わせを表す。ネットワーク１０８には、例えば、１つ以上のローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、又は地域的若しくは世界的なネットワークを含むことができる。コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎと関連ネットワーク１０８との集合は、本特許文献において「エンタープライズシステム（enterprise  system）」と呼ばれ得る。
【００１２】
ファブリック監視システム１１０は、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎ内のコンピューティング装置１０４及びネットワーキング装置１０６のうちさまざまものを用いることによってなどで、エンタープライズシステム内に実装される。ファブリックコンピューティング（統一されたコンピューティング、統一されたファブリック、データセンターファブリック、統一されたデータセンターファブリックとも呼ばれる）は、通信リンク１１４を用いて相互接続されるコンピューティングノード１１２により形成されるコンピューティングファブリックの作成に関与する。通信リンク１１４により定義されるコンピューティングノード１１２及びネットワーク接続性トポロジの正確なレイアウトは、必要又は所望に応じて、ここに図示されるものから変動してよい。ファブリック監視システム１１０は、高帯域幅相互接続（１０ギガビットイーサネット（登録商標）、インフィニバンド（InfiniBand）接続など）によりリンクされた疎結合のストレージ、ネットワーキング、及び並列処理機能を含む合併された高性能コンピューティングシステムをルーチン的に含む。いくつかの実施形態において、相互接続されたノードは、単一の論理ユニットとして実行するように見える。
【００１３】
ファブリック監視システム１１０の基本コンポーネントは、そのノード１１２及びそのリンク１１４である。ノード１１２は、プロセッサ、メモリ、及びペリフェラルデバイスなどのハードウェアコンポーネントを一般に含む。リンク１１４は、ノード１１２間の機能的接続である。ファブリック監視システム１１０は、いくつかの理由で他のアーキテクチャから区別できる。例えば、ファブリック監視システム１１０は、複数の「ストライプ（stripes）」において展開され、クロスストライプ通信及び信号伝達のサポートを提供することができる。このことは、ファブリック監視システム１１０の向上したスケーラビリティ及び回復力（resiliency）を提供する。さらに、ファブリック監視システム１１０は、複数のタイプの処理モデル（ユーザ定義されたモデル及び解析的なモデルなど）をサポートすることができ、このことは、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎに関連付けられたイベントを識別及び分類する複数のメカニズムをサポートする。
【００１４】
下記でより詳細に説明されるように、ファブリック監視システム１１０は、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎにおいて展開されるエンタープライズアプリケーションとコンピューティングシステム又はネットワーク１０２ａ〜１０２ｎの他の態様とを監視、診断、及び維持することにおいて、有利に使用できる。エンタープライズアプリケーションは、１つ以上の場所の複数の装置１０４及び／又は１０６上に展開され、かつイベント関連情報をファブリック監視システム１１０に提供するアプリケーションを表す。従来の監視システムは個々の異常又はシステム故障についてアラートをしばしば提供するが、これら監視システムは典型的に、大きなエンタープライズシステムにわたりシステム及びアプリケーションイベントを正しくカテゴリ化及び処理するための統合されたアプローチを提供するのに失敗している。ファブリック監視システム１１０は、大きなエンタープライズシステムを含む様々な環境において使用されるシステム及びアプリケーションイベントを正しくカテゴリ化及び処理するための統合されたアプローチを提供することができる。
【００１５】
とりわけ、このことは、ファブリック監視システム１１０が組織レベルの診断及び維持を提供することを可能にする。例えば、ファブリック監視システム１１０は、下記に説明されるように、イベントの発生又は発端からその（可能性として自動化された）解決まで、イベントの完全な状況（situation）管理ライフサイクルを提供することに使用できる。ファブリック監視システム１１０は、静的ルールに代わって又は追加で、解析及び機械学習に基づいてイベントの処理をさらに提供することができる。さらに、ファブリック監視システム１１０は、インフラストラクチャ及びアプリケーションメトリクス収集の高度にスケーラブルなプラットフォームを、予測解析に基づく迅速なインシデント解決と共に提供することができる。このことは、ファブリック監視システム１１０が、発生したイベントに単に反応するのでなくイベント処理に関連したより多くの予測機能に使用されることを可能にできる。
【００１６】
ファブリック監視システム１１０により識別及び処理されるイベントは、情報のビットを表し、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎ内の任意の適切なソースから生じる可能性がある。例えば、イベントは、装置、システム、又はネットワーク（又は、ゆえに一部分）の、現在の状態、又は現在の状態における変化を表すことができる。イベントは、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎ内における異常又は定義された条件の発生を識別するのにさらに使用できる。特定タイプのイベントの例には、アプリケーションを実行するコンピュータの現在の中央処理ユニット（ＣＰＵ）利用、アプリケーションを実行するコンピュータ上の障害の識別、又はアプリケーションにより識別される障害のある接続を含むことができる。下記で説明されるように、ファブリック監視システム１１０により使用されるルールは、関心のあるイベントをリアルタイムで識別するのに役立ち、イベントは、次いで、（手動で、又は自動化された仕方で）調査又は解決される状況を識別するのに使用される。
【００１７】
状況は、イベントのストリームから導出され、様々な処理モデルを用いて識別でき、上記処理モデルは、ファブリック監視システム１１０が如何にしてイベントを処理して状況を識別するかを定義する。例えば、処理モデルは、状況が各イベントについて作成されるべきであると示すことができる。別の例として、処理モデルは、単一の資産又は資産のグループに関連した指定された数又はタイプのイベントが定義された時間期間内に発生するとき、状況が作成されるべきであると示すことができる。資産は、ゆえに、何らかのハードウェア、ソフトウェア、ファームウェア、又は組み合わせを一般に表す。資産の例には、特定のハードウェア（スイッチ又はホストコンピュータなど）、特定のアプリケーション、又は他の仮想的／物理的計算プラットフォームを含むことができる。処理モデル及びベースラインポリシーのライブラリが、ファブリック監視システム１１０内で作成及び記憶でき、これらモデル及びポリシーは、インフラストラクチャ又はアプリケーションイベント監視のドメインに直接適用可能であり得る。
【００１８】
各々の識別された状況は、さらなるアクションのためにシステムにわたり変換及び通信できる。例えば、状況は、チケット番号を与えられ、補正アクションのためにシステム維持又は動作インテリジェンスプラットフォームにルーティングされることができ、あるいは、状況は、エンタープライズアプリケーション内の自動化された報告及び補正機能に関するとして識別されてもよい。
【００１９】
こうして、エンタープライズシステム全体が、ファブリック監視システム１１０を用いて、特定イベントレベルにおける報告及び記録と共に監視及び維持できる。カテゴリ化、報告、並びに補正及び／又は予測アクションを含むイベント処理が、静的なルール及びフィルタに代わって又は追加で、解析及び機械学習手法に基づくことができる。そのようなものとして、エンタープライズシステムにわたりファブリック監視システム１１０を利用するイベント監視が、インフラストラクチャ及びアプリケーションメトリクス収集の高度にスケーラブルな統一されたプラットフォームを提示し、予測解析に基づいて迅速なインシデント解決を提供する。
【００２０】
ファブリック監視システム１１０は、イベント枯渇が軽減されることを確保するのに役立つようにさらに動作することができる。イベント枯渇は、障害アプリケーション又は装置に起因して、あるいは意図的なサービス拒否（ＤＯＳ）攻撃、分散ＤＯＳ（ＤＤＯＳ）攻撃、又は他の攻撃に起因してなどで、過剰な数のイベントが生成されるとき、発生することがある。過剰な数のイベントは、従来のシステムに負荷をかけ過ぎて、システムが下流コンポーネントにイベントを提供することを停止させる可能性がある（ゆえに、下流コンポーネントはイベントが「枯渇（starved）」する）。いくつかの実施形態において、ファブリック監視システム１１０は、コンポーネントの抽象化を可能にすることによりイベント枯渇に関する問題点に対処する。
【００２１】
ファブリック監視システム１１０は、イベントルーティング、状況検出、及びイベント強化（enrichment）の間、メッセージング及び持続と、参照データの使用とをさらに提供することができる。例えば、いくつかの実施形態において、各イベントがファブリック監視システム１１０を通して処理されるとき、各イベントの処理の詳細な履歴が持続的記憶装置に記憶できる。イベント履歴は、クエリ又は検索機能を用いることによってなどで、問い合わせ及び検索できる。
【００２２】
さらに、イベントサブスクリプションに関するプロトコル及び機能性が、エンタープライズシステムとエンタープライズシステム内のエンタープライズアプリケーションとにおけるイベント及び状況の先制的（preemptive）認識をファブリック監視システム１１０がサポートすることを可能にし、このことは、下層の低レベルのインフラストラクチャコンポーネントにしばしば依存する。例えば、ファブリック監視システム１１０は、組織のインフラストラクチャの別個の又は異なるエリア内で発生するイベントから導出された状況が作成できるように、イベントのサブスクリプションをサポートすることができる。
【００２３】
いくつかの実施形態において、ユーザは、イベントが如何にしてカテゴリ化及びエスカレーションされ（escalated）るかを指定するのに使用されるポリシー及びルールを構成することができる。イベント管理ポリシーを構成する２つの例示的なメカニズムには、（ｉ）標準化された仕様の、事前定義された選択、及び（ｉｉ）特化された仕様を記述するドメイン固有言語（ＤＳＬ）が含まれる。ＤＳＬは、例えば、イベントが同じ名前又は他の識別子を与えられること、又はグループ化モデルに送信されることを可能にすることができ、このことは、スケジュール又は挙動解析に基づいて選択できる。
【００２４】
ファブリック監視システム１１０は、イベントグループ化及び状況識別のための様々な処理モデルをさらにサポートする。２つの例示的なタイプのモデルには、ユーザ定義されたグループ化モデルと、発見された又は解析的なグループ化モデルとが含まれる。複数の処理モデルが使用又はサポートされてもよく、さらなる処理モデルが必要又は所望に応じて作成されて異なるグループ化パターンを定義してもよい。ユーザ定義されたグループ化モデルは１以上のユーザにより定義され、ユーザ定義されたグループ化モデルの例には、「ワンフォーワン（One  for  One）」、「ＸオーバーＹ（X  over  Y）」、及び「バッテリ故障」を含むことができる。解析モデルが、１つ以上の解析機能をサポートするモデルとして定義され、解析モデルの例には、イベント類似度によるグループ化、又はイベント異常によるグループ化（カテゴリ化されていないイベント、新しい又は見たことのないイベント、イベントボリューム不規則性、予期されたイベントの欠如、登録されていないイベント、及びその他など）を含むことができる。
【００２５】
いくつかの実施形態において、イベントカテゴリ化は、状態を持たなくて（stateless）よく、分散でき、しかしながら、多くのノード１１２が負荷を処理するのに必要とされ、あるいは利用可能である。ファブリック監視システム１１０内のメッセージングシステムが、利用可能な処理ノード１１２にイベントを分散するのに使用できる。メッセージングシステムは、「グループキー」又は他のインジケータを実装又は利用して、同じグループの一部であるいかなるイベントも同じ処理ノード１１２に配信されることを確保することができる。グループは、単一の資産又は資産の集合に関連付けられたイベントをグループ化することによってなど、任意の適切な仕方で定義できる。メッセージングシステム及び特定の持続メカニズムがさらに「プラガブル（pluggable）」であってもよく、このことは、ファブリックシステム内のさらなる機能性の品質保証及び開発のための様々なメカニズムのより低コストの実装を容易にする。モデル評価に必要とされる状態は、処理インスタンス内にキャッシュでき、メッセージングシステムは、ノード１１２又は情報がキャッシュされる場所にイベントを配信することができ、連続性が、オフマシン持続ストアに対する状態の変化のドロップコピー（drop  copy）によってなどで達成できる。
【００２６】
上述されたように、ファブリック監視システム１１０には、ストライピングされた（striped）処理フローのビルトインサポートを含むことができ、このことは、プラットフォームの隔離を可能にし、イベント枯渇に関連したリスクを軽減するのに役立つ可能性がある。ストライピングを用いて、異なるノード１１２又はさらにはファブリック監視システム１１０自体の異なるインスタンスが、異なる資産、異なる地域、又はハードウェア／ソフトウェア／ファームウェアの異なる展開からのイベントなどの、異なるソースからのイベントを処理するのに使用できる。ストライピングをサポートする他のパーティションが、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎを用いて取引されるビジネスユニットにより又はビジネスのタイプによりエンタープライズシステムを分割することによってなどで、さらに使用できる。ストライピングでの１つの挑戦は、あるストライプ内のイベント又は状況をこうしたイベント又は状況を知る必要がある他のストライプに通信する方法に関与する。いくつかの実施形態において、このことは、１つのストライプ内における状況の作成に対して合成イベントを作成することにより行える。これら合成イベントは、次いで、他のストライプに分散されて、イベント又は状況のクロスストライプ相関（cross-stripe  correlations）を可能にすることができる。
【００２７】
実装に依存して、ファブリック監視システム１１０は、システム管理者、ユーザグループ、又はサブスクライバに対する通知を含む、アクションを必要とする状況のインテリジェントな監視及び通知を提供する。さらに、状況は、エンタープライズシステム上の単一のイベント、又はエンタープライズシステム内の異常への深い洞察を提供するように相関された複数のイベントであり得る。さらに、ファブリック監視システム１１０は、大規模エンタープライズ技術環境イベントの透過性及びインテリジェントな管理を届けることにより動作及び規制リスクを低減することができる。ファブリック監視システム１１０は、さらに、ユーザのためのワークフローを配信して、イベントが如何にして（優先順位、グループ、状況、又はユーザ定義されたカテゴリによってなどで）カテゴリ化、報告、及び記録されるかと、後続のアクションが如何にして割り当て及び実行されるかとを指定する。ファブリック監視システム１１０は、イベントグループ化ポリシーが、制御された検査及び促進ライフサイクルに晒されることをさらに可能にし、これにより、生産環境における望まれない変化又は不必要な処理に関連したエクスポージャが低減される。さらに、ファブリック監視システム１１０は、ルールを作成することができるユーザと生産又は使用に対して上記ルールを促進することができるユーザとの分離に起因して、ポリシー及びルールについて、制御されたライフサイクルの強制をサポートすることができる。
【００２８】
ファブリック監視システム１１０に関するさらなる詳細が下記に提供される。ファブリック監視システム１１０は、任意数のノード１１２及び通信リンク１１４を任意の適切な配置で含んでよいことに留意する。ファブリック監視システム１１０は、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎの外部に存在するように図示されているが、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎの１つ以上の中に形成され、あるいは存在してもよい。
【００２９】
図１は、ファブリック監視システム１１０を用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステム１００の一例を示すが、様々な変更が図１に対して行われてよい。例えば、システム１００には、任意数のコンピューティングシステム又はネットワーク（各々が任意数のコンピューティング又はネットワーキング装置を有する）、ネットワーク、及びファブリック監視システムを含むことができる。さらに、コンピュータに関与するシステム及びネットワークは高度に構成可能であり、図１は、本開示をシステム又はネットワークのいずれか特定の構成に限定しない。
【００３０】
図２は、本開示によるファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステムに関連付けられた一例示的なコンピューティング装置２００を示す。具体的に、図２は、図１のファブリック監視システム１１０内のコンピューティングノード１１２の一例示的な実装を示す。
【００３１】
図２に示されるように、コンピューティング装置２００はバスシステム２０２を含み、バスシステム２０２は、少なくとも１つの処理装置２０４と少なくとも１つの記憶装置２０６と少なくとも１つの通信ユニット２０８と少なくとも１つの入力／出力（Ｉ／Ｏ）ユニット２１０とにおける通信をサポートする。処理装置２０４は命令を実行し、該命令はメモリ２１２にロードされ得る。処理装置２０４は、任意の適切な数及びタイプのプロセッサ又は他の装置を任意の適切な配置で含むことができる。例示的なタイプの処理装置２０４には、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、フィールドプログラマブルゲートアレイ、特定用途向け集積回路、及びディスクリート回路が含まれる。
【００３２】
メモリ２１２及び持続的記憶装置２１４は、記憶装置２０６の例であり、記憶装置２０６は、情報（一時的又は永続的方式でのデータ、プログラムコード、及び／又は他の適切な情報など）を記憶し、かつ情報の取り出しを容易にすることができる任意の構造を表す。メモリ２１２は、ランダムアクセスメモリ、又は任意の他の適切な揮発又は不揮発記憶装置を表すことができる。持続的記憶装置２１４には、より長期のデータ記憶をサポートする１つ以上のコンポーネント又は装置、例えば、読取専用メモリ、ハードドライブ、フラッシュメモリ、又は光ディスクなどを含むことができる。
【００３３】
通信ユニット２０８は、他のシステム又は装置との通信をサポートする。例えば、通信ユニット２０８には、１つ以上の通信リンク１１４を通じた他のノード１１２との通信を容易にするネットワークインターフェースカード又は無線送受信器を含むことができる。通信ユニット２０８は、任意の適切な物理的又は無線の通信リンクを通して通信をサポートすることができる。
【００３４】
Ｉ／Ｏユニット２１０は、データの入力及び出力を可能にする。例えば、Ｉ／Ｏユニット２１０は、ローカル外部メモリ、データベース、又はペリフェラルデバイスに対するデータの入力及び出力のための接続を提供することができる。
【００３５】
図２は、ファブリック監視システムを用いてコンピューティングシステム及びネットワークに関与するイベントを扱うシステムに関連付けられたコンピューティング装置２００の一例を示すが、様々な変更が図２対して行われてよい。例えば、コンピューティング装置は高度に構成可能であり、図２は、本開示をコンピューティング装置のいずれか特定の構成に限定しない。
【００３６】
図３乃至図６は、本開示によるコンピューティングシステム及びネットワークに関与するイベントを扱う一例示的なファブリック監視システム１１０並びに関連した詳細を示す。図３に示されるように、ファブリック監視システム１１０は、ホスト３０２と関連して動作しており、ホスト３０２は、図１におけるコンピューティング装置１０４又はネットワーキング装置１０６のうち任意のものを表すことができる。ここで、ホスト３０２には、様々なハードウェアコンポーネント、例えば、１つ以上のプロセッサ３０４、１つ以上のハードディスク３０６、及び１つ以上のメモリ３０８などが含まれる。プロセッサ３０４は（とりわけ）、１つ以上のエンタープライズアプリケーション又は他のアプリケーションを実行するのに使用できる。当然ながら、ホスト装置は幅広い構成で生じることができ、上記構成には、他の又はさらなるハードウェアコンポーネントを含んでよい。１つのホスト３０２が図３に示されているが、ファブリック監視システム１１０は、イベントの任意数のホスト又は他のソースと共に使用できることに留意する。
【００３７】
ホスト３０２は、イベントエージェント３１０及びイベントアプリケーションプログラミングインターフェース（ＡＰＩ）３１２を含む。イベントエージェント３１０は、ホスト３０２により生成されるイベントを収集し、イベントＡＰＩ３１２を介してファブリック監視システム１１０にイベントを提供する。イベントエージェント３１０は、イベントを収集する任意の適切なロジックを含み、イベントＡＰＩ３１２は、イベントエージェント３１０とインターフェースする任意の適切なインターフェースを含む。イベントエージェント３１０は、例えば、プロセッサ３０４により実行される１つ以上のアプリケーションを表すことができる。
【００３８】
ファブリック監視システム１１０は、監視プラットフォーム３１４を含み、監視プラットフォーム３１４は、ホスト３０２及び他のイベントソースからイベントを収集するように動作する。とりわけ、検出されたイベントは、期待されたとおり稼働していないか又はユーザ定義された若しくは他の監視ルールを満足している、コンピューティング又はネットワーキング環境の態様を識別することができる。この例において、監視プラットフォーム３１４は、イベントサーバ３１２及びテレメトリモジュール３１６を含む。イベントサーバ３１４は、ホスト３０２内のイベントエージェント３１０から、及び他のホスト又はイベントソース内の他のイベントエージェントからイベントを収集する。テレメトリモジュール３１６は、検出されたイベント又は他の情報を解析して、トラブルシューティング、キャパシティプランニング、又は他の機能のためのメトリクスを提供する。テレメトリモジュール３１６からの情報は、例えば、イベント枯渇の予防に少なくとも部分的に貢献することができる。イベントサーバ３１４は、イベントエージェントからイベントを収集する任意の適切なロジックを含む。いくつかの実施形態において、イベントエージェント３１０及びイベントサーバ３１４は、情報技術（ＩＴ）監視ツール、例えば、ナギオスエンタープライズ（NAGIOS  ENTERPRISES）から入手できるものなどを表すことができる。テレメトリモジュール３１６は、入ってくるイベントに関連付けられた１つ以上のメトリクスを識別する任意の適切なロジックを含む。
【００３９】
ファブリック監視システム１１０は、コアプラットフォーム３２０をさらに含み、コアプラットフォーム３２０は、監視プラットフォーム３１４により取得されるイベントを解析して、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎの１つ以上において起こっている、起こった、あるいは起こり得る状況を識別する。この例において、コアプラットフォーム３２０は、相関機能３２２をサポートし、相関機能３２２は、関連し、ゆえに１つ以上の状況の一部を形成し得るイベントを識別するのに使用できる。コアプラットフォーム３２０は、集約機能３２４をさらにサポートし、集約機能３２４は、さらなる処理のために関連イベントをグループ化するのに使用できる。コアプラットフォーム３２０は、強化機能３２６をさらにサポートし、強化機能３２６は、イベント又はイベントのグループに関するさらなる情報を提供するのに使用できる。強化機能３２６により提供される情報は、いくつかの例において、集約機能３２４が使用して関連イベントをグループ化することができる。コアプラットフォーム３２０は、抑制機能３２８をさらにサポートし、抑制機能３２８は、特定のイベントを抑制するのに使用でき、したがって、こうしたイベントは、状況を作成するのに使用されない（例えば、関心のないことを知られているイベントについてなど）。さらに、コアプラットフォーム３２０は、１つ以上の自律サービス３３０をサポートし、自律サービス３３０は、変化する条件に応答して自動的に発生するサービスを表すことができる。例えば、自律サービス３３０は、検出された状況に応答してファブリック監視システム１１０又はコンピューティングシステム若しくはネットワーク１０２ａ〜１０２ｎを修正する自己修復の、自己構成の、自己最適化の、又は自己保護の機能をサポートすることができる。
【００４０】
図示されていないが、ファブリック監視システム１１０又はコアプラットフォーム３２０は、他の機能をサポートすることができる。例えば、１つ以上の解析機能が、イベントを解析するのに使用されて、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎ内におけるアプリケーションの調子（health）及びその依存関係を推定することができる。別の例として、１つ以上の報告機能が、イベント、エージェントの調子、及びシステムにより収集されたデータの過去の（historical）ビューを提供するのに使用できる。この例において、報告又は他の情報が、様々な宛先３３２ａ〜３３２ｃに提供できる。この例において、宛先には、アラート又は他の情報をユーザに提示するように構成された装置を表すアラートコンソール３３２ａ、コンピューティングシステム又はネットワークにおける装置の依存関係を表現するグラフィカル表示を表す依存関係グラフ３３２ｂ、検出されたイベント又は状況の数の指標を提示するパルスインジケータ３３２ｃが含まれる。当然ながら、ファブリック監視システム１１０からの情報は、任意の他の又はさらなる宛先に提示され、あるいは任意の他の適切な仕方で使用されてよい。
【００４１】
この例において、ポリシーマネージャ３３４は、監視プラットフォーム３１４及びコアプラットフォーム３２０により使用される監視ルールをユーザが自己管理することを可能にする。例として、これらルールは、関心のあるイベントを識別し、関連したイベントをグループ化し、イベントを抑制し、イベントに関連した状況を識別するのに使用できる。ポリシーマネージャ３３４を用いて定義されるルールは、リポジトリ３３６、例えば、データベース又は他の記憶及び取り出し装置若しくはシステムなどに記憶できる。
【００４２】
ファブリック監視システム１１０は、さらに、少なくとも１つの参照データサービス３３８からデータを取り出すことができる。参照データサービス３３８は、ファブリック監視システム１１０により使用される任意の適切な参照データを提供するのに使用できる。例えば、参照データサービス３３８は、イベント分類及びグループ化を並びに状況識別を支援する情報を取得するのに使用できる。各データサービス３３８は、情報を記憶し、かつ情報の取り出しを容易にする任意の適切な構造を含む。
【００４３】
ファブリック監視システム１１０のさらなる詳細が図４に示される。図４に示されるように、ユーザ（例えば、アプリケーション技術的オーナなど）は、ポリシーマネージャ３３４によりサポートされるセルフサービスポータルを用いることによってなどで、１つ以上のポリシーを構成することができる。ポリシーは、リポジトリ３３６に記憶できる。ポリシーは、監視プラットフォーム３１４に対して利用可能にされ、監視プラットフォーム３１４は、ポリシーを使用して（とりわけ）ホスト３０２及び他のイベントソースからイベントを取得する。複数のホストが、エンタープライズシステムにわたり展開される１つ以上の共通エンタープライズアプリケーションを実行している可能性がある。
【００４４】
この例において、監視プラットフォーム３１４は、構成分散機能４０２をサポートし、構成分散機能４０２は、受信したポリシーからのルール及び閾情報をホスト及び他のイベントソース内の分散されたイベントエージェントに提供するのに使用される。監視プラットフォーム３１４は、状態管理機能４０４をさらにサポートし、状態管理機能４０４は、分散されたイベントエージェントとコアプラットフォーム３２０との間に位置し、かつ状態遷移を追跡して該状態遷移に基づくイベントをコアプラットフォーム３２０に送信する前処理コンポーネントである。監視プラットフォーム３１４は、抑制機能４０６をさらにサポートし、抑制機能４０６は、特定のイベントを抑制するのに使用でき、したがって、該イベントは、状況を作成するのに使用されない。さらに、監視プラットフォーム３１４は、「トラップ送信（send  trap）」機能をサポートし、上記機能は、アプリケーション又は他のソースからコアプラットフォーム３２０に直接的にイベントを送信するのに使用されるエージェントなしＡＰＩを表現することができる。
【００４５】
監視プラットフォーム３１４は、イベント基準及び監視情報、例えば、ベースライン監視ポリシー及びアプリケーション監視ポリシーなどをイベントエージェント３１０に送信し、イベントエージェント３１０からイベントを受信する。受信イベントは、イベント基準及び監視情報を用いてイベントエージェント３１０により識別される。監視プラットフォーム３１４は、さらに、外部監視モジュール及び機能４１０並びにエンタープライズスキャン機能４１２と通信し、外部監視モジュール及び機能４１０並びにエンタープライズスキャン機能４１２からイベントを受信することができ得る。外部監視モジュール及び機能４１０は、イベント基準及び監視情報を監視プラットフォーム３１４から受信し、その情報を使用してイベントを識別することができ、一方、エンタープライズスキャン機能４１２は、こうした情報なく動作することができる。ここに見られるように、監視プラットフォーム３１４は、入力として様々なソースからイベントを受信することができる。イベントエージェント３１０、外部監視モジュール及び機能４１０、及びエンタープライズスキャン機能４１２は、エンタープライズシステムにわたり分散できるため、監視プラットフォーム３１４は、複数の場所において発生するイベントを受信し、システムを通じてイベントを報告して実際のエンタープライズ性能に対する可視性を提供することができる。
【００４６】
ひとたびイベントが監視プラットフォーム３１４において受信されると、イベント（又は、少なくとも抑制されていないイベント）がコアプラットフォーム３２０に転送され、コアプラットフォーム３２０において、イベントは、ポリシーからロードされたルールに従って評価される。例えば、ルールを使用して、イベントを分類し、いずれのタイプの処理モデルがコアプラットフォーム３２０に到着するイベントのストリームを監視するのに使用されることになるかを決定することができる。ゆえに、少なくとも１つの処理モデルが選択され、使用されて、状況がいつ作成されるべきかを決定する。イベントは、分類の後、抑制されているとしてマーク付けでき、イベントを評価するモデルは、抑制指標を無視して抑制されたイベントを処理するか、あるいは抑制指標を使用して抑制されたイベントを無視することができる。相関及び集約機能３２２及び３２４は、イベント分類の間、ルールと、ルールが指定するモデルとによって駆動できる。
【００４７】
１つ以上のチケッティング（ticketing）作成機能４１４が、ここで、コアプラットフォーム３２０内で使用される。識別された状況が、ポリシーからロードされたルールに基づいてチケッティング作成機能４１４に分散でき、上記ポリシーからロードされたルールは、いずれのチケッティング作成機能４１４がいずれの状況に適当かを示す。ひとたびイベントがコアプラットフォーム３２０内で処理されると、イベント又は状況は、記録、分析、補正／予防アクション、又は他の機能のために、端末、プロセッサ、又はユーザなどの任意数のさらなる宛先４１６に対するエスカレーションに利用可能にされる。
【００４８】
いくつかの実施形態において、コアプラットフォーム３２０は、関連したイベントの、サービスインパクト状況へのクラスタ化を提供する。こうしたクラスタ化は、いくつかの例において、解析的に同様のイベントをクラスタ化又はグループ化すること、重複イベントを除外すること、及び解析的に一意のイベントを識別することにより、監視ノイズにおいて６５％又はそれ以上の低減を可能にする。
【００４９】
状況は、イベントと同様、さらに処理されて、複数の状況モデル、例えば、発見された及び／又はユーザ定義されたモデルなどを作成することができる。ファブリック監視システム１１０のチケッティング及びイベント／状況記録機能に起因して、すべてのイベント及び状況の透過的かつ十分な監査証跡が提供できる。さらに、イベント及び状況の記録、カテゴリ化、及び監査が、トレンド、外れ値、偽の状況、並びにイベント及び状況に関連付けられた他のデータを解析及び識別する能力を提供する。
【００５０】
図５は、コアプラットフォーム３２０の特定の実施形態において如何にしてイベントが処理できるかのさらなる詳細を示す。図５に示されるように、様々なイベントソース５０２が、ファブリック監視システム１１０にイベントを提供する。イベントソース５０２には、イベントエージェント３１０の使用を通してなどでイベントをファブリック監視システム１１０に提供することができるアプリケーション、ホストサーバ、及びユーザ装置が含まれる。イベントは、イベントバス５０４を通して報告され、イベントバス５０４は、イベントを受信するように構成されたキュー又は他の構造を表すことができる。イベントバス５０４は、例えば、監視プラットフォーム３１４又はコアプラットフォーム３２０において使用できる。
【００５１】
イベント処理システム５０４が、イベント登録モジュール５０８、モデル評価モジュール５１０、及び状況強化モジュール５１２を含む。イベント登録モジュール５０８は、入ってくるイベントを識別し、イベントに一意識別子を割り当て、入ってくるイベントに関連した他の動作を実行することができる。モデル評価モジュール５１０は、イベントを処理して、イベントに関連付けられた様々な状況を識別する。状況強化モジュール５１２は、識別された状況を処理し、識別された状況に関するさらなる情報を提供する。
【００５２】
モジュール５０８〜５１２は、イベントポリシーストア５１４、イベント／状況ストア５１６、及びキープロセスインジケータ（ＫＰＩ）ストア５１８から、データ及び情報を引き出す。監査証跡及び追跡モジュール５２０、並びにイベント／状況ビューア５２２又は他のユーザインターフェースが、さらに提供される。イベントポリシーストア５１４は、例えばポリシーがリポジトリ３３６から受信されるときなどに様々なユーザ定義された又は他のポリシーが記憶される記憶装置を表す。イベント／状況ストア５１６は、受信されたイベント及び識別された状況に関する情報を記憶する。ＫＰＩストア５１８は、ファブリック監視システム１１０により捕捉される測定値と測定値が如何にして使用されるかとに関する情報を提供する。監査証跡及び追跡モジュール５２０は、イベント及び状況に関する情報を追跡し、上記情報を、イベント及び状況自体に関する情報と状況が如何にして解決されるかとを含めて記憶する。イベント／状況ビューア５２２は、ファブリック監視システム１１０とインターフェースし、かつファブリック監視システム１１０により取得される結果を見るためのユーザインターフェースを提供する。
【００５３】
イベント処理システム５０４は、状況を定義するグループ化及びカテゴリ化されたイベントを状況バス５２４へ提供し、状況バス５２４は、状況を出力するように構成されたキュー又は他の構造を表すことができる。状況は、ここで、宛先５２６に対して、例えば、ユーザ確認のためにコンソール、装置、及びメッセージングサービスに、並びに自動化された処理のためにサーバ及びプロセッサになど、出力される。
【００５４】
ここで示される複合イベント処理をサポートするための、システム１１０におけるファブリックベース監視アーキテクチャの使用は、前のエンタープライズ監視能力で見られるようなエンタープライズシステム障害アラートから遠ざかる（transitions  away  from）。代わって、ファブリック監視システム１１０は、エンタープライズシステムにわたりイベント／状況認識を可能にする。ここで示される例示的な実施形態において、イベント分類は、監視定義言語（例えばＤＳＬなど）の使用と隔離のためのドメインへのイベントのストリームの分離又は他のカテゴリ化とを通しての、イベント処理のセルフサービス定義を含む。ファブリック監視システム１１０内の処理モジュールは、イベントを処理して状況を作成する方法と、個々のイベントを扱う方法とを定義する。モデルは、エンタープライズシステムにわたり予期されたイベントを最も良くカテゴリ化するように任意の仕方で定義できる。例えば、モデルは、イベントの頻度、イベントのタイプ、イベントの場所若しくはローカルインパクト、又はイベントのソース（例えば、エンタープライズシステムに対する外部からの影響、例えば、ハッキング、登録されていない使用、承認されていない使用、又は同じユーザによる複数の使用など）によって、イベントを処理して状況を作成することができる。解析モデルは、同じ根本原因、同じ地理的場所、又は同じ日付／時間発生を有する状況にイベントをクラスタ化するのにさらに使用できる。
【００５５】
例示的な実施形態において、ファブリック監視システム１１０により、従属した資産について、プラガブルな参照データソースに基づいて、合成イベントを表現する信号を生成することができる。例えば、ホストがダウンすることに関連付けられたイベントは、アプリケーション展開についての合成イベントの生成に至る可能性がある。さらに、例示的な実施形態において、ファブリック監視システム１１０は処理の十分な透過性を提供し、イベントが如何にして及び何故グループ化又は処理されて一又は複数の状況を作成するのかを示す。
【００５６】
ファブリック監視システム１１０の使用は、十分回復力があり、ファブリック監視システム１１０は、複数の次元においてスケーラブルであり得る。例えば、ファブリック監視システム１１０において使用されるコンピューティングノード１１２の数は、負荷に基づいて調整でき、ファブリック監視システム１１０のインスタンスの数（ストライプの数）もまた負荷に基づいて調整できる。いくつかの例において、ファブリック監視システム１１０は、１分あたり最大１千イベント又はそれ以上を扱うことができる。具体的な一例として、ファブリック監視システム１１０は（平均で）、特定の設備について１日あたり約２８０万イベントを受信し、約１７０万イベントを処理し（残りは抑制される）、約１３０，０００の状況を識別することができる。
【００５７】
いくつかの実施形態において、ファブリック監視システム１１０は、任意のＪＡＶＡ（登録商標）メッセージサービス（JAVA  MESSAGE  SERVICE）（ＪＭＳ）準拠メッセージングの使用を通してなどで、プラガブルなメッセージングアーキテクチャをサポートすることができる。ファブリック監視システム１１０は、１つ以上の参照データソースを介してイベント及びサービス強化をさらにサポートすることができ、埋め込まれたイベント相関は、発見された及びモデル化された解析方法を介して行うことができる。ファブリック監視システム１１０は、外部自動化フレームワークに容易にプラガブルであり、イベント抑制及び提出ＡＰＩをサポートし、自己定義されたＤＳＬを介してイベントポリシー定義をサポートすることができる。ファブリック監視システム１１０は、カスタム状況モデルを構築する能力、イベント及び状況を追跡する能力を提供し、エージェントにとらわれない（agent-agnostic）フレームワークを提供することができる。
【００５８】
監視定義言語の一例示的な使用が図６に示される。ドメイン固有言語が、ユーザがイベントとイベントを処理する方法とを自己記述することを可能にする。この情報は、ポリシーマネージャ３３４に提供され、ポリシーとしてリポジトリ３３６に記憶されることができる。図６に示されるように、ユーザは複数のイベントファイル６０２を定義することができ、上記イベントファイル６０２の各々がイベントの１つ以上のタイプを定義する。ユーザはさらに、複数のイベントファイル６０２を組み合わせて単一の処理モデルファイル６０４を生成することができ、処理モデルファイル６０４は、状況の発生を識別するのに使用できる。このタイプの機能性が任意数のユーザにより使用されて、関心のあるイベントを定義し、上記イベントが如何にして状況にグループ化されるかを定義することができる。
【００５９】
監視定義言語の使用は、要員（personnel）のチームが、ファブリック監視システム１１０により実行される監視をより容易に管理することを可能にする。監視定義言語の使用はさらに、イベントが如何にして処理されているかとファブリック監視システム１１０のカバレッジ及び使用とに関する向上した透過性を提供する。さらに、監視定義言語の使用は、ルールについて変更を公開すること及び変更をリリースすることに関する制御を提供することができる。
【００６０】
いくつかの実施形態において、監視定義言語は、イベントの定義と、上記イベントの監視が如何にして発生するかと、監視の結果として状況が如何にして識別されるかとを含むパッケージを定義するのに使用できる。下記は、監視定義言語を用いて定義できるパッケージの１つの例を表す。
【００６１】
【表１】
0006767387.tif 000002
ファブリック監視システム１１０内の様々な機能が、様々な恩恵を得ることを可能にする。例えば、ファブリック監視システム１１０をインシデント管理及び自動化プラットフォームと統合し、ポリシーを監視するシステム開発ライフサイクル（ＳＤＬＣ）サポート及び制御を提供することが可能である。さらに、ファブリック監視システム１１０を使用して、ビジネスユニットにわたる生産及び動作状況への可視性を提供し、複数のストライプによりイベントストリームを隔離することが可能である。ストライプは、ファブリック監視システム１１０の別個のインスタンスにより処理される地域又はビジネスユニットに関連付けられたイベントのセットとして定義できる。ストライプは、別個のサービスインスタンスを有するメッセージング、持続、及び処理の、その独自のインスタンスを有することができる。１つのストライプの動作は、他のストライプから独立であり得、クロスストライプ相関のためのストライプ間の通信は、合成イベントを通して発生することができる。
【００６２】
上記で説明されたプラットフォーム、機能、及びモジュールの各々は、任意の適切なハードウェア、又はハードウェアとソフトウェア／ファームウェア命令との組み合わせを用いて実装できることに留意する。特定の実施形態において、プラットフォーム、機能、及びモジュールの各々には、１つ以上の処理装置により実行されるソフトウェア命令が含まれる。複数の処理装置が、プラットフォーム、機能、及びモジュールの複数のインスタンスを実行することができ、処理装置は、ファブリックコンピューティングシステムの任意数のノードにわたり分散できる。
【００６３】
図３乃至図６は、コンピューティングシステム及びネットワークに関与するイベントを扱うファブリック監視システム１１０並びに関連した詳細の１つの例を示すが、様々な変更が図３乃至図６に対して行われてよい。例えば、図３乃至図６に示される機能的分割は単に例示である。図３乃至図６における様々なコンポーネントが組み合わせられ、さらに細分割され、再配置され、あるいは省略されてもよく、さらなるコンポーネントが特定の必要に従って追加されてもよい。
【００６４】
図７及び図８は、本開示によるファブリック監視システムを用いたコンピューティングシステム及びネットワークに関与するイベントを扱うシステムにおける例示的な処理フロー並びに関連した詳細を示す。具体的に、図７は、イベントを扱って状況を識別する一例示的な処理フロー７００を示し、図８は、識別された状況を扱う一例示的な処理フロー８００を示す。図７及び図８は、図３乃至図６に示されるような実装を有する図１のファブリック監視システム１１０に関して説明されるが、処理フロー７００及び８００は、任意の適切なファブリック監視システムを用いて、任意の適切なシステムにおいて使用できることに留意する。
【００６５】
図７に示されるように、ステップ７０２において、イベントがエンタープライズシステム内で発生し、ファブリック監視システムに提供される。このことには、例えば、イベントエージェント３１０がホスト３０２又は他のイベントソース５０２内のイベントを識別することと、イベントを監視プラットフォーム３１４又はイベントバス５０４に提供することとを含むことができる。
【００６６】
ステップ７０４において、イベントは登録される。このことには、例えば、監視プラットフォーム３１４又はイベント処理システム５０４のイベント登録モジュール５０８が入ってくるイベントを識別することと、イベントを用いて様々なアクションを実行することとを含むことができる。イベント登録は、ここで、様々なデータを用いて発生する。例えば、イベント登録は、１つ以上のファブリック監視ポリシーから取得されるルール、例えば、イベントを関心のあるドメインにマッチさせるため及び個々のイベントを特定のイベントタイプ（事前定義されたタイプ又は導出されたタイプなど）にマッチさせるためのセルフサービスルールなどに基づくことができる。参照データが、ルールクエリ又は他のイベントカテゴリ化をさらに提供して、イベント登録を支援することができる。イベント登録の間、イベントは、ポリシー内に指定されるパターン及び値に対してマッチできる。イベントがルールを用いてマッチされた後、イベントは、該イベントがポリシーシステムからロードされた何らかの抑制基準にマッチするかを確認するようチェックされることができる。イベントがマッチする場合、イベントは、抑制間隔内であるとして注釈をつけられることができ、したがって、１つ以上の処理モデルがそのことを考慮に入れることができる。イベント登録の間、イベントは、資産名、イベント名、処理モデルタイプ、及び（事前割り当てされていない場合に）イベント一意識別子（ＵＩＤ）を割り当てられることができる。
【００６７】
イベントは、ステップ７０６においてディスパッチされて、ステップ７０８において評価される。このことには、例えば、コアプラットフォーム３２０又はイベント処理システム５０４のモデル評価モジュール５１０がイベントを評価して何らかの状況がイベントにより示されるかを識別することを含むことができる。コアプラットフォーム３２０又はモデル評価モジュール５１０は、様々な入力を受信して、イベントストリーム、例えば各資産名についての複数の入力などを処理して、状況を作成することができる。コアプラットフォーム３２０又はモデル評価モジュール５１０に対する入力には、ファブリックポリシールール及び他のモデル情報、モデル及び状況状態情報、並びにエンタープライズ参照データを含むことができる。コアプラットフォーム３２０又はモデル評価モジュール５１０は、潜在的に状況を形成するイベントのストリームの中の最新のものとしてイベントを処理する。いくつかの実施形態において、状況の作成は、それ自体で、イベントを定義することができる。
【００６８】
ステップ７１０において、いかなる識別された状況も出力される。このことには、例えば、コアプラットフォーム３２０又はイベント処理システム５０４のモデル評価モジュール５１０が識別された状況と任意の関連した情報とを出力することを含むことができる。
【００６９】
図８に示されるように、ひとたび状況が、イベントのストリームから、適用可能なファブリックポリシーに従って識別されると、状況は出力され、ステップ８０２において状況バス分散サービスに入る。状況は、サービスバス５２４から、該状況に依存して、様々な装置又はシステム、例えば様々なイベント／状況チケッティングシステムなどにディスパッチされることができる。例えば、状況の自動化された解決が可能であり、あるいは許可される場合、該状況は、ステップ８０４において自動化エージェントにディスパッチできる。自動化エージェントは、与えられた状況を自動的に解決するよう何らかの１つ又は複数の機能を実行するアプリケーション又は他のロジックを表すことができる。状況の自動化された解決が可能でなく、あるいは許可されず、特定のチケッティングシステムが識別され、あるいは該状況に関連付けられる場合、該状況は、ステップ８０６においてチケッティング及びインシデントエージェントにディスパッチできる。チケッティング及びインシデントエージェントは、次いで、そのチケッティング及びインシデントシステムの仕様に従ってチケット又は他の通知を生成することができる。チケッティング及びインシデントエージェントは、状況のための参照識別子と状況がクローズされるべきであるとの指標とを返すことができる。
【００７０】
チケッティング及びインシデントエージェントが識別されない場合、状況は、ステップ８０８において軽量（lightweight）チケッティングエージェントに提供できる。軽量チケッティングエージェントは、ステップ８１０における状況記憶をサポートするチケット持続データベースを含み、１つ以上の実行サービスから入力を受信する。軽量チケッティングエージェントは、チケットをアラートに変換し、状況の介入を実践する（live  intervention）ブリッジとしての役割を果たし、関連したユーザ又は利害関係者に対する電子メール、メッセージ通知、又は他の通知を生成する。この例において、軽量チケッティングエージェントは、ステップ８１２において１つ以上のメッセージングトピック（アラートなど）をアラートキャッシングサービスに提供することができ、上記アラートキャッシングサービスは、ステップ８１４において１以上のユーザに少なくとも１つのコンソールを介してアラートを通知することができる。コンソールを用いて、ユーザは、各アラートについて実行されるべき様々なアラートアクション、例えば、アラートを割り当てること又はクローズすることなどを識別することができる。アラートアクションは、ステップ８１６において１つ以上の実行サービスに提供され、上記実行サービスは、選択されたアラートアクションを実施するためのステップを行うことができる。例えば、実行サービスは、ステップ８１８において軽量チケッティングエージェントにより、及び／又はステップ８２０において別のファブリックコンピューティングコアにより実施されるべき、「イベント処理ファブリック」（ＥＰＦ）アクションを発行することができる。
【００７１】
図７及び図８は、ファブリック監視システムを用いたコンピューティングシステム及びネットワークに関与するイベントを扱うシステムにおける処理フロー７００及び８００並びに関連した詳細の例を示すが、様々な変更が図７及び図８に対して行われてよい。例えば、各図における様々なステップが、重なり、並列に発生し、異なる順序で発生し、あるいは任意の回数発生してもよい。さらに、ここで示される処理フローは、イベントが如何にして識別され、状況にコンバートされるかと、状況が如何にして特定のファブリック監視システム内で扱われるかとに依存して、変動してよい。
【００７２】
上記で説明された、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎを監視、診断、及び維持するファブリック監視システム１１０の使用は、コンピュータ及びネットワーク管理の分野における技術的問題に対する技術的解決策を提供する。上述されたように、ファブリック監視システム１１０により扱われるイベントは、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎ内における装置、システム、又はネットワークの現在の状態又は現在の状態の変化と、異常又は定義された条件の発生とに関連することができる。大きいエンタープライズシステムについて、イベントの数は大量で、時に１分あたり数千に達する可能性がある。このことは、要員がイベントを手動で精査及び解決し、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎ内のより深刻なセキュリティ違反又は他の問題を示し得る関連したイベントを識別することを、非常に困難又は不可能にする。
【００７３】
ファブリック監視システム１１０は、イベントの自動化された識別、並びにイベントの自動化された分類及び関連イベントからの状況の識別をサポートする。このことは、イベントを管理し、解決されるべき状況を識別し、可能性としてさらには該状況を自動的に解決することをかなりより容易にする。とりわけ、このことは、コンピューティングシステム又はネットワーク１０２ａ〜１０２ｎがより円滑に機能するように保ち、起こる問題点を解決するのに役立つ可能性がある。さらに、上述されたように、このことは、カスタマイズ可能な仕方で、例えば、イベントと、イベントの監視が如何にして発生するかと、状況を識別するのにイベントが如何にして用いられるかとを定義することによってなどで行える。このことは、ファブリック監視システム１１０の使用における高い柔軟性を提供する。他の技術的特徴がさらに上記で提供されている。
【００７４】
いくつかの実施形態において、本特許文献に説明される様々な機能が、コンピュータ読取可能プログラムコードから形成され、かつコンピュータ読取可能媒体において具現化されるコンピュータプログラムにより実装され、あるいはサポートされる。フレーズ「コンピュータ読取可能プログラムコード」には、ソースコード、オブジェクトコード、及び実行可能コードを含む任意タイプのコンピュータコードが含まれる。フレーズ「コンピュータ読取可能媒体」には、コンピュータによりアクセスできる任意タイプの媒体、例えば、読取専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ハードディスクドライブ、コンパクトディスク（ＣＤ）、デジタルビデオディスク（ＤＶＤ）、又は任意の他タイプのメモリなどが含まれる。「非一時的」コンピュータ読取可能媒体は、一時的な電気又は他の信号を運ぶ有線、無線、光学、又は他の通信リンクを除外する。非一時的コンピュータ読取可能媒体には、データが永続的に記憶できる媒体、及び、データが記憶でき、後に上書きできる媒体、例えば、書換可能光ディスク又は消去可能メモリ装置などが含まれる。
【００７５】
本特許文献の全体を通して用いられる特定の語及びフレーズの定義を明記することは有利であり得る。用語「アプリケーション」及び「プログラム」は、適切なコンピュータコード（ソースコード、オブジェクトコード、又は実行可能コードを含む）における実装のために適合された１つ以上のコンピュータプログラム、ソフトウェアコンポーネント、命令セット、プロシージャ、ファンクション、オブジェクト、クラス、インスタンス、関連データ、又はこれらの一部分を参照する。用語「通信する」及びその派生語は、直接的通信及び間接的通信の双方を包含する。用語「含める」及び「含む」並びにその派生語は、限定なく含むことを意味する。用語「又は」は包括的であり、及び／又はを意味する。フレーズ「に関連付けられる」及びその派生語は、含む、の中に含まれる、と相互接続する、包含する、の中に包含される、〜に又は〜と接続する、〜に又は〜と結合する、と通信可能である、と協働する、インターリーブする、併置する、に近接する、〜に又は〜と結び付けられる、有する、の属性を有する、〜に対する又は〜との関係を有する、及び同様のものを意味し得る。フレーズ「の少なくとも１つ」は、アイテムのリストと共に用いられるとき、リスト化されたアイテムのうち１つ以上からなる異なる組み合わせが使用され得ることと、リスト内のアイテムが１つだけ必要とされ得ることとを意味する。例えば、「Ａ、Ｂ、及びＣ：のうち少なくとも１つ」は、下記組み合わせのうちいずれかを含む：Ａ、Ｂ、Ｃ、Ａ及びＢ、Ａ及びＣ、Ｂ及びＣ、並びに、Ａ及びＢ及びＣ。
【００７６】
本特許文献における説明は、いずれか特定の要素、ステップ、又は機能が請求項範囲に含まれるべき必須の又は重大な要素であることを暗示するとして読まれるべきでない。さらに、正確な語「ミーンズフォー」又は「ステップフォー」が特定の請求項内で明示的に使用され、機能を識別する分詞句が後に続かない限り、請求項のいずれも、別記の請求項又は請求項要素のいずれかに関して米国特許法第１１２条（ｆ）（35  U.S.C.§112(f)）を行使することは意図されない。請求項内における、（これらに限られないが）「メカニズム」、「モジュール」、「デバイス」、「ユニット」、「コンポーネント」、「要素」、「メンバ」、「装置」、「マシン」、「システム」、「プロセッサ」、「処理装置」、又は「コントローラ」などの用語の使用は、当業者に知られる構造を、請求項自体の特徴によりさらに修正又は強化されたものとして参照するよう理解及び意図され、米国特許法第１１２条（ｆ）を行使することは意図されない。
【００７７】
本開示は、特定の実施形態及び一般に関連付けられた方法を説明したが、これら実施形態及び方法の改変及び並べ替えが当業者に明らかになるであろう。したがって、例示的な実施形態の上記説明は、本開示を定義又は制約しない。他の変更、代替、及び改変が、下記請求項により定義されるものとして、本開示の主旨及び範囲から逸脱することなくさらに可能である。
【図１】
0006767387.tif 000003
【図２】
0006767387.tif 000004
【図３】
0006767387.tif 000005
【図４】
0006767387.tif 000006
【図５】
0006767387.tif 000007
【図６】
0006767387.tif 000008
【図７】
0006767387.tif 000009
【図８】
0006767387.tif 000010