(57)【要約】システム活動に関する派生メトリックを相関付けて、問題を決定し及び解決を推奨することができるシステムを開示する。システムは、生（raw）メトリックからの派生メトリックのヒエラルキーを用いることによって、問題を識別し、関連するメトリックを相関付けし、また、推奨ソリューションを決定することができる。例えば、コンピューティング資源に関して生メトリックを収集することができる。アナライザは、生メトリックと他のアナライザからの出力とを処理して、他のメトリックから派生したメトリックを含むメトリックを集めることができる。問題の症状が発見された場合、派生メトリック（及び他のメトリック）を症状と相関付けて、問題の識別を支援することができる。システムは、相関付けられたメトリックを用いて、識別された問題に関してのソリューションを提案することができる。【選択図】図２
2017526040.tif 000002
【特許請求の範囲】
【請求項１】
データセンタを監視するためのシステムであって、
自らの稼働状態に関する１以上のメトリックを提供するデータセンタ資源のセットと、
メトリックデータの入力を処理するように及びメトリックデータの出力を提供するように構成されたアナライザのヒエラルキーであって、前記アナライザのヒエラルキーのうちの第１のレベルに属する第１のサブセットは前記１以上のメトリックに基づいた第１のメトリックデータを受信するように構成されており、また、前記アナライザのヒエラルキーの別のレベルに属する第２のサブセットは前記アナライザのヒエラルキーのより下位のレベルに属する１以上のアナライザからの第２のメトリックデータ出力を受信するように構成されている、アナライザのヒエラルキーと、
監視システムであって、
アナライザの出力に少なくとも部分的に基づいて問題を検出し、
前記問題に少なくとも部分的に基づいて複数のアナライザ出力を相関付けて、
前記相関付けられたアナライザ出力に少なくとも部分的に基づいて推奨アクションを決定
するように構成された、監視システムと、
前記識別された問題と前記相関付けられたアナライザ出力と前記推奨アクションとを強調する表示情報を送信するように構成されたレンダリングシステム
とを備える、システム。
【請求項２】
前記レンダリングシステムは、前記識別された問題と前記相関付けられたアナライザ出力と前記推奨アクションとを一緒にアラートとしてレンダリングするようにさらに構成されている、請求項１に記載のシステム。
【請求項３】
前記アナライザのヒエラルキーは少なくとも３つのヒエラルキーをさらに備え、より上位のヒエラルキーに属する第１のアナライザが、より下位のヒエラルキーに属する第２のアナライザから少なくとも１つの出力を受け取る、請求項１に記載のシステム。
【請求項４】
前記アナライザは、各アナライザ入力に少なくとも部分的に基づいて前記ヒエラルキーを定義する独立モジュールである、請求項１に記載のシステム。
【請求項５】
コンピューティング資源を監視する方法であって、
コンピューティング資源の稼働状態を表す１以上のメトリックを受信するステップと、
前記１以上のメトリックを処理してメトリックデータのセットについての第１のサブセットを準備するステップと、
前記メトリックデータのセットに属するメトリックデータをヒエラルキカル構造を用いて分析して派生メトリックデータを準備するステップであって、前記派生メトリックデータは前記メトリックデータのセットについての第２のサブセットであり、前記ヒエラルキーにおいては派生メトリックデータの出力が入力として用いられてさらなる派生データが作成される、ステップと、
前記メトリックデータのセットについての第３のサブセットに少なくとも部分的に基づいて問題を検出するステップと、
前記メトリックデータの第４のサブセットを、前記メトリックデータのセットについての第３のサブセットと、相関付けるステップと、
前記メトリックデータのセットについての前記第３のサブセット又は前記メトリックデータのセットについての前記第４のサブセットに少なくとも部分的に基づいて推奨アクションを決定するステップと、
前記推奨アクションと前記メトリックデータのセットについての前記第３のサブセットと前記メトリックデータのセットについての前記第４のサブセットとを備えるアラートを、提供するステップ
とを含む、方法。
【請求項６】
前記メトリックデータの第４のサブセットを前記メトリックデータの第３のサブセットと相関付けるステップは、
メトリックデータの分析を行うアナライザからの出力をスコアリングするステップと、
前記ヒエラルキカル構造のより下位のレベル内にあるアナライザからのスコアを、前記ヒエラルキカル構造のより下位のレベル内にある前記アナライザからの出力を受信する前記ヒエラルキカル構造のより上位のレベル内にあるアナライザからのスコアと、組み合わせるステップと
をさらに含み、
前記問題を検出するステップは、
組み合わされたスコアが閾値を超過すると決定するステップ
をさらに含む、請求項５に記載の方法。
【請求項７】
前記アラートを提供するステップは、前記メトリックデータの第３のサブセット内に無いメトリックデータを強調して前記メトリックデータの第３のサブセットをレンダリングするステップをさらに含む、請求項５に記載の方法。
【請求項８】
前記問題を検出するステップは、複数の問題を検出するステップをさらに含み、
前記アラートを提供するステップは、重大性によってアラートを順序付けるステップと、主として強調すべき最重大アラートを選択するステップと、前記最重大アラートを主たる位置にレンダリングするステップとをさらに含む、請求項５に記載の方法。
【請求項９】
前記検出された問題に少なくとも部分的に基づいて派生メトリックの分析をスケジューリングするステップをさらに含む、請求項５に記載の方法。
【請求項１０】
前記問題を検出するステップは、前記アナライザからの出力をスコアリングするステップと、相関付けられたアナライザのスコアを組み合わせるステップとをさらに含む、請求項５に記載の方法。
【請求項１１】
分散コンピューティング資源を監視するためのシステムであって、
コンピューティング資源と通信してデータセンタ稼働状態に関する１以上のメトリックを検索するように構成されたデータ検索モジュールのセットと、
メトリックデータの入力を処理するように及びメトリックデータの出力を提供するように構成されたアナライザのヒエラルキーであって、前記アナライザのヒエラルキーの第１のサブセットは前記１以上のメトリックに基づいた第１のメトリックデータを受信するように構成されており、また、前記アナライザのヒエラルキーの第２のサブセットは前記アナライザのヒエラルキーのより下位のヒエラルキーに属する１以上のアナライザからの第２のメトリックデータ出力を入力するように構成されている、アナライザのヒエラルキーと、
監視システムであって、
アナライザの出力に少なくとも部分的に基づいて問題を検出し、
前記問題に少なくとも部分的に基づいて複数のアナライザ出力を相関付けて、
前記相関付けられたアナライザ出力に少なくとも部分的に基づいて推奨アクションを決定
するように構成された、監視システムと、
前記識別された問題と前記相関付けられたアナライザ出力と前記推奨アクションとを強調する表示情報を送信するように構成されたレンダリングシステム
とを備える、システム。
【請求項１２】
前記アナライザのヒエラルキーはティアをさらに備え、ティアは、より下位のティアに属する少なくとも１つのアナライザから出力された出力メトリックデータを入力として受け取るように構成された１以上のアナライザを含む、請求項１１に記載のシステム。
【請求項１３】
ブラウザが、前記データ検索モジュールのセットと前記アナライザのヒエラルキーと前記監視システムと前記レンダリングシステムとを備える、請求項１１に記載のシステム。
【請求項１４】
前記アナライザのヒエラルキーは、前記アナライザのヒエラルキーのより下位のティアに属するアナライザからの関数を呼び出す個別的関数を備える、請求項１１に記載のシステム。
【請求項１５】
命令を格納した非一時的コンピュータ可読媒体であって、該命令をプロセッサによって実行するとコンピューティング資源を監視するための方法をコンピュータシステムに行わせるのであり、該方法は、
前記メトリックデータのセットについての第１のサブセットについての第１の分析の出力を、前記メトリックデータのセットについての第２のサブセットについての第２の分析の入力として、用いることによって行われる、メトリックデータのセットについての分析をレイヤリングするステップであって、前記メトリックデータのセットはオリジナルメトリックデータと派生メトリックデータと少なくとも２層の分析レイヤとを含む、レイヤリングするステップと、
前記メトリックデータのセットについての第３のサブセットに少なくとも部分的に基づいて問題を検出するステップと、
前記メトリックデータのセットについての第４のサブセットを、前記メトリックデータのセットについての第３のサブセットと、相関付けるステップと、
前記メトリックデータのセットについての前記第３のサブセット又は前記メトリックデータのセットについての前記第４のサブセットに少なくとも部分的に基づいて推奨アクションを決定するステップと、
前記推奨アクションと前記メトリックデータのセットについての前記第３のサブセットと前記メトリックデータのセットについての前記第４のサブセットとを備えるアラートを、提供するステップ
とを含む方法である、非一時的コンピュータ可読媒体。
【請求項１６】
前記問題を検出するステップは、
前記アナライザをスコアリングするステップと、
前記メトリックデータのセットについての前記第４のサブセットと前記メトリックデータのセットについての前記第３のサブセットとを組み合わせたスコアが、閾値を超過すると決定するステップ
とをさらに含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項１７】
前記メトリックデータのセットについての前記第４のサブセットを前記メトリックデータのセットについての前記第３のサブセットと相関付けるステップは、前記少なくとも２層の分析レイヤのより下位のレベル内にあるアナライザからのスコアを、前記少なくとも２層の分析レイヤのより下位のレベル内にある前記アナライザからの出力を受信する前記少なくとも２層の分析レイヤのより上位のレベル内にあるアナライザからのスコアと、組み合わせるステップをさらに含む、請求項１６に記載の非一時的コンピュータ可読媒体。
【請求項１８】
前記アラートを提供するステップは、前記メトリックデータのセットについての前記第３のサブセットと前記メトリックデータのセットについての前記第４のサブセットとを、一緒に且つ他のメトリックデータとは視覚的に分離して態様で、レンダリングするステップをさらに含む、請求項１６に記載の非一時的コンピュータ可読媒体。
【請求項１９】
前記推奨アクションは、前記メトリックデータのセットについての前記第３のサブセットと前記メトリックデータのセットについての前記第４のサブセットとの組み合わせに少なくとも部分的に基づいている、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項２０】
前記アラートを提供するステップは、
テキストメッセージを送信するステップ、
電子メールを送信するステップ、又は
アラートをダッシュボード上にレンダリングするステップであって、前記メトリックデータのセットについての前記第３のサブセット及び前記メトリックデータのセットについての前記第４のサブセットは、前記メトリックデータのセットについての前記第１のサブセット内に無いメトリックデータよりも近位のより近接した位置にある、レンダリングするステップ
をさらに含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステム及びネットワークについての監視及び分析に関する。
【０００２】
関連出願の相互参照
本願は、２０１４年８月１９日に出願された「システム活動に関する派生メトリックを相関付けるシステム及び方法」と題された米国特許出願第１４／４６３，３１４号の優先権を主張し、該出願の全体が参照によって取り込まれる。
【発明の概要】
【０００３】
本願開示の実施形態による、システム及び方法についての詳細な説明を以下提供する。複数の実施形態が説明されるものの、本願開示はどれか１つの実施形態に限定されるべきものではなく、むしろ、多数の代案、変更、及び等価物を包含するものと解されるべきである。本願にて開示される実施形態について十分な理解をもたらすために多数の具体的詳細事項を明細書中にて説明するが、一部の実施形態は、これらの詳細事項の一部分又は全てを伴わずにして実施されることができる。また、簡潔性担保の観点から、本願開示内容を不必要に不明瞭化せぬように、関連する技術分野において知られる特定の技術的事項は詳解していない。
【０００４】
システム活動に関する派生メトリックを相関付けることを可能とする、手法、装置及び方法を開示する。システムは、生（raw）メトリックからの派生メトリックのヒエラルキーを用いることによって、問題を識別し、関連するメトリックを相関付けし、また、推奨ソリューションを決定することができる。例えば、コンピューティング資源に関して生メトリックを収集することができる。アナライザは、生メトリックと他のアナライザからの出力とを処理して、他のメトリックから派生したメトリックを含むメトリックを集めることができる。問題が発見された場合、派生メトリック（及び他のメトリック）を問題と相関付けることができる。システムは、相関付けられたメトリックを用いて、ソリューションを提案することができる。
【０００５】
例えば、データセンタは、コンピューティング資源の稼働状態に関する統計を追跡するコンピューティング資源を含む。デスクトップコンピュータは、イントラネットウェブサイトにブラウザ内でアクセスし、アナライザと相関付けエンジンとレコメンデーションエンジンとを用いて構築されたダッシュボードがこれに含まれる。初期アナライザ（アナライザのヒエラルキーの下位のアナライザ）は、コンピューティング資源（例えば、データベース、ロギングサーバ、負荷分散装置、ａｐｐサーバ、制御サーバ等）と連携することができ、また、他のアナライザにとって利用可能となるか表示に用いることのできる出力を準備することができる。１つの初期アナライザは、報告システム（reporting system）のメモリ使用量が高いと示すメモリ使用量アナライザである。別の初期アナライザは、報告システムにログインしているユーザを含むことができる。また別の初期アナライザは、ユーザに割り当てられたプロセスを含むことができる。また別の初期アナライザは、プロセスのメモリ使用量を含むことができる。
【０００６】
副次アナライザ（アナライザのヒエラルキーの上位のアナライザ）は、初期アナライザ又は他の副次アナライザからの出力を受け取ることができる。１つの副次アナライザは、プロセスのメモリ使用量とユーザに割り当てられたプロセスとを入力として受け取って、プロセスのメモリ使用量が高いユーザを出力することができる。別の副次アナライザは、プロセスのメモリ使用量が高いユーザと報告システムにログインしているユーザとを入力として受け取ることができる。
【０００７】
報告システムのメモリ使用量が高い故に潜在的な問題が検出されることがある。検出された問題に基づいて、関連するメトリックを高いメモリ使用量と相関付けることができる。相関付けられた情報によると、報告システムにログインしているvpfinanceというユーザがおり、これが１つの報告プロセスをもって殆どのメモリを占有しており、該プロセスはデータベース自体のサイズに近づきつつあるらしい。
【０００８】
１つの例では、相関付けは、アナライザのヒエラルキーの１以上のアナライザによって行われることができる。相関付けを行うアナライザは、相関付けられた情報を出力として提供することができる。相関付けられた情報たる出力は、アナライザのヒエラルキー内の他の１以上のアナライザによって入力として受信されることもできる。
【０００９】
一部の実施形態では、派生メトリックの分析を、検出された問題又は相関付けられた情報に少なくとも部分的に基づいて、スケジューリングすることができる。例えば、一部の派生メトリックが相当な演算コストを伴う場合がある。通常の場合、これらのメトリックは算出されない。
【００１０】
その情報を用いることによって、システムはソリューションに達することができ、該ソリューションは相関付けられた情報を用いてレコメンデーションを提供する。この場合、データベースのサイズに達する報告プロセスは、悪性プロセスであると決定することができる。その際の提案は、プロセスを終了させ、また、ユーザに対して通知を送信するものとすることができ、該通知は仮にユーザがそのような大規模なレポートを実行することを望むならば情報技術（ＩＴ）担当員に連絡することを促す。
【００１１】
そして、システムは、管理者に提示されるダッシュボードのトップにアラートをレンダリングすることができる。アラートは強調された問題メトリックを含むことができ、これには問題メトリックを説明するサポートメトリックが伴うのであり、これらはダッシュボードの残余の部分から分離されたものとして且つ強調されたものとして設けられる。問題に対してのソリューションをも提供することができる。問題とサポートデータとレコメンデーションとを示すことによって、オペレータは、迅速かつ決然とした行動をとることができる。オペレータは重要データを検証し及び素早くソリューションに同意することができ、推奨される帰結に対して自信をもたらす。オペレータは推奨されるソリューションに同意はしないで、相関付けられた情報を用いて代替的ソリューションに関する迅速な決断を行うことができる。また、オペレータは、サポートデータを閲覧して論理的な帰結には賛同しないことができ、代替的には、さらなる調査のためにアラートの下方において得られる他のメトリックを検討することができる。
【００１２】
関連するメトリックは複数の手法で決定されることができる。一部の実施形態では、関連するメトリックは閾値を超過する派生メトリックに基づくことができる。他の実施形態では、閾値を超過するものを関連するメトリックとすることができる。一部の実施形態では、メトリックは問題群にプリグループ化されている。
【００１３】
１つの実施形態では、アナライザスコアリングが用いられる。各アナライザが処理されるに際しては、出力（又は場合によっては中間的内部値）を１以上の閾値と比較することができる。比較に基づいて、各アナライザについてスコアリングを行うことができる。アナライザヒエラルキーの下位に属するアナライザの出力を入力として受け取るアナライザは、受信される入力の源となるアナライザからのスコアを継承することができる（例えば、合計、平均、加重平均、減少履歴加重平均（decreasing historic weighted average）等）。一部の実施形態では、相関付けはヒエラルキカル関係に基づいていることができる。他の実施形態では、相関付けはスコアに基づいていることができる。
【００１４】
一部の実施形態では、動的に評価されるシステムを用いることができる。例えば、アナライザやエンジンは、動的に評価及びレンダリングされるJavaScript（登録商標）スニペットとして作成されることができる。管理者は、他のスニペットの出力を入力として受け取る新たなアナライザ、相関関係及びソリューションを作成及び追加することができる。これによって、アラートされたが満足に管理者に対して説明されていない問題について、さらに検討を行うことができる。例えば、先述の管理者は、あるプロセスが悪性プロセスであるか高負荷なレポートであるかを判別できないかもしれない。この問題を解決するために、管理者は、現在のメモリ使用量が高いジョブを取得してそれらをログに表れるプロセスに関しての使用量履歴と比較するアナライザを、作成することができる。これによって、管理者は該プロセスを、終了させるか、又は、他のユーザに対して速度低下をもたらさずに該プロセスをより良く実行し得るより高コストなサーバへと移管するか、を決定することができる。
【００１５】
大規模エンタープライズシステムにおいては、膨大な量のオペレーショナルデータが生成され、これによって、重要であるが見かけ上軽微又は無関係に思われる傾向又はデータポイントが隠され得る。関連するモニタを一緒に動的にグルーピングすること及び並行する事象の相対的重要性を視覚的に強調することによって、システムは、これらの傾向及び／又はデータポイントを強調することができる。問題を診断する際に管理者は、背後にあるシステムに関してさほど知識又は経験を有していなくてもよい場合がある。複雑なシステムにおいては、具体的な事象が特定された後であっても、それを解決するための推奨アクションが、環境的要因に関する専門的知見及びシステムの他の観点に関する詳細な調査を必要とする場合がある。提示されるシステム及び実施形態においては、事象及びシステム全般に関する多種の要因が進歩的（例えば、派生的）分析に含まれ得ることになり、これによって人間の専門家による助言によらずにして生成されたアラートについてアクションを講じることができる。
【００１６】
例えば、被監視システムは様々な生メトリックのペイロードを定期的に提供する。これらペイロード中の個別のメトリックは全くもって様々な意味論的意味（semantic meaning）を有していることができる。個別のメトリックは、ある時点における値（例えば、現在ＣＰＵ使用量等）、最近の平均値（例えば、直近の提供以後に関して追跡された平均ＣＰＵ値等）、又は大域カウンター（例えば、スタートアップ以来の総計ＣＰＵ使用量等）とすることができる。この多様性がために、何らの分析（例えば、現在の大域カウンターと前回それが記録された際の値との差異の比較）を行うことも要せずに、所与のメトリックに関して最も効率的な任意の方法にて様々なメトリックをソースシステムが提供することができる。分析は後に適用することができ、生の値を記録するだけでよい。
【００１７】
例では、ウェブブラウザは、ユーザが選択した時間枠（既定の時間枠は最近３０分間）に関してのメトリックペイロードを、その時間枠中においてデータを供出したシステム全てから受信することができる。データは、中央記憶システムから読み込まれる。管理者が現在の活動を追跡しており特定の過去の時間枠を追跡していない場合、ブラウザは、直近の更新以降提供された新たなメトリックを定期的に要求する。これらの更新要求はバックグラウンドで生じるのであり、頻繁とされる間隔で（典型的には３０秒毎に）送信される。これらのバックグラウンド要求は、ユーザによって無効化されることができ、また、初期読込タイムが通常のそれより著しく長い（即ちシステムが過負荷となっていると示される）場合には既定で無効とすることができる。
【００１８】
例では、ブラウザは、一連の分析関数を実行して、提供を行う全てのシステムにわたりかつ所与の時間枠の各々の１分間における合計値を識別することができる。典型的には、各分析関数は、各メトリックペイロードに対して何らかの単純な処理を適用して、その分析関数にとって関連性のある生メトリックを識別する（例えば、単一の分析関数は「使用されているメモリサイズ」及び「合計メモリサイズ」の両方を抽出することによって「使用されているメモリ百分率」を識別することができる）。この第１レベル分析は典型的には単純な計算であるが、とても複雑なものとすることもできる。
【００１９】
例では、各分析関数が典型的には視覚的表現を作成するのであり、該視覚的表現は、提供を行うシステムにわたりかつ分析される全体的時間枠内の各タイムスライスに関する蓄積された合計データに関する表現である。例えば、あるアナライザは、「平均の使用メモリ百分率」をバーグラフとして表すことができ、各バーは１分間における提供を行う全てのシステムに関しての平均であり、一連のバーが選択された３０分間に関しての値の変化を表している。多くのアナライザはバーグラフ等の周知な視覚化手法を用いるが、一部のアナライザはより特化した視覚化手法を用いる（例えば、ある期間にわたって実行されていた主要プロセスの個々についての分析に際しては、それらのプロセスをタイムラインとして視覚化するかもしれず、それによってそれらが実行されていた期間を強調し、並びに、どの重要なプロセスが並行してアクティブであったか、若しくは、どの重要なプロセスが他の潜在的に関連し得るメトリックに対応する時刻において開始／停止されたか、を明示することができる。）。
【００２０】
例では、分析関数（例えば、アナライザ等）は、他の関数の結果にアクセスすることができ、また、既に評価された関数の結果を用いて労力の重複を回避することができる。管理者はグラフ上で特定の時刻を強調することができ、また、随意的にはシステムがそれらのマーカを他の全てのグラフで強調するようにさせることができる。これによって管理者は、全てのシステムの全体的状態を選択された期間に関して分析することができる。様々な関数を協調させて先の分析関数（より多くのプリミティブデータを提供する）によって行われた分析を次第に進化させる一方で、これらのより上位レベルの分析関数（ヒエラルキーを構成する）は記述的データを作成している。
【００２１】
一部の実施形態では、各アナライザは自己が識別したアラートの重要性を「スコア」することができる。１つだけの「高スコア」アラートが識別されている場合、アクション事項アラートは、オペレーションセンタの主「スクリーン」上で強度の協調を伴って表示されることができる。支援を要しているシステムに関しての組み合わせ分析グラフは大きく表示されることができ（例えば、スクリーン領域の３０％とすることができる）、また、サポートグラフ（例えば、メモリ、ＧＣ、ＣＰＵ、及びスループット）は組み合わせ分析の隣に配列して表示することができる。これらのサポートグラフはスクリーンでさらに３０％を占めることができる。他の分析結果は、副次的スクリーンで利用可能とすることができる（又は単一のウェブページを閲覧している場合にはスクロールすることによってアクセス可能とすることができる）。
【００２２】
１つの例では、同一の問題に関連する複数の「高スコア」アラートが存在する。単一型アラートに類似した組み合わせ型アラートメッセージを表示することができる。同じ事象に直面している様々なシステムに関しての組み合わせ型高次分析に対して主たる強調を行うことができ、また、サポートグラフは各々の個別的システムに焦点を絞ることができる。これは単一型アラートシナリオと対照的であり、単一型アラートの場合においてはサポートグラフを用いてユーザが様々な症状について詳しくみることができた。
【００２３】
別の例では、異なる種類の問題に関連する複数の「高スコア」アラートが存在する。ディスプレイは、利用可能な領域を、各アラートタイプに関する最上位分析の間で配分することができる。サポート用の分析グラフは依然利用可能であるが、副次的スクリーン上に存在している（又はウェブページ上に表示されている場合にはスクロールすることによってアクセス可能とすることができる）。
【００２４】
１つの実施形態では、このシステムの実装は、ブラウザベースドであり、且つ、JavaScript及びHTMLで記述されている。この実装上の選択によって、ユーザは、高度にカスタマイズされた分析関数を極めて迅速に作成及び変更することができ、並びに、新たなカスタム関数及び分析を漸次的に構築／展開することができ、また、より正式なサーバベースド分析枠組みを持つことを要せずに変更に関するエディットが行われるのに合わせて変更の結果をライブ評価で確認することができる。
【００２５】
もっとも、このブラウザベースド実装だけが可能な実装ではないということに留意されたい。例えば、説明したシステムは、分析をよりサーバベースドなシステムに実行させるものとして実装することができる。この実装上の変更によると、より多くのサーバ資源及び異なる技術的な実装が必要となり得る。一部の実施形態では、このことによって、より多くのデータを処理できることになる（伝統的にはより貧弱な装備を持っているクライアントシステムの帯域的及び資源的制約を回避することができる）。サーバベースドシステムによれば、分析結果を、より安定した集中型システムにホスティングすることができ、並びに、複数のクライアントシステム間で共有することができる。実施形態では、一部のタスクはより低度に分散されたシステムによってより容易に取り扱われることができるのであり、例えば、定常的な分析活動に関するギャランティ又は集中型システムからの電子メール通知の送信等は、かなり資源低集約的なものとなり得る。
【００２６】
１つの例では、１つの分析関数が使用メモリ百分率を追跡することができる。後続のアナライザは、そのデータを受け取って、一定期間にわたってメモリ使用量が継続して多いシステムがある場合にはそれを追跡する。ソースシステムが管理メモリシステムを用いている場合、それらのシステムによって行われるガベージコレクションの量が、実際にメモリ不足が起きているのか、又は、高い値で推移しているメモリ使用量が安定的であるのか、を示す。別のアナライザは、各システムがガベージコレクションに費やしている時間の百分率を追跡する。これらの分析結果の各々が単体でも貴重となり得るが、人間による監視及びこれらの個別的結果に対しての相関付けなくしては、結果のみをもって真にアクションを講じることができるものと看做すことができない場合がある。もっとも、この相関付けに関しては、高等アナライザの追加によって解決することができるのであって、このような高等アナライザは、ガベージコレクションデータとＣＰＵ使用量と有効な仕事に関してのスループットとを用いてメモリ使用量データの上にさらなる構築活動を行うことができる。（アナライザのヒエラルキーにおいてより上位にある）この高等アナライザは、高いメモリ使用量、高いガベージコレクション量、高いＣＰＵ使用量及び低い有効仕事スループットを伴う状況を検出することができるのであり、これらは、管理メモリシステムがメモリ不足に陥っており終始メモリ解放を試みている故に何らの有効な仕事を行えないでいる、という状況の症状である。これらのデータポイントを全て相関付けた後、高等アナライザは、具体的なアクショナブルアラートを準備しており、該アラートは、具体的な問題に対処できる担当員へと送信されることができる（この場合、ネットワークオペレーションセンタ内の誰かである）。この「アラート」は、（重要でないことがあり得る）「高メモリ使用量」に関しての単なる基本的な分析ではなく、むしろ、良くサポートされた具体的なアラートであり、これはアクションを促すものであり、重要度を定義する定量化されたメトリック（例えば、重要度合値、深刻度合値等）を提供するものであり、次の例が挙げられる：「７分間にわたってメモリ不足に陥っているが故にサーバたるProdSrv 137は期待スループットの１２％にて稼働している。」
【００２７】
上述した高等アナライザは、関連する詳細事項と重要性を定義する定量化メトリックを提供することができる。（利用可能なツール及び具体的なアラート条件に応答してとるべきアクションについての具体的な知見を有するシステムエキスパートによってカスタマイズされた）アナライザのヒエラルキーにおいて追加のアナライザをレイヤリングすれば、それによってアナライザは、定量化アラート情報から有用な情報をさらに派生させることができ、並びに、定量化アラートを受信するオペレータに推奨すべき適切な応答策についての拠り所を提供することができる。
【００２８】
上述の例に関して続けて述べれば、メモリ不足に陥っていると明確に識別されるシステムに対してどのようにして追加のメモリを動的に割り当てるか（及びアラートの重要性に基づいてどの程度のメモリを付与すべきかを決める割合）に関して、システムエキスパートらは、定義されたプロセスを有している場合がある。この文脈において、アクショナブルなアラートは次のように述べているかもしれない：「今後２時間にわたっては、サーバたるProdSrv 137のメモリ割当を４０％増量すべきである」。このレベルの分析は、低レベルシステム活動に関しての比較的「生」なグラフ表示から派生しているものであり（重要なイベントを識別及び相関付けるのには人間の専門家を必要としており）、サポートとなるエビデンスを伴ってソリューションへと向かう。
【００２９】
アラートに応答して取るべき具体的アクションを識別することに伴う分析は、イベント自体に直接関係していない多数の要因を含み得る。「メモリ不足」の例に関していえば、このような要因には次のものが含まれる：割当可能なメモリ量、メモリ負荷によって現在影響を受けていないシステムの全体的活動量、他のシステムが近いうちに追加のメモリを必要とする確率に関してのランキング、及び、ホスティングされた資源を拡大するに際しての現行市場レート等。これらのメトリック全ては、アナライザのヒエラルキーに属するより下位のレベルのアナライザによって提供されることができ、潜在的には個別的に関心対象たり得る。
【００３０】
アナライザのヒエラルキー内の様々なアナライザの漸進的な派生は、オペレーションセンタの担当員が効率的に実施できる高度にカスタマイズされたアクション事項に関してのデータドリブンサポートを作出した。推奨アクションは、イベントを識別する相関付けられたメトリックに少なくとも部分的に基づいており、これは環境的要因（例えば、コスト、可用性、並びに、当該状況が隔離されたものとなるか若しくは他の類似のシステムに急速に拡大することとなるかについての確率等）をも考慮したものであることができる。このレベルの詳細な分析は、オペレータに対してのプレッシャーを軽減しつつ、所与の事象を解決するために推奨される選択肢をオペレータに迅速に提供することができる。一部の場合では、同時に複数の他の重要な事象が発生している場合には、複数のレコメンデーションを提示することができる。
【図面の簡単な説明】
【００３１】
【図１】本願明細書にて開示する実施形態による、システム活動に関する派生メトリックを相関付ける処理に関しての決定フローを示すフローチャートである。
【図２】本願明細書にて開示する実施形態による、システム活動に関する派生メトリックを相関付けるシステムを示す概略図である。
【図３】本願明細書にて開示する実施形態による、メトリックの派生処理を示すブロック図である。
【図４】本願明細書にて開示する実施形態による、サポートデータをもって問題を強調している画面コピーを示す図である。
【図５】本願明細書にて開示する実施形態による、サポートデータをもって２つの問題を強調している画面コピーを示す図である。
【図６】本願明細書にて開示する実施形態による、サポートデータを表示するアラートが無い画面コピーを示す図である。
【図７】本願明細書にて開示する実施形態による、生データアナライザの動作を表すコードの断片を示す図である。
【図８】本願明細書にて開示する実施形態による、派生データアナライザの動作を表すコードの断片を示す図である。
【図９】本願明細書にて開示する実施形態による、システム活動に関する派生メトリックを相関付ける方法を示すフローチャートである。
【図１０】本願明細書にて開示する実施形態による、システム活動に関する派生メトリックを相関付ける代替的な方法を示すフローチャートである。
【図１１】本願明細書にて開示する実施形態による、コンピューティングシステムを示す概略図である。
【発明を実施するための形態】
【００３２】
図１は、システム活動に関する派生メトリックを相関付ける処理に関しての決定フローを示すフローチャートである。一部の実施形態では、システムは３つの段階で動作するものとしてみることができ、実施形態に応じてそれぞれの段階は並行して又は逐次的に動作することができる。継続したシステム運用のために取るべき推奨アクションに関しての基礎を提供するための分析において使うために、メトリックを収集することができる。第１の段階では、メトリックの準備が行われ得る。ブロック１０２では、コンピューティング資源がそれらの動作に関する様々なメトリックを追跡できる。ブロック１０４では、これらのメトリックを、コンピューティング資源から直接的に又はメトリックを格納すべきものとしてアサインされたロギング資源から、（例えば、データ検索モジュールを用いる等して）検索することができる。これらのメトリックは、コンピューティング資源又はロギング資源にとって好都合な形式で格納されることができる。ブロック１０６では、変換関数を用いて、メトリックを、格納形式から所望の形式へと変換することができる。
【００３３】
第２の段階ではメトリックの分析が行われ得る。ブロック１０８では、ＣＰＵやメモリの使用量を経時的にグラフ化する等の、コンピューティング資源から受信されたメトリックの分析を行うことができる。ブロック１１０では、他のメトリックの分析からの出力に基づいて派生メトリックを構築することができるのであり、例えば、経時的なＣＰＵ使用量をユーザと組み合わせて厳しい要求をもたらすユーザを示すこと等ができる。例えば、厳しい要求をもたらすユーザに関するグラフを、アプリケーションプロセスリスティングとさらに組み合わせて、厳しい要求をもたらすユーザによってどのアプリケーションが使用されているかを示すことができる。問題の症状を識別するための、文脈、ストーリー及び／又はサポートを提供するために、これらの派生メトリックを活用することができる。ブロック１１０の分析は、先行した分析の出力をさらなる派生分析においての入力として採用することによって、反復されることができる。ブロック１１２では、ブロック１０８及び１１０の分析に基づいて、これらの症状を識別することができる。
【００３４】
第３の段階では、問題を解決するためのレコメンデーションに関しての決定を行うことができる。ブロック１１４では、識別された症状に、メトリック（生メトリック及び派生メトリックの双方を含む）を相関付けることができる（例えば、高いＣＰＵ使用量はユーザによる報告アプリケーションの使用と相関付けられる）。ブロック１１６では、相関付けられたメトリックを用いて問題の根源を特定することができる（例えば、報告アプリケーションが非効率な計算を含んでいる）。ブロック１１８では、システムがレコメンデーションを提供することができる（例えば、識別されたユーザがログオンした場合にはより多くのＣＰＵを有するサーバへと報告アプリケーションを移す）。
【００３５】
図２は、システム活動に関する派生メトリックを相関付けるシステムを示す概略図である。データセンタ２００は、負荷分散装置２０２、アプリケーションサーバ２０４、記憶域サーバ２０６、ロギングシステム２０８、制御システム２１０及び監視システム２１２のセットを含むことができる。負荷分散装置２０２は、ネットワーク（例えば、インターネット２１４）からの着信要求を受信することができ、また、様々な基準（例えば、負荷、クエリタイプ、ＩＰアドレス、ホップ数等）に基づいて要求をアプリケーションサーバ２０４へと向かわせることができる。一部の実施形態では、負荷分散装置２０２がクライアントとの関係で暗号化エンドポイントとして作用するのであり、暗号化オーバーヘッドを伴わずにアプリケーションサーバ２０４が機能できるようにする。
【００３６】
アプリケーションサーバ２０４は、アプリケーションを実行するためのプラットフォームを提供し、応答を提供し、及び、要求を受信することができる。一部の実施形態では、アプリケーションサーバ２０４は、クライアント指向型（即ち、クライアントからの要求を受信しそれに応答するもの）とすることができ、また、内部指向型（即ち、内部システムからの要求を受信しそれに応答するもの）とすることができる。記憶域サーバ２０６は、データベース、ネットワークアタッチドストレージ、ファイルサーバ、キャッシュ、及び／又はデータを保管するための他の領域を含むことができる。アプリケーションサーバ２０４は、情報を格納及び検索するのに記憶域サーバ２０６を用いることができる。
【００３７】
ロギングシステム２０８は、他のコンピューティング資源によって記録されたメトリックに関しての、記憶、整理、及び／又は検索サービスを提供することができる。ロギングシステム２０８を使用することによって、（負荷分散装置２０２、アプリケーションサーバ２０４、及び／又は記憶域サーバ２０６を含む）他のシステムは、システムによって測定されたメトリックに関してのメンテナンス、記憶、及び、クエリ作業を、オフロードすることができる。
【００３８】
制御システム２１０は、コンピューティング資源プールを管理及びメンテナンスすることができる。例えば、制御システム２１０は、期待される負荷及び／又は現実の負荷に基づいて、より多くのコンピューティング資源を提供するか又はコンピューティング資源を退役させることができる。制御システム２１０は、バックアップ、スナップショット、デジタル証明書、パーミッション関連の機能及びそのシステムの所掌範囲内の他の管理機能を管理することもできる。
【００３９】
監視システム２１２は、システムメトリックに関する情報を、管理者に提供することができる。一部の実施形態では、ダッシュボードを管理者に提示する。通常動作時には、ダッシュボードは、メトリックのセットを管理者に対して表示することができる。一部のメトリックは、グラフ形式で表示され得るのであり、色分けされることができ、これによって資源使用量の高・中・低を識別する（若しくは、システム設定によってはより細かい粒度を可能とする多数の色彩を、例えばヒートマップのように、使用する）及び／又は（１以上の閾値に関連した）重要度に関しての高・中・低を識別することができる。メトリックはヒエラルキー内に存在することができる。例えば、より下位のメトリックは、コンピューティング資源からの測定値に基づいていることができる。ヒエラルキーのより上位に属するメトリックは、他のメトリックから派生しているものとすることができ、それら他のメトリックも他のメトリックから派生したものとすることができる。一部のメトリックは、測定されたメトリック値に派生メトリック値をブレンディングしたものとすることができる。アラート作動中においては、１以上の症状（例えば、期待される閾値範囲からメトリックが逸脱している場合）を強調することができ、また、他の相関付けられたメトリックを症状と共に提示することができる。
【００４０】
１つの例では、図１において説明したプロセスは、図２に示したシステムに適用することができる。データセンタ２００は以下を含む５つのシステムを含むことができる：負荷分散装置２０２、アプリケーションサーバ２０４、データベース（記憶域サーバ２０６によって代表される）、ロギングシステム２０８、及び、制御システム２１０。ブロック１０２にあるように、各システムによってメトリックを収集することができる。負荷分散装置２０２及びアプリケーションサーバ２０４は、記録されたメトリックをロギングシステム２０８に託すように構成されることができる。記憶域サーバ２０６及び制御サーバ２１０は、メトリックをローカルに格納することができる。
【００４１】
管理者は、コンピュータ上（例えば、監視システム２１２）のブラウザを用いてあるＵＲＬのウェブページを要求することができる。ブロック１０４にあるように、ブラウザはフェッチング関数を読み込むことができるのであり、該関数は、ロギングシステム２０８、記憶域サーバ２０６、及び、制御システム２１０に対して記録されたメトリックを要求する。ブロック１０６にあるように、変換関数が記録されたメトリックを生メトリックデータに変換することができる。ブロック１０８にあるように、ウェブページと共に設けられたアナライザは、生メトリックデータを処理することができ、また、ダッシュボードウィジェットにおいてレンダリングするためのメトリックデータ出力を提供することができる。ブロック１１０にあるように、ウェブページと共に設けられたアナライザは、他のアナライザからのメトリックデータ出力を処理して派生メトリックデータを作成することもできる。ブロック１１２にあるように、アナライザは閾値（又は他の検出手段）を備えており、これによって期待される値の範囲外にメトリックがあることが指し示され、このことは問題の症状があるということを指し示す。ヒエラルキーのより下位のアナライザから受信されたスコア（例えば、より下位のアナライザの出力の一部）とアナライザにとっての内部的な問題レーティング（例えば、期待される値又は範囲からの距離）とに基づいてアナライザの問題スコア出力を増大させるスコアリングシステムを、アナライザは採用できる。
【００４２】
レコメンデーションエンジンは、検出された症状に基づいて、推奨アクションを決定することができる。ブロック１１４にあるように、症状を記述するメトリックを他のメトリックと相関付けることができる。アナライザは、スコアリングシステム及び／又はアナライザのヒエラルキーを用いて、相関付けられたメトリックを決定することができる。ブロック１１６にあるように、レコメンデーションエンジンは、相関付けられたメトリックと提案されるソリューションに関するデータベースとに基づいて、根源的原因を決定することができる。レコメンデーションエンジンは、相関付けられたメトリックの各々についての距離情報を用いてどの問題（又はソリューション）が最良に適合するかを決定することができる。ブロック１１８にあるように、レコメンデーションエンジンは、選択された問題に基づいて推奨アクションを決定することができる。
【００４３】
レコメンデーションエンジン及びアナライザは、出力がウェブページ上のダッシュボードにレンダリングされるように仕向けることができる。決定された症状、相関付けられたメトリック、及び、決定された問題を解決するために提案されたアクションを強調するアラートを、レコメンデーションエンジンがレンダリングさせることができる。他のメトリックは、強調エリアの外部に表示することができ、管理者に検討させることができる。
【００４４】
図３は、本願明細書にて開示する実施形態による、メトリックの派生処理を示すブロック図である。アナライザはヒエラルキカル構造で編成されることができ、該構造では、より上位のティアのアナライザが、より下位のティアのアナライザの出力を、活用する。示した例では、最下位ティア内の生データアナライザ３０２は、コンピューティング資源からの変換されたデータを分析することができる。第１派生アナライザ３０４は、１以上の生データアナライザ３０２からの出力を受け取って派生メトリックデータを演算することができる。第２派生アナライザ３０６は、第１派生アナライザ３０４からの１以上の入力を、単体で又は１以上の生データアナライザ３０２からのメトリックデータと共に、受け取ることができる。この様式は必要に応じて第Ｎ派生アナライザまでへと反復されることができるのであり（このことは図中では省略符によって示されている）、該アナライザは先行するティアからの１以上の入力を単体で又はより下位のティアの出力と共に受け取る。ヒエラルキカル構造で編成することによって、アナライザ３０２，３０４，３０６，３０８はメトリックデータを組み合わせて重要な情報（傾向、相関関係、関係性等）を発見することができる。
【００４５】
図４は、サポートデータをもって問題を強調している画面コピー４００を示す図である。分析と相関付けとソリューションの決定の後、システムは、ダッシュボードをレンダリングさせることができる。問題が識別された場合、アラート情報を強調する態様でアラート４０２をレンダリングすることができる（例えば、問題を画面の上部３０％にレンダリングする等）。アラート４０２は、症状情報４０６，４０８（グラフ等）及びサポートメトリック情報４１０，４１２，４１４，４１６を含むことができる。アラートメッセージ４０４をレンダリングすることもできる。「今後２時間にわたっては、サーバたるProdSrv 137のメモリ割当を４０％増量すべきである（そして、これは再評価されるべきである）」等のレコメンデーションも含めることができる。他のメトリック４１６は、強調されたアラート４０２から離されて表示されることができる。
【００４６】
例えば、例示した実施形態では、ＣＰＵ使用量関係の症状は増大しており、その一方で成功裏な送信関係の症状は減少している。相関付けられるメトリックには、ガベージコレクション、メモリ、取り扱われたリクエスト、及び発生したエラーカウントが含まれ得る。これらのメトリックに基づいて、レコメンデーションエンジンは、症状と相関付けられたメトリックとを、影響を被っているサーバのメモリ割当を２時間にわたって増量すべしとのレコメンデーションにマッチングする。
【００４７】
図５は、サポートデータをもって２つの問題を強調している画面コピー５００を示す図である。一部の場合では、システムは複数の問題を識別することができる。示した実施形態では、２つの問題が識別されており、強調された画面領域を共有している。分析と相関付けとソリューションの決定の後、システムは、ダッシュボードをレンダリングさせることができる。第１の問題が識別された場合、アラート情報を強調する態様で第１のアラート５０２をレンダリングすることができる。第１のアラート５０２は、症状情報５０６，５０８（グラフ等）及びサポートメトリック情報５１０，５１２を含むことができる。アラートメッセージ５０４をレンダリングすることもできる。「今後２時間にわたっては、サーバたるProdSrv 137のメモリ割当を４０％増量すべきである」等のレコメンデーションも含めることができる。他のメトリック５２４は、強調された第１のアラート５０２から離されて表示されることができる。
【００４８】
第２の問題が識別された場合、アラート情報を強調する態様で第２のアラート５１４をレンダリングすることができる。第２のアラート５１４は、症状情報５１８及びサポートメトリック情報５２０，５２２を含むことができる。アラートメッセージ５１６をレンダリングすることもできる。「DBNode3はディスクたるRaid36の交換を要している」等のレコメンデーションも含めることができる。他のメトリック５２４は、強調された第２のアラート５１４から離されて表示されることができる。メトリックの相関付けと個々の問題の識別とを分離することによって、管理者の時間を節約することができ、また、どのメトリックについて関連性があると提案されているかに関しての混乱を減じることができる。
【００４９】
図６は、サポートデータを表示するアラートが無い画面コピー６００を示す図である。問題が検出されない場合、アナライザデータを画面にレンダリングすることができる。図示の実施形態では、アナライザデータは個別のグラフ６０２にレンダリングされる。
【００５０】
図７及び図８は、JavaScriptスクリプティング言語にて記述されたアナライザの例を示す図である。アナライザは、管理者にダッシュボードを提供するウェブページと共に読み込まれることができる。図７は、生データのティアの簡単なアナライザを示す（図３も参照されたい）。図８は、より上位のティアに属するより複雑なアナライザを示す図であり、該アナライザは４つの他のアナライザから結果を派生させる（図３も参照されたい）。
【００５１】
図７は、生データアナライザの動作を表すコードの断片を示す図である。アナライザは、先ずレンダリング用のグラフィング戦略をセットアップする。そして、アナライザは、「numSignificantExceptions」と称されるデータセットからデータを抽出する。抽出の後、データは返戻され、グラフはレンダリングに送られる。
【００５２】
一部の実施形態では、「タイムスライス」との用語はグラフ上に示される１分毎のセグメントである。「エクストラクタ」関数は、基本的なものとすることができ、どのようにして値がアグレゲート及び説明されるかについて扱うことを要さない。「マージ戦略」は「加算」であり、タイムスライス内の総計をもたらすように「抽出された」値が加算される。これによって、ＣＰＵ又はメモリ使用量に関して用いられるような平均値ではなく、全システムにわたっての総計を示すことができる。他の値としては次のものが含まれることができる：「平均」、「欠測」（一部のタイムスライス内には存在したが当該タイムスライス内には無かった値を強調する）、「比率によって補正した平均」（例えば、ヒープ（heap）があり、これはヒープ使用量に関しての明示的な値の使用を可能とする一方で、システム毎の最大ヒープに基づいてアナライザグラフを補正することができるのであり、１０００メガバイト（Ｍｂ）ｍａｘに関しての使用量５００Ｍｂであるときに５０％とを示すようにすることができ、これは４０００Ｍｂ ｍａｘなシステムに関しての使用量２０００Ｍｂと等価なものとなる）、並びに、「グローバル」（ソースシステムに応じて値が分解されないのであり、値は単一のアグレゲート値として扱われる）。より高度な比較を行うために、カスタマイズされた戦略を用いることもできる。
【００５３】
図８は、派生データアナライザの動作を表すコードの断片を示す図である。図示の実施形態では、他のアナライザ出力メトリックに基づいて、長期にわたって実行されているＳＱＬステートメントを識別する。入力は、次のものを含むアナライザからの入力である：「全部ｖｓ．長期間アナライザ」、「全部ｖｓ．ロングカウントアナライザ」、「全部ｖｓ．長期間バリューアナライザ」、及び、「全部ｖｓ．ロングカウントバリューアナライザ」。長期にわたって実行されているＳＱＬリクエストは、長期にわたって実行されているリクエストのＳＱＬ実行に費やした時間に関しての百分率として識別される。図７と同様に、コードはデータのグラフィング処理とデータ活用のためのマージ戦略とをセットアップするのであり、そしてより下位のティアのアナライザからデータを抽出する。
【００５４】
図９及び図１０は幾つかのオペレーションに分解された方法に関しての実施形態を説明するものであり、これによって次の目的のためにメトリックを分析及び派生することができる：症状を発見するため、症状を他のメトリックと相関付けるため、及び、症状によって根拠付けられた根本的な問題を解決するためのアクションに関してのレコメンデーションを行うため。図９は、基本的な動作方法を説明する。図１０は、より詳細な動作方法を説明する。方法をより簡単に理解できるようにするために、オペレーションを逐次的な順序で示しているということに留意されたい。したがって、他の実施形態では、個々のオペレーションは、順序を外れて、或いは、同時的に、或いは、並行等して、実行されることができる。
【００５５】
図９は、システム活動に関する派生メトリックを相関付ける方法９００を示すフローチャートである。方法９００は、図２に示されるようなシステムによって達成されることができ、このようなシステムは、監視システム２１２にメトリックを提供するコンピューティング資源２０２，２０４，２０６，２０８，２１０を含む。ブロック９０２では、図２等に見られるようなメトリックのソースからデータを検索することができる。ブロック９０４では、データを分析して、管理者の閲覧に付するためにダッシュボードにレンダリングするために準備する。ブロック９０６では、ブロック９０８でさらなる派生データが必要とされなくなるまで、ブロック９０４の分析済みデータ又はブロック９０６で先行して構築されたデータから、派生データを構築することができる。派生データを含む分析済みデータをブロック９１０で用いることによって、問題を識別することができる。ブロック９１２では、問題及び分析済みデータに基づいてソリューションを相関付けることができる。
【００５６】
図１０は、システム活動に関する派生メトリックを相関付ける代替的な方法１０００を示すフローチャートである。図２に示されるようなシステムによって達成されることができ、このようなシステムは、監視システム２１２にメトリックを提供するコンピューティング資源２０２，２０４，２０６，２０８，２１０を含む。ブロック１００２では、データベースやサーバや他のコンピューティング資源等のメトリックのソースからデータを検索する。ブロック１００４では、検索されたデータを分析する。ブロック１００６で問題が識別された場合、ブロック１００８で問題は記録され、また、サポートデータ１０１０が（相関付け等によって）決定される。ブロック１０１２でソリューションが決定されない場合、ブロック１０１４でさらなる派生データを構築することができ、また、利用可能であればブロック１００４で分析される。その余の場合、ブロック１０１６でソリューションを識別する。ブロック１０１８でさらに多くの派生データが必要でありかつ利用可能である場合、ブロック１０１４でさらなる派生データを構築することができ、これらはブロック１００４で分析される。ブロック１０２０で問題が発見された場合、ブロック１０２２では、問題と提案されるソリューションとサポートデータとを強調するアラートダッシュボードをレンダリングすることができる。問題が発見されなかった場合、ブロック１０２４で通常のダッシュボードを表示することができる。
【００５７】
図１１は、本願明細書にて開示する実施形態による、コンピューティングシステム１１００を示す概略図である。コンピューティングシステム１１００は、様々なコンポーネントを接続する情報伝送バスとしてみることができる。図示の実施形態では、コンピューティングシステム１１００は、命令を処理するためのロジック１１０２を有するプロセッサ１１０２を含む。命令は、メモリ１１０６及びコンピュータ可読記憶媒体を含む記憶装置１１０８に格納することができ及び／又はこれらから検索されることができる。命令及び／又はデータは、有線１１１４又は無線１１１２機能を含み得るネットワークインタフェース１１１０から到来することができる。また、命令及び／又はデータは、拡張カードやセカンダリバス（例えば、ＵＳＢ等）やデバイス等のものを含み得る入出力インタフェース１１１６からも到来することができる。ユーザは、ユーザインタフェース装置１１１８とレンダリングシステム１１０４を介してコンピューティングシステム１１００と対話することができ、これによってコンピュータはユーザへのフィードバックを受信及び提供することができる。
【００５８】
本願にて開示される実施形態及び実施態様は種々のオペレーションを含むことができ、これらのオペレーションは、コンピュータシステムによって実行される機械実行可能な命令の形で具体化することができる。コンピュータシステムは、１以上の汎用又は専用コンピュータ（或いは、他の電子装置）を含むことができる。コンピュータシステムは、これらのオペレーションを実行するための特定の論理回路を含むハードウェア構成要素を含むことができ、或いは、ハードウェア、ソフトウェア、及び／又はファームウェアの組合せを含むことができる。
【００５９】
コンピュータシステム、及びコンピュータシステム内のコンピュータ同士は、ネットワークを介して接続することができる。本願明細書で説明する構成及び／又は使用法に適したネットワークは、１以上のローカルエリアネットワーク、ワイドエリアネットワーク、メトロポリタンエリアネットワーク、及び／又は、ワールドワイドウェブ、プライベート（私設）インターネット、セキュアインターネット、付加価値通信網、仮想プライベートネットワーク、エクストラネット、イントラネットのような「インターネット」又はＩＰネットワーク、さらには、媒体の物理的な搬送によって他のマシンと通信するスタンドアロンマシン（自立型機械）を含む。特に、適切なネットワークは、異種のハードウェア及びネットワーク通信技術を用いるネットワークを含めた２つ以上の他のネットワークの部分又は全体で形成することができる。
【００６０】
ある適切なネットワークは、サーバ及び１以上のクライアントを含み；他の適切なネットワークは、サーバ、クライアント、及び／又はピアツーピアノードの他の組合せを含むことができ、所定のコンピュータシステムは、クライアント及びサーバの両方として機能することができる。各ネットワークは、サーバ及び／又はクライアントのような少なくとも２つのコンピュータ又はコンピュータシステムを含む。コンピュータシステムは、ワークステーション、ラップトップコンピュータ、着脱可能なモバイル（携帯）コンピュータ、サーバ、メインフレーム、クラスタ、いわゆる「ネットワークコンピュータ」又は「シンクライアント」、タブレット、スマートホン、パーソナルデジタルアシスタント（個人用携帯情報端末）又は他のハンドヘルド（手持ち型）コンピュータ装置、「スマート」な民生用電子装置又は電化製品、医療機器、或いはそれらの組合せを含むことができる。
【００６１】
適切なネットワークは、Novell（登録商標）社、Microsoft（登録商標）社、及び他のベンダーから入手可能なソフトウェアのような通信又はネットワークソフトウェアを含むことができ、そして、ＴＣＰ／ＩＰ、ＳＰＸ、ＩＰＸ、及び他のプロトコルを用いて、ツイストペア、同軸、又は光ファイバケーブル、電話回線、電波、衛星中継、マイクロ波中継、変調ＡＣ電力線、物理的な媒体搬送、及び／又は当業者に既知の他のデータ伝送「線」上で動作することができる。ネットワークは、より小規模なネットワークを包含することができ、及び／又は、ゲートウェイ又は同様のメカニズムを通して他のネットワークと接続可能である。
【００６２】
本発明の様々な手法又は特定の観点又はそれらの部分は、有形媒体内に配置されるプログラムコード（即ち、命令）の形式をとることができ、該有形媒体はフロッピー（登録商標）ディスケット（登録商標）、ＣＤ−ＲＯＭ、ハードドライブ、磁気若しくは光学カード、ソリッドステートメモリ装置、非一時的コンピュータ可読記憶媒体又は他の任意のマシン可読記憶媒体等とすることができ、これらは、プログラムコードがコンピュータ等のマシン内へと読み込まれて実行されると、マシンを本発明の様々な手法を実現するための装置とならしめる。プログラマブルコンピュータ上でのプログラムコード実行の場合、コンピューティング装置は、プロセッサと、プロセッサによってリード可能な記憶媒体（揮発性及び不揮発性メモリ及び／又は記憶要素を含む）と、少なくとも１つの入力装置と、少なくとも１つの出力装置とを含むことができる。揮発性及び不揮発性メモリ及び／又は記憶要素は、ＲＡＭ、ＥＰＲＯＭ、フラッシュドライブ、光学ドライブ、磁気ハードドライブ、又は電子データを格納するための他の媒体であることができる。本願明細書にて説明した様々な手法を実現又は活用し得る１以上のプログラムは、アプリケーションプログラミングインターフェース（ＡＰＩ）や再使用可能コントロール等を用いることができる。このようなプログラムは、高レベルの手続型言語又はオブジェクト指向言語で実装されてコンピュータシステムと通信するようにすることができる。もっとも、望むのであれば、プログラムはアセンブリ又はマシン語で実装されることができる。どの場合であれ、言語はコンパイル型又はインタプリタ型言語であることができ、ハードウェア実装例と組み合わせることができる。
【００６３】
各コンピュータシステムは、１以上のプロセッサ及び／又はメモリを含み；コンピュータシステムは、種々の入力装置及び／又は出力装置を含むこともできる。プロセッサは、インテル（登録商標）、ＡＭＤ（登録商標）、又は他の「オフザシェルフ」（既製の）マイクロプロセッサを含むことができる。プロセッサは、ＡＳＩＣ、ＳｏＣ、ＳｉＰ、ＦＰＧＡ、ＰＡＬ、ＰＬＡ、ＦＰＬＡ、ＰＬＤのような専用処理装置、或いは他のカスタマイズされたデバイス又はプログラム可能なデバイスを含むことができる。メモリは、スタティックＲＡＭ、ダイナミックＲＡＭ、フラッシュメモリ、１以上のフリップフロップ、ＲＯＭ、ＣＤ−ＲＯＭ、ＤＶＤ、ディスク、テープ、又は、磁気媒体、光媒体、若しくは他のコンピュータ記憶媒体を含むことができる。入力装置は、キーボード、マウス、タッチスクリーン、ライトペン、タブレット、マイクロホン、センサ、或いはファームウェア及び／又はソフトウェアを伴う他のハードウェアを含むことができる。出力装置は、モニタ又は他のディスプレイ、プリンタ、音声又は文字合成器、スイッチ、信号線、或いはファームウェア及び／又はソフトウェアを伴う他のハードウェアを含むことができる。
【００６４】
本願明細書にて説明した多くの機能的ユニットは１以上のコンポーネントとして実装することが可能であることに留意すべきであり、該用語は、これらの実装に際しての独立性をより具体的に強調するために用いられるものである。例えば、コンポーネントは、カスタム設計のＶＬＳＩ回路やゲートアレイ、又は、ロジックチップ、トランジスタ若しくは他の個別部品等のオフザシェルフ半導体素子を備えるハードウェア回路として実現されることができる。また、コンポーネントは、ＦＰＧＡ、プログラマブルアレイロジック、プログラマブル論理装置等のプログラマブルハードウェア装置をもって実装されることもできる。
【００６５】
コンポーネントは、様々なタイプのプロセッサによって実行可能とされるソフトウェアとしても実装されることができる。例えば、実行可能なコードの識別されたコンポーネントは、コンピュータ命令の１以上の物理ブロック又は論理ブロックを備えることができ、これらのコンピュータ命令は例えばオブジェクト、プロシージャ、又は関数等として編成することができる。もっとも、識別されたコンポーネントの実行可能部分は物理的に一箇所に配置されていることは要せず、異なる箇所に格納された異種の命令を含むことができ、これらを論理的に結合した際にコンポーネントが構成されてかつ該コンポーネントの表定された目的が達成されるものとすることができる。
【００６６】
実際に、実行可能コードのコンポーネントは、単一の命令であるか又は多数の命令であることができ、並びに、複数の異なるコードセグメント間或いは異なるプログラム間或いは複数のメモリ装置間に分散されていることさえできる。同様に、オペレーショナルデータはコンポーネント内において識別及び図示されていることができ、並びに、任意の適切な形式で実現され、及び、任意の適切なデータ構造タイプ内にて編成されていることができる。オペレーショナルデータは、単一のデータセットとして収集されることができ、又は、異なる記憶装置を含む異なる箇所にわたって分散されることができ、また、システム若しくはネットワーク上の単なる電子的信号として少なくとも部分的に存在することができる。コンポーネントは受動型又は積極型とすることができ、これらには所望の機能を行うように動作可能なエージェントが含まれる。
【００６７】
説明する実施形態の幾つかの態様は、ソフトウェアモジュール又はソフトウェアコンポーネントとして例示することができる。本願明細書で用いるソフトウェアモジュール又はソフトウェアコンポーネントは、メモリ装置内に配置された任意の種類のコンピュータ命令又はコンピュータ実行可能コードを含むことができる。ソフトウェアモジュールは、例えば、コンピュータ命令の１以上の物理ブロック又は論理ブロックを具えることができ、これらのコンピュータ命令は、１以上のタスクを実行するか特定のデータタイプを実装するためのルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等として編成することができる。ソフトウェアモジュールは、ソフトウェアに代替して又はソフトウェアに追加して、ハードウェア及び／又はファームウェアとして実装され得ることが想定されている。本願明細書にて説明する１以上の機能的モジュールは、サブモジュールに分解されるか及び／又は単一の或いはより少数の個数のモジュールに統合されることができる。
【００６８】
特定実施形態では、特定のソフトウェアモジュールが、メモリ装置の異なる場所、異なるメモリ装置、又は異なるコンピュータに記憶された異種の命令を含むことができ、これらの命令がまとまって、説明するモジュールの機能を実現する。実際に、モジュールは、単一の命令又は多数の命令を含むことができ、そして、異なるコードセグメントにわたって、異なるプログラム間に、及び幾つかのメモリ装置にわたって分散することができる。一部の実施形態は、分散型コンピュータ環境内で実施することができ、こうした環境では、通信ネットワークを通してリンクされたリモート処理装置によってタスクが実行される。分散型コンピュータ環境では、ソフトウェアモジュールを、ローカル及び／又はリモートメモリ記憶装置に配置することができる。これに加えて、データベースレコード内で結合されるか一緒にされたデータを、同じメモリ装置内に、又は幾つかのメモリ装置にわたって常駐させることができ、そして、ネットワーク越しにまとめてリンクして、データベース内のレコードのフィールドの形にすることができる。
【００６９】
本願明細書において「例」に言及する場合、その例との関連で説明された特定の特徴、構造、又は特性が本発明の少なくとも１つの実施形態に含まれていることを意味する。したがって、本願明細書中の様々な箇所で出現する「例では」との語句は、必ずしも全て同じ実施形態について言及しているわけではない。
【００７０】
本願明細書の用例によれば、複数のアイテム、構造的構成要素、組成的構成要素、及び／又は材料は、便宜上、共通のリストにおいて提示することができる。もっとも、これらのリストに関しては、リストの各構成要素が、別個且つユニークな構成要素として個別的に特定されているものとして解釈するべきである。したがって、別段の表示なき限り、そのようなリストのある個別的構成要素が共通のグループに示されていることのみに基づいて、その構成要素が同じリストの他の任意の構成要素と事実上等価であると解してはならない。また、本願明細書では、本発明についての様々な実施形態及び例について述べるのであり、また、それらの様々なコンポーネントに関しての代案についても述べている。これらの実施形態、例、及び代案は、お互いの事実上の等価物と解釈されるべきではなく、むしろ、本発明に関しての別個且つ自立の表現と解釈されるべきである。
【００７１】
さらに、１以上の実施形態においては、記載した特徴、構造、又は特性を、任意の適切な態様で組み合わせることができる。説明では、本発明の実施形態についての十全な理解を提供するために、材料、フリーケンシー、大きさ、長さ、幅、形状等に関する例示等の多数の具体的な詳細事項を提供する。しかし、１以上の特定の詳細事項を省略することができ、或いは、他の方法、構成要素、又は材料等を用いることができることは、当業者の認める所である。他の例では、本発明の特徴を曖昧にすることを回避するために、周知の構造、材料、又は動作を詳細に図示又は説明しない。
【００７２】
上述の事柄は明確性担保のために少し詳しく説明したが、本発明の原理から逸脱せずに変更や改造を加えることができるということは自明である。本願明細書にて説明したプロセス及び装置を実施するためには多数の代替的手法があるということに留意されたい。したがって、本願明細書の実施形態は例示的であり、限定的なものと解されてはならず、本発明は本願明細書の詳細に限定されてはならず、添付の特許請求の範囲及びその等価的範囲で変更されることができる。
【００７３】
本発明の基になる原理から逸脱せずに、上述の実施形態の細部に多数の変更を加えることができることは、当業者にとって自明である。したがって、本発明の範囲は、以下の特許請求の範囲のみによって決定される。
【図１】
2017526040.tif 000003
【図２】
2017526040.tif 000004
【図３】
2017526040.tif 000005
【図４】
2017526040.tif 000006
【図５】
2017526040.tif 000007
【図６】
2017526040.tif 000008
【図７】
2017526040.tif 000009
【図８】
2017526040.tif 000010
【図９】
2017526040.tif 000011
【図１０】
2017526040.tif 000012
【図１１】
2017526040.tif 000013
【国際調査報告】
2017526040.tif 000014
2017526040.tif 000015