【手続補正書】
【提出日】平成25年3月12日(2013.3.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータ装置上の１つまたは複数のプロセッサが、分散アプリケーションの複数のコンポーネントを識別するステップと、
前記プロセッサが、前記複数のコンポーネントの特定のコンポーネントに関連する特定のテクノロジーを識別するステップと、
前記プロセッサが、前記識別した特定のテクノロジーに基づいて、テクノロジー固有のインターセプターを前記特定のコンポーネントに取り付け、前記取り付けられたテクノロジー固有のインターセプターを使用して、前記特定のコンポーネントによって送信または受信されたメッセージを傍受するステップと、
特定の傍受したメッセージを検出したことに応答して、
前記プロセッサが、前記特定の傍受したメッセージに基づいて、少なくとも１つの潜在的なワークアイテムを生成するステップと、
前記プロセッサが、前記分散アプリケーションのパフォーマンスに対する前記少なくとも１つの潜在的なワークアイテムによる予測される影響に基づいて、前記少なくとも１つの潜在的なワークアイテムの実行をスケジューリングするかどうかを決定するステップと）
を含むことを特徴とする監視方法。
【請求項２】
前記少なくとも１つの潜在的なワークアイテムによる予測される影響が、受け入れ可能なパフォーマンスへの影響のしきい値未満である場合、前記少なくとも１つの潜在的なワークアイテムの実行がスケジューリングされ、前記少なくとも１つの潜在的なワークアイテムによる予測される影響が、前記受け入れ可能なパフォーマンスへの影響のしきい値を超えている場合、前記少なくとも１つの潜在的なワークアイテムの実行はスケジューリングされないことを特徴とする請求項１に記載の方法。
【請求項３】
前記少なくとも１つの潜在的なワークアイテムによる予測された影響は、前記分散アプリケーションのプロセッサ使用率、前記分散アプリケーションのメッセージ待機時間、前記分散アプリケーションの実行キューの長さ、またはそれらの任意の組み合わせに対する影響を示すことを特徴とする請求項１に記載の方法。
【請求項４】
ワークアイテムの有効期間内にスケジューリングされていない場合、前記少なくとも１つの潜在的なワークアイテムは期限が切れることを特徴とする請求項１に記載の方法。
【請求項５】
前記プロセッサが、前記分散アプリケーションで前記少なくとも１つの潜在的なワークアイテムを実行するステップをさらに含み、前記少なくとも１つの潜在的なワークアイテムは、前記分散アプリケーションに関連する検出した依存情報を格納する命令、前記分散アプリケーションに関連する監視されるアクティビティ情報を格納する命令、前記分散アプリケーションに関連するパフォーマンスカウンター情報を報告する命令、またはそれらの任意の組み合わせを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記プロセッサが、前記傍受したメッセージに基づいて、前記特定のコンポーネントで特定の関数の呼び出しを追跡するために、操作呼び出しモニターを割り当てるステップをさらに含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記特定の関数は、ソース操作およびターゲット操作を保持し、前記少なくとも１つの潜在的なワークアイテムは、前記ソース操作と前記ターゲット操作との間の依存関係を示し、前記少なくとも１つの潜在的なワークアイテムを実行するステップは、前記依存関係を依存関係キャッシュに格納するステップを含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記依存関係が以前に格納されていないと決定するステップに応じて、前記プロセッサが、前記依存関係キャッシュから保存場所に記憶域サービスを介して前記依存関係を転送するステップをさらに含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記プロセッサが、前記特定のコンポーネントで特定の実行パスのアクティビティを追跡するためにアクティビティモニターを割り当てるステップをさらに含み、前記少なくとも１つの潜在的なワークアイテムは、前記特定の実行パスに関連するアクティビティ情報を含み、前記少なくとも１つの潜在的なワークアイテムを実行するステップは、前記アクティビティ情報をアクティビティキューに格納するステップを含むことを特徴とする請求項５に記載の方法。
【請求項１０】
前記プロセッサが、前記傍受したメッセージに基づいて、特定のイベントの発生を追跡するためにカウンターモニターを割り当てるステップをさらに含み、前記少なくとも１つの潜在的なワークアイテムは、前記特定のイベントの少なくとも１つの発生を示し、前記少なくとも１つの潜在的なワークアイテムを実行するステップは、前記特定のイベントの前記少なくとも１つの発生を前記カウンターモニターの１つまたは複数のクライアントに報告するステップを含むことを特徴とする請求項５に記載の方法。
【請求項１１】
前記プロセッサが、前記分散アプリケーションに関連する少なくとも１つのメトリックを計算するステップであって、前記少なくとも１つのメトリックは、発生した例外の数、報告されるエラーの数、またはそれらの任意の組み合わせを含む、計算するステップと、
前記プロセッサが、前記分散アプリケーションの障害状態を検出するステップと、
前記プロセッサが、前記少なくとも１つのメトリックに基づいて、前記障害状態の潜在的な原因として前記特定のコンポーネントを識別するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１２】
第１のテクノロジーに関連する第１のテクノロジー固有のインターセプターおよび前記第１のテクノロジーとは異なる第２のテクノロジーに関連する第２のテクノロジー固有のインターセプターを含む複数のテクノロジー固有のインターセプターと、テクノロジーに依存しない、コンピュータ装置上のインターセプターマネージャーとを備える監視システムであって、
前記第１のテクノロジー固有のインターセプターは、
第１の分散アプリケーションコンポーネントによって送信および受信されるメッセージを傍受して、前記第１のテクノロジーに関連する前記第１の分散アプリケーションコンポーネントの動作を追跡し、
前記傍受したメッセージを検出したことに応答して、前記第１の分散アプリケーションコンポーネントの前記追跡された動作に基づいてワークアイテムを生成し、
前記第１の分散アプリケーションコンポーネントの前記追跡された動作に基づいて、前記ワークアイテムを前記テクノロジーに依存しないインターセプターマネージャーに送信するように構成され、
前記第２のテクノロジー固有のインターセプターは、
第２の分散アプリケーションコンポーネントによって送信および受信されたメッセージを傍受して、前記第２のテクノロジーに関連する前記第２の分散アプリケーションコンポーネントの動作を追跡し、
前記第２の分散アプリケーションコンポーネントの前記追跡された動作に基づいてワークアイテムを生成し、
前記第２の分散アプリケーションコンポーネントの前記追跡された動作に基づいて、前記ワークアイテムを前記テクノロジーに依存しないインターセプターマネージャーに送信するように構成され、
前記テクノロジーに依存しないインターセプターマネージャーは、前記第１のテクノロジー固有のインターセプターに関連する第１のワークアイテムマネージャーおよび前記第２のテクノロジー固有のインターセプターに関連する第２のワークアイテムマネージャーといった、複数のワークアイテムマネージャーを含み、
各ワークアイテムマネージャーは、特定のテクノロジー固有のインターセプターに関連し、
前記特定のテクノロジー固有のインターセプターからワークアイテムを受信し、
前記受信したワークアイテムをワークアイテムキューに入れ、
前記特定のテクノロジー固有のインターセプターによって追跡された分散アプリケーションコンポーネントのパフォーマンスに対する特定のワークアイテムによる影響を、受け入れ可能なパフォーマンスへの影響のしきい値と比較し、
前記影響が前記受け入れ可能なパフォーマンスへの影響のしきい値未満のときに、前記特定のワークアイテムの実行をスケジューリングし、
前記影響が前記受け入れ可能なパフォーマンスへの影響のしきい値より大きいときに、前記特定のワークアイテムの実行をスケジューリングせずに、前記特定のワークアイテムを破棄するように構成されていること
を特徴とする監視システム。
【請求項１３】
テクノロジー固有のインターセプターはそれぞれ、その関連するワークアイテムマネージャーに空のワークアイテムを要求し、前記空のワークアイテムに情報を格納することによってワークアイテムを生成し、および前記生成されたワークアイテムを前記テクノロジーに依存しないインターセプターマネージャーに送信するようにさらに構成されていることを特徴とする請求項１２に記載の監視システム。
【請求項１４】
前記各ワークアイテムマネージャーは、
同時に実行するワークアイテムの数を制限し、
前記ワークアイテムキューのサイズを制限し、
前記ワークアイテムキューが満杯のときに、受信したワークアイテムを拒否し、
スレッドプールのフォアグラウンドのスレッドまたは前記スレッドプールのバックグラウンドのスレッドにおいて、特定のワークアイテムの実行をスケジューリングし、
前記スレッドプールの同時に実行するスレッドの数を制限する
ようにさらに構成されていることを特徴とする請求項１２に記載の監視システム。
【請求項１５】
前記プロセッサが、空のワークアイテムに対する要求を、前記テクノロジー固有のインターセプターから受信するステップと、
前記プロセッサが、前記空のワークアイテムに対する要求を拒否するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１６】
前記プロセッサが、前記テクノロジー固有のインターセプターで依存関係検出をオンまたはオフするステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１７】
前記特定の傍受したメッセージは、前記特定のコンポーネントのソース操作と、前記複数のコンポーネントの第２のコンポーネントのターゲット操作との間の依存関係を示し、前記少なくとも１つの潜在的なワークアイテムは、前記依存関係を記憶するためのワークアイテムを含むことを特徴とする請求項１に記載の方法。
【請求項１８】
前記特定の傍受したメッセージは、分散アプリケーションの実行パスに関連するアクティブ情報を示し、前記少なくとも１つの潜在的なワークアイテムは、前記アクティブ情報を記憶するためのワークアイテムを含むことを特徴とする請求項１に記載の方法。
【請求項１９】
前記特定の傍受したメッセージは、ソフトウェア例外の発生を示し、前記少なくとも１つの潜在的なワークアイテムは、前記ソフトウェア例外の発生を報告するためのワークアイテムを含むことを特徴とする請求項１に記載の方法。