ヘルプ APM アプリケーションフローマップ

アプリケーションフローマップ

フローマップ機能により、アプリケーションがさまざまなコンポーネントとどのように相互作用するかを分析し、可視化することができます。これにより、どのコンポーネントでトラフィックやエラーが増加しているか、またはアプリケーションの遅延を引き起こしているかを特定できます。

目次

フローマップとサービスマップの違い

フローマップとサービスマップの違いは以下の通りです。

フローマップ サービスマップ
APMモジュール内のすべての監視対象アプリケーションと、それらに接続されたコンポーネントを単一のビューで可視化します。 選択した特定のアプリケーションについて、インフラストラクチャーおよびサービスレベルの依存関係を詳細に表示します。
Site24x7のAPMアカウントレベルのアプリケーションとそのコンポーネントを表示します。 アプリケーションレベルの視点を提供します。

フローマップの表示

  1. Site24x7コンソールにログインします。
  2. [APM]→[APMインサイト]→[フローマップ]に移動します。
  • デフォルトでは、フローマップに移動すると、[アプリケーショングループ]フィルターまたは[ステータス頻度]フィルター(アクティブなアプリケーション数が最も多いアプリケーショングループを表示)が追加されています。これを変更するには、[フィルターの追加]のプラスアイコンをクリックし、フィルターを選択します。
  • フローマップには直近30分間のデータのみが表示されます。

仕組み

Site24x7のフルスタックエージェントをAPMエージェント等と併用すると、アプリを自動検出してパフォーマンス情報を収集します。収集されたデータはコンソールへ送られ、継続的なヘルスステータスの評価を通じてフローマップへ反映されます。

マップ上の円(ノード)はコンポーネント、線(エッジ)は通信を表し、リクエストが多いほど円は大きく、通信頻度が高いほど互いに近く配置されるため、トラフィックの集中を直感的に把握できます。

デフォルトでは、フローマップに移動すると[アプリケーショングループ]フィルターが[APMグループ]に設定されます。

なお、視認性を維持するため、1グループのアプリが150を超えると自動フィルタリング機能が働き、異常ステータスのものを優先した上位50個のみが表示されます。そのため、初期状態でフィルターが適用されている場合は、対象グループに150以上のアプリが存在することを示しています。

ユースケース

オンラインショッピングサイトでのユーザー体験には、商品の閲覧、カートへの商品の追加、支払いの完了、注文確認の生成が含まれます。各ステップは、エンドツーエンドのユーザー体験を提供するために連携して動作するさまざまなアプリケーションとバックエンドコンポーネントによって処理されています。

複数のアプリケーションとコンポーネントが関与するため、1つのコンポーネントの遅延が全体的なユーザーエクスペリエンスに影響を与える可能性があります。特に、アプリケーション間の通信が連鎖的な遅延を引き起こす場合、応答総時間の遅延に寄与しているコンポーネントを特定することは困難になります。

フローマップは、アプリケーションとコンポーネントがどのように通信するかをアカウントレベルで表示します。これにより、以下のことが可能になります。

  • トランザクションフローに関与するすべてのアプリケーション間の相互作用を可視化
  • エンドツーエンドのリクエストライフサイクルで最も時間がかかるコンポーネントを特定
  • 各アプリケーションのスループット、リクエスト数、応答時間を分析
  • 全体的なパフォーマンスに影響を与えている可能性のある、遅いまたは過負荷のコンポーネントを検出

フローマップを使用することで、複数のアプリケーションにまたがるパフォーマンスのボトルネックを迅速に特定し、ユーザー体験に最も大きな影響を与えるコンポーネントへの対策を集中的に行うことができます。

フローマップの概要

フローマップは、APMアカウントのインフラストラクチャーの包括的な概要を提供します。アプリケーションが外部コンポーネントとどのようにリンクし、通信しているかの全体像を把握できます。

すべてのノードは、コンポーネントカテゴリーの数を割合で示すドーナツチャートで囲まれています(例:HTTP CALL、DB CALL、メッセージングサービスなど)。

コンポーネントエラー率

各コンポーネントのヘルスステータスは、そのエラー率に基づいて異なる色で表現されます。

  • 緑(正常):エラー率0%~10%。パフォーマンスの問題が検出されず、通常通り動作していることを示します。
  • 黄(警告):エラー率10%~15%。注意が必要な潜在的なパフォーマンスの問題であることを示します。
  • 赤(クリティカル):エラー率15%以上。高いエラー率や深刻なパフォーマンス低下などのクリティカルな問題であることを示します。

ノードの表現

  • 各ノードは、コンポーネントまたはAPMアプリケーションを表しています。
  • 各エッジは、コンポーネント間のインタラクションまたは通信を示します。
  • ノードが切断されている、または分離されている場合も、円形の境界内に囲まれます。
  • ノードのサイズはリクエストスループット(Req.Throughput)を反映して動的にスケーリングされます。ノードが大きいほど、処理するリクエストの量が多くなります。

ノードメトリック

ノードにカーソルを合わせると、コンポーネントタイプ、平均応答時間、リクエスト数、スループット、エラー数、エラー率(%)、応答総時間などの重要なメトリックが表示されます。コンポーネントをクリックすると、受信および送信のインタラクションも強調表示されます。

フィルターの追加

アプリケーショングループ、監視タグ、監視名、監視プレフィックス、コンポーネント名、ステータス頻度でコンポーネントをフィルターし、正確な分析を行うことができます。

フィルター名 説明
アプリケーショングループ [ホーム]→[監視グループ]で追加されている監視グループを表示します。
監視タグ タグに基づいて監視をフィルターします。
監視名 すべてのAPM監視を表示します。
監視プレフィックス このフィルターを適用すると、フローマップには、入力されたプレフィックスに一致する監視とその依存関係が表示されます。監視プレフィックスでフィルターを適用するには、[監視プレフィックス]→[カスタムテキスト入力]を選択し、プレフィックスを入力してEnterキーを押します。
コンポーネント名 HTTP CALL、Application、MYSQL、REDIS、MEMCACHEDなどのコンポーネントのタイプを表示します。
ステータス頻度 このフィルターには、クリティカル、トラブル、アノマリ検知済みの3つの値が含まれます。選択すると、その特定の状態に頻繁に移行するアプリケーションのリストが表示されます。

上記のフィルターは複数追加できます。これにより、表示したいデータを絞り込むことができます。

クラスター識別

[クラスター識別]ドロップダウンを使用して、以下のいずれかの基準に基づいてフローマップ内の特定のノードクラスターを強調表示します。

  • スループット(rpm)
  • リクエスト数
  • 応答総時間(秒)

ここでは、しきい値の入力と、クラスターごとの最小ノード数の指定が可能です。フローマップは、選択した条件を満たすクラスターを黄色で視覚的に強調表示し、影響の大きい箇所を迅速に特定するのに役立ちます。

上記の例では、スループットが50rpmを超え、クラスターごとの最小ノード数が4というデフォルトの条件を使用してクラスターを特定しています。

分配要求の表示

メインマップで青く強調表示されている線は、分配要求(アプリケーション間の通信)を示しています。これらの線には、サービス間の応答時間も表示されます。

また、[分配要求の表示]を有効にすると、アプリケーション間のインタラクションのみを表示できます。これは、依存コンポーネントを除外して、マイクロサービス間の通信のみを監視する場合に便利です。

グラフ分析

[グラフ分析]パネルは、適用されたフィルターに基づいて、アプリケーションのパフォーマンスとステータスの統合ビューを提供します。

ドーナツチャート:監視対象のアプリケーションの総数をステータスごとに分類して表示します。

監視ステータス
ダウン
アップ
トラブル
オレンジ クリティカル
グレー 非監視

ドーナツチャートの特定の色にカーソルを合わせると、そのステータスのアプリケーションの総数が表示されます。たとえば、緑色のセグメントにカーソルを合わせると、ステータスが「アップ」になっているアプリケーション数が表示されます。

アプリケーションのステータスをクリックしてドーナツチャートをフィルターすることもできます。たとえば、オレンジ色のセグメントをクリックすると、チャートから「トラブル」ステータスが削除され、残りの「アップ」と「クリティカル」ステータスの数のみが表示されます。

サマリー

[サマリー]タブでは、以下の情報を確認できます。

  • コンポーネント:個々のアプリケーションまたはコンポーネント(ノード)の総数を表します。
  • 接続:コンポーネント間のインタラクションまたは通信(エッジ)の総数を示します。
  • 上位5コンポーネント
    • 「スループット」、「要求数」、「エラー」別で上位5コンポーネントをリストアップできます。
    • データは水平棒グラフで可視化されます。
    • いずれかのチャートの青いバーをクリックすると、フローマップ上の対応するノードに移動します。

コンポーネント

[コンポーネント]タブは、検出されたすべてのコンポーネントをリストアップします。このタブには、アプリケーションのフローに関与するすべてのコンポーネント(MySQL、REDIS、CASSANDRA、Application、HTTP CALLなど)が表示されます。
コンポーネント名またはタイプを入力すると、検索バーを使用して特定のコンポーネントをすばやく見つけることができます。IPアドレスでの検索も可能です。

このタブを使用すると、個々のコンポーネントのヘルスとタイプをドリルダウンできます。これは、フローマップで異常を調査する際に特に便利です。リストからコンポーネントを選択すると、それがフローマップ上で強調表示されます。選択されたコンポーネントは、その依存ノードとともに、[コンポーネント詳細ビュー]セクションに別途表示されます。

コンポーネント詳細ビュー

[コンポーネント詳細ビュー]は、フローマップ内で選択されたノードに焦点を絞った分析を提供し、その直接的なインタラクションとパフォーマンスに関するインサイトを提供します。

番号 フィールド名 説明
1 コンポーネント名 選択したコンポーネントの名前を表示します。
2 タイプ

選択したコンポーネントに対して、以下のいずれかのタイプを表示します。

  • HTTP
  • Application
  • Cassandra
  • REDIS
  • MYSQL
3 検査ビュー

新しいタブのアイコンアイコンをクリックすると、選択したコンポーネントとその直接的な依存関係を表示できます。このビューでは、各接続エッジのメトリックが表示され、コンポーネント間の通信に関するより深いインサイトを提供します。[リンクラベル]ドロップダウンを使用して、平均応答時間、スループット、要求数、エラー数などのメトリックを変更できます。メトリックはコンポーネントに対してのみ表示され、検査ビューではアプリケーションには表示されないことに注意してください。

スループット時間が最も長い、または要求数が最も多いエッジが自動的に強調表示されるため、パフォーマンスのホットスポットを簡単に特定できます。

メインのフローマップに戻るには、[ここをクリックして戻る]リンクまたは左上の[メインビューに戻る]ボタンをタップしてフローマップに戻ります。

4 グラフビュー

選択したコンポーネントを、ノードとエッジとしてグラフィカルに表示できます。

5 テーブルビュー

選択したコンポーネントを、以下の情報とともに表形式で表示できます。

  • アプリケーション名
  • 平均応答時間
  • 要求数
  • スループット
  • エラー数

コンポーネント詳細ビューのセクション

コンポーネント詳細ビューの下に表示されるセクションは、選択されたコンポーネントによって異なります。

アプリケーションコンポーネントを選択した場合

  • アプリケーションサーバー応答時間のコンポーネント内訳:全体的なアプリケーションサーバーの応答時間とその個々のコンポーネントへの内訳を示すグラフで、各コンポーネントが応答総時間にどのように寄与しているかを理解するのに役立ちます。
  • リクエストスループット:このセクションでは、コンポーネントのリクエストスループットの時間変化を示すグラフが表示されます。
  • トップ5スロートレース:以下の詳細とともに、最も遅い5つの個々のトレースをリストアップします。
    • トランザクション
    • 応答時間(秒)

その他のコンポーネントを選択した場合

  • 平均応答時間:コンポーネントの応答時間の時間変化を示すグラフが表示されます。これに加えて、最小、最大、95パーセンタイル値の応答時間の概要が表示されます。
  • トランザクション:以下の詳細を表示します。
    • トランザクション名
    • 要求失敗数
    • 要求の総数

トランザクションをクリックすることで、各トランザクションの詳細をドリルダウンできます。

関連記事