サービス マップは、フロントエンドからバックエンドまでのアーキテクチャ全体を視覚的に表現したもので、システムを構成する相互接続されたコンポーネントの包括的な概要を提供します。 このマップには、アプリケーション、データベース、ホスト、サーバー、およびプロセス外サービス ( Web 外部と呼ばれる) 間の関係が動的に表示されます。
one.newrelic.com > All capabilities > APM > (choose an entity) > Service map: サービス マップには依存関係とそのパフォーマンスが表示されます。
サービスマップを利用する
サービス マップは分散トレースと連携して、エンティティ間の関係を結び付けます。分散トレースを有効にしていない場合でもサービス マップは機能しますが、すべてのエージェントに対して分散トレースを有効にすることをお勧めします。これにより、サービス マップを使用する際のより一貫したエクスペリエンスが保証されます。
サービス マップにアクセスするには:
に移動し、
APM & services
、
Mobile
、または
Browser
のいずれかを選択します。
エンティティを選択します。
左側で、
Service map
クリックします。
特定のエンティティからのマップ
カーソルをテンプレートの上に置いてMap from this entityをクリックすると、テンプレートの視点からテンプレート間の関係が表示されます。 サービス マップはそれに応じて更新されます。
エンティティのフィルタリング
以下に基づいてサービス マップをフィルタリングできます。
Health status: 影響を受けるアプライアンスの周囲の稼働ステータスの色を削除します。
Entity types: マップから特定のエンティティを非表示にします。
Timewarp: 過去 3 時間にエンティティの健全性がどのように変化したかを調べます。
Relationship depth:
Depth 1
: (デフォルト) 稼働ステータスに関係なく、メイン アプライアンスに直接接続されているすべてのアプライアンスを表示します。
Depth 2
: メインのアプライアンスから 2 ホップ離れた、劣化したアプライアンス (アラート付き) に焦点を当てます。 メイン エンタープライズ に直接接続する エンタープライズ は、このビューには含まれません。
Depth 3
: 深さ 2 と同様に、深さ 3 はアラートのある劣化したアプライアンスに集中しますが、検索範囲をメインのアプライアンスから 3 ホップ離れたアプライアンスに拡張します。 メインエンティティへの直接接続は除外されたままです。
ヒント
エンティティの表示を深さ 2 および 3 の劣化したエンティティに制限する目的は、サービス マップが乱雑で圧倒されるのを防ぐことです。関係の深さを増すと、エンティティのネットワークの奥深くに進みますが、問題が発生しているエンティティのみが表示されます。これは、システム内の最も重大な問題に焦点を当てるのに役立ちます。
エンティティのパフォーマンス指標を表示する
右側のペインには、すべてのエンティティのパフォーマンスに関する詳細なデータが含まれています。
まとめると、マップは正確な瞬間を見つけて、システムに発生したインシデントの場所を特定するのに役立ちます。
GraphQL API を使用してサービス関係を探索する
GraphQL クエリとミューテーションを実行するツールである NerdGraph エクスプローラーで、サービス マップで利用できるのと同じ関係接続を見つけることができます。開始するには、 「NerdGraph チュートリアル: エンティティ データの表示」を参照してください。
トラブルシューティング
サービス マップ内の特定のエンティティを表示できない場合は、 「欠落しているデータまたは難読化されたデータ」を参照してください。
インストルメント化されていないエンティティがある場合は、 「サービス マップのインスツルメント化されていないエンティティ」を参照してください。
マップ内の外部とデータベースについて
New Relic UIでは、プロセス外サービスはウェブ外部またはバックグラウンド外部データと呼ばれます。外部サービスとデータベースは、サービスマップにおいて他のエンティティタイプとは若干異なる機能を有しています:
サービス マップに表示される他のエンティティとは異なり、
externals
は集約です。 マップ内の外部サービスをクリックすると、1 つの外部エンティティにまとめられたすべての外部サービスのリストが表示されます。 これは、一部のエンティティでは数十の外部情報が報告される場合があるため、マップの乱雑さを軽減するためです。
エージェントレスの性質のため、データベースにはアラートを設定できません。データベースに対して行われたサービス呼び出しのみが New Relic に報告されます。