根本原因分析

Instana はインシデントを管理し、根本原因の特定を加速します。 Instana は、インシデント、問題、変更を自動的に検出し、アプリケーションのサービス品質に関する問題の検出、理解、調査を支援します。

現在、DevOps 技術者は、数百個あるいは数千個のコンポーネントから構成される動的アプリケーション環境において、重大な問題に直面しています。 物事が壊れたとき、ユーザーがサービスの影響を感じ始める前であっても、できるだけ早く問題を検出し、理解できるようにする必要がある。 DevOps できるだけ早くサービスを復旧させた後、根本原因を正確に修正し、問題が再び発生しないようにする必要がある。 DevOps、問題の根本原因を特定するのに数時間から数日かかることがあり、多くの場合、原因は特定されないままである。

インシデント

インシデントは最も高い重大度レベルをもたらす。 ユーザーがアクセスするエッジサービスが影響を受けたり、影響の切迫したリスクが存在する場合に作成される。 ダイナミック・グラフを使用して、各インシデントのすべての関連するイベントが相関付けられて、コンテキストおよび根本原因分析の仮説が提供されます。

あるサービスの応答が突然遅くなることを、 平均待ち時間の突然の増大と呼ぶ。 このインシデントは自動的に警告として黄色でマークされます。このインシデントがアクティブになるまで色が表示される。 解決後、色はグレーに変わり、ドリルダウンメニューで使用できるようになります。 次のインシデントの例をご覧ください。

図 1. インシデント
インシデント

インシデント詳細ビューは次の 3 つの部分で構成されています。

  1. ヘッダーには、インシデントの主な事実に関する基本情報が表示されます。

    • 開始時間
    • 終了時刻 (継続している場合は「現行」)
    • まだアクティブであるイベントの数
    • 関連する変更の数
    • 影響を受けるエンティティーの数

    インシデントの開始日、終了日 (使用可能な場合)、まだアクティブであるイベントの数、このインシデントに属する変更の数、および影響を受けるエンティティーの数を確認できます。

    図 2. インシデントKPI
    インシデントKPI
  2. 2 番目のセクションには、経時的なインシデントの進行状況が視覚的に表示されます。 チャートは、開始時間から終了時間までの完全な時間枠と、開始時間順にソートされたすべてのイベントを表示する。 このビューが省略されている場合は 7 つのイベントに制限されます。 インシデントに一度に 7 つを超えるイベントが含まれている場合は、展開ボタンを押してフル・ビューを表示します。 いずれかのバーをクリックすると、その問題の詳細ビューが開きます。

    図 3. 発生人口
    発生人口
  3. 3 番目のセクションには、セクション 2 のグラフ・ビューの詳細が含まれています。 開始時間順に並べられた全イベントのリストにより、ユーザーは各イベントの利用可能なすべての情報を見ることができる。 各イベントの利用可能なすべての情報を表示するには、クリックして展開します:

    図 4. インシデント・イベントの拡大
    インシデント・イベントの拡大

詳細情報はイベントを理解する際に役立ちます。詳細情報の後には、視覚化のために対応するメトリックがプロットされている複数のグラフが続きます。 イベントがまだアクティブな場合、グラフは新しい着信メトリック値のレンダリングを続行します。 2つのフラッグが用意されている。 1つのフラグは、イベントがサービスに影響することを強調するもので、もう1つのフラグは、イベントがインシデントを引き起こしたことを強調するものである。 利用可能であれば、フラッグはリスト内の各イベントの上に置かれる。

イベントに焦点を当てると、詳細セクションで、ポイント3のインシデント・イベント・リストに記載されているのと同じ情報が提供されます。

自動推定根本原因(パブリック・プレビュー)

DevOps 実務担当者の平均修復時間 (MTTR) を短縮するため、Instana は、Causal AI を使用してトレース統計とトポロジーを動的に分析するアルゴリズムである推定根本原因を自動化します。 このアルゴリズムは、障害の根本原因である可能性の高いエンティティを特定します。これにより、 DevOps の実務者は、アプリケーション障害の原因である可能性の高いエンティティを迅速に特定することができます。

以下のエンティティ・タイプのスマート・アラートから作成されたインシデントの 「推定される根本原因 」セクションにアクセスできます:

  • アプリケーションのパースペクティブ
  • サービス
  • エンドポイント
  • アプリケーションのサービスレベル目標
図 5. 推定根本原因
推定根本原因

推定される根本原因のセクションには、主に以下のセクションがある:

  1. 根本原因の可能性が高いエンティティおよび関連するインフラストラクチャまたはアプリケーション情報
  2. DevOps 実務家が、特定の実体が根本原因である可能性が高いとして特定された理由を見るのに役立つ証拠。
  3. 根本原因の可能性が高いエンティティと関連するイベントと、障害の可能性を示す確率レベル。
  4. 関連するトレース・エラー・メッセージや、根本原因と思われるログから、一見しただけで問題の詳細が明らかになる。

原因AIアルゴリズムは、問題の原因である可能性の高いエンティティ(または複数のエンティティ)を特定する。 このエンティティは、Instanaによって監視され、Probable root causeエンティティとして表示される、物理的または論理的なエンティティである。 表示されたエンティティは、インシデント発生時のエンティティの状態を説明するエンティティページにリンクする。 関連するイベントは、Probable Root Causeエンティティで発生したすべての最近のイベントである。 詳細な関連イベントにより、 DevOps の実務担当者は、問題の原因となった問題、インシデント、変更イベントを迅速に特定することができる。 Unbounded Analyticsページへのリンクは、特定されたProbable Root Causeエンティティにプレフィルターされるため、 DevOps、そのエンティティに関連するトレースやエラーを素早く特定することができる。

推定される根本原因] セクションでは、Instana が、最も失敗の可能性が高いエンティティを最大 3 つまで表示します。 推定根本原因の候補となり得る他のエンティティを表示するには、「 最も可能性の高い原因 」および「 潜在的な原因」 タブをクリックします。 これらのエンティティは、故障の可能性が高い順にソートされているため、最も可能性の高い根本原因が最初に表示される。 確率レベルは、 lowmediumhigh のようにラベル付けすることができる。 high は、失敗の高い確率を示す。 確率レベル上にカーソルを置くとツールチップが表示され、各ラベルの意味がさらに説明される。

図 6. 推定根本原因ツールチップ
推定根本原因ツールチップ

トレースエラーとログの特定

  • トレースエラーメッセージ:エラーメッセージのあるエラーコール。 エラーメッセージには、ソフトウェアの実行中に確認された特定のエラーが含まれ、エラーコール数の多い順に表示されます。 エラーメッセージには、スタックトレースとエラーコードが含まれる。
  • トレースログ:システムのコールフローのイベントのより包括的な記録。 トレースログはカウント順に並べられ、 ERRORWARN などのログレベルが含まれる。
図 7. エラー・メッセージのトレース
エラー・メッセージのトレース
図 8. トレースエラーログ
トレースエラーログ

単一事業体LLMベースの調査

シングル・エンティティ調査は、問題の最も可能性の高い原因に焦点を当てることで、ユーザーがシステムで何が問題になっているかを迅速に理解できるように設計されている。 インシデントが発生すると、Instana はエンティティ(通常、特定のサービス、コンポーネント、リソース)上の推定根本原因を特定します。 単一エンティティの調査では、そのエンティティにズームインし、LLMを使用して自動的に詳細な分析を実行します。

この的を絞ったアプローチは、手動によるログレビューに特有の遅延を発生させることなく、リソースの枯渇や設定ミスなど、根本的な問題の切り分けを支援する。 LLMを使用して首尾一貫した診断ストーリーを生成することにより、解決までの平均時間を短縮し、システムの信頼性を維持し、サービスの中断を最小限に抑えることができます。 結局のところ、この方法は、問題の真の原因に焦点を当てることを可能にし、改善努力がタイムリーかつ効果的であることを保証するのに役立つ。

次の図は、あるインシデントの根本原因分析を示している:

図 9. 考えられる根本的な原因のプレビュー
考えられる根本的な原因のプレビュー

調査を開始するには、下図のように「 調査の実行 」をクリックする。 Instanaは、考えられる根本原因の実体を調査し、問題を理解し解決するために必要なコンテキストを提供します。

図 10. 単一事業体調査
単一事業体調査

次の例は、概要と可能性のある診断を含む調査結果を示している:

図 11. 調査結果
調査結果

以下の表は、AIが作成した調査報告書の構成要素の概要である:

コンポーネント 説明
診断 インシデントの根本原因についての平易な説明。
エラー・ログの概要 最も関連性の高いエラーメッセージの簡潔な概要。
トレース・ログの概要 システム内のリクエストの流れをハイレベルで表示し、エンティティに関連するスローダウン、障害、またはボトルネックを強調表示します。
関連イベントの概要 インシデントの原因となった可能性のある最近の変更またはイベント(構成の更新、展開、スケーリングアクションなど)のタイムライン。

問題

Issueは、アプリケーションやサービス、またはその一部がデグレードした場合に作成されるイベントです。 Instanaには、サービス品質の低下から複雑なインフラストラクチャの問題、ディスクの飽和に至るまで、さまざまな問題を検出する数百の健全性シグネチャが、すぐに使える状態で付属しています。 メトリクス、イベント、またはメタデータが期待される値に戻ると、問題は自動的に解決されます。

組み込みの問題に加えて、ご使用のシステムに固有の問題を検出するために カスタム・イベント を定義することができます。

Instanaで検出されたすべてのissue(組み込みissueとカスタムissueの両方)を表示するには、[ Event] ビューに移動し、[ issue] タブを選択します。 ダイナミック・フォーカスを使用して、問題をフィルタリングすることができます。

インスタナの各号には以下の情報が含まれている:

  • 重大度:この情報はCRITICALまたはWARNINGである。 CRITICALとは、直接的または間接的にデータ損失やサービスのリスクがあり、利用できないことを意味する。 警告とは、ユーザー・エクスペリエンスに影響を与えたり、長期的な問題につながったりする可能性のある、その他のパフォーマンス上の問題を意味する。
  • 問題の開始時間、終了時間、期間。
  • 影響を受けるエンティティ:1つ以上のエンティティが問題の影響を受ける。
  • 詳細:問題を解決するためのより詳細な背景と対策を提供する追加説明。
  • メトリクス:問題が発生した時点での、問題に関連する指標値を示す指標チャート。
  • 該当する場合は、 Unbounded Analyticsで問題の影響を受けたトレース、コール、ページロードを調査します。
図 12. イベント詳細の例
イベント詳細の例

この例では、1 つの Linux マシン上の CPU スチール時間が疑わしいため、問題としてマークされています。 問題はそれ自体ではアラートのトリガーにはならず、Instanaはそれが起こったことを記録する。 このシステムが接続されているサービスの動作が悪い場合、この問題はインシデントの一部となる。 この方法論は、イベントとパフォーマンスの問題を手動で相関させる必要がないため、Instanaの主な利点の1つです。 しばらくの間CPUを使いすぎているからといって、問題が存在するとは限らない。 この情報は、サービスに影響を与えたときに初めて意味を持つ。

組み込みおよびカスタムissueの管理に関する詳細については、 組み込みイベントの管理を参照してください。

Instana は、監視対象サービス間のすべての依存関係を把握しているため、インシデントがユーザーに影響を与えている場合、すべてのサービス品質問題に対してインシデントをトリガーします。 また、ディスクの飽和や Elasticsearch クラスタのスプリットブレインの状況など、重要なインフラストラクチャの問題については、インシデントをトリガーします。これは、これらの問題がデータ損失を引き起こす可能性が高いためです。

注: トラフィックの発生頻度が低いアプリケーション、サービス、またはエンドポイント(例えば、15分に1回のコール)は、当社の問題検出の十分な根拠があるとは見なされません。 問題の重大度は、その存続期間中に変化することがあります。 これは、この特定の問題が到達した最高の重大度を表します。

変更

変更とは、サーバーの起動/停止、デプロイメント、システム上の構成変更などの変更を表すイベントである。 さらに、次のように分けられる:

  • 変更点 - バージョン、環境変数値など、コンポーネントの構成を変更した
  • オフライン/オンライン - 管理下にあるコンポーネントの存在を追跡する

変更イベントは、ダイナミックグラフとともに使用され、構成の変更とインシデントの関係を自動的に検出するための重要な情報である。

図 13. 変更内容例
変更内容例

「イベント」ビュー

Instana が検出したすべてのイベントを表示するには、 イベントダッシュボードに移動し、 インシデント課題変更、またはすべてのタブを選択して、対応するイベント タイプを表示します。

図 14. イベント - 検索ビュー
イベント - 検索ビュー

全イベントのフィルタリング機能

ダイナミック・フォーカス・クエリー

Instanaによって発見されたイベントを検索するには、 ダイナミックフォーカス機能を使用します。 イベント・バー・チャートで1つ以上の複数のバーを選択すると、イベントの表には、選択したバーに含まれるイベントのみがリストされます。 イベントバーチャートのバーを選択することにより、現在の時間間隔を変更することなく、イベントの詳細な検査を行うことができます。 検索ボックスを使用して、概要テーブルの「タイトル」または「オン」列(インシデントが発生したサービス)のデータから特定のアイテムを検索することもできます。 この例では、検索照会は event.text:"Error rate" です。 結果は、タイトルに「エラー率」というフレーズを含むすべてのイベントのリストです:

フィルタリング・テーブル

イベント・ビューは、専用のUIフィルターによって強力なフィルター機能を提供します。 イベント・リストは、3つの主要なフィルター・オプションを使ってフィルターすることができる:

  • 一過性のイベント :イベントが一過性のものか、非一過性のものか、あるいはその両方か。
  • イベントタイプ :イベントがビルトインかカスタムか。
  • スマートアラート :アプリケーション、ウェブサイト、シンセティクス、インフラストラクチャー、モバイル、ログ、またはSLOからのスマートアラートによってイベントがトリガーされた場合。

これらのフィルターは、個別に使用することも、組み合わせて使用することもでき、関連するイベントをすばやく見つけ、トラブルシューティングの作業を最も重要なことに集中させることができます。

図 15. イベント - 検索ビュー
イベント - 検索ビュー