OpenTelemetry APM UI は、サービス エンティティで利用できる厳選されたエクスペリエンスです。 New RelicとOpenTelemetryを使用してサービスを構成していない場合は、 OpenTelemetry APM監視」を参照してください。
OpenTelemetry APM UI ページは、問題を迅速に特定して診断できるように設計されています。 多くの場合、データはさまざまなOpenTelemetry セマンティック規則に準拠する必要がありますが、一部は汎用的です。
次の New Relic の概念は、ページ間で繰り返されるか、重複しています。
OpenTelemetry APM サービスを探す
OpenTelemetry APM サービスを見つけるには、 All entities > Services > OpenTelemetryまたはAPM & Servicesに移動します。 サービスをクリックすると、そのサービスのSummary page [概要ページ]に移動します。
エンティティ エクスプローラー内では、 エンティティ タグでフィルターできます。 エンティティ タグの計算方法の詳細については、 New Relic の OpenTelemetry リソースを参照してください。
ページ: 概要
概要ページには、次のようなサービスの健全性の概要が表示されます。
- 続きゴールデン: レスポンスタイム、スループット、エラー率。 これらの計算方法の詳細については、ゴールデン シグナルを参照してください。
- 関連エンティティ: このサービスと通信する他のサービスおよび関連インフラストラクチャ。 詳細なビューについては、Service map参照してください。
- アクティビティ: このサービスに対してアクティブなアラートのステータス。
- ディストリビューティッド(分散)ト インレーシング サイト: 下流または上流のエンティティがパフォーマンスの低下に寄与している可能性があるかどうかを発見します。 詳細については、関連するトレース エンティティ信号を参照してください。
- インスタンス: サービスが水平方向にスケーリングされる場合のインスタンスごとのゴールデン多数の内訳。
service.instance.id
リソース属性に依存します (詳細についてはサービスを参照してください)。
ページ: ディストリビューティッド(分散)トレーシング
ディストリビューティッド(分散)ト レーシング ページでは、 OpenTelemetryトレース データの詳細が提供されています。 ページの使用情報については、ディストリビューティッド(分散)トレーシングを参照してください。 データが OpenTelemetryNew Relicに取り込まれる方法の詳細についてはOpenTelemetryNew Relic 、 Relic の を参照してください。
ゴールデンシグナルと同様に、スパンのステータスがERROR
に設定されている場合 (たとえば、 otel.status_code = ERROR
)、スパンはエラーとして分類されます。 スパンはエラーの場合、エラーの詳細にスパンのステータスの説明(たとえば、 otel.status_description
)が表示されます。
OpenTelemetryスパン イベントは、追加のイベント コンテキスト情報を特定のスパンに添付します。 これらは例外情報をキャプチャするために最もよく使用されます。 利用可能な場合は、trace details [トレースの詳細]でスパンのイベントを表示できます。
ヒント
スパンの例外イベントが存在するだけでは、スパン自体がエラーであるとはみなされません。 スパン ステータスがERROR
に設定されているスパンのみがエラーとして分類されます。
ページ: サービスマップ
サービス マップ ページでは、アーキテクチャ全体を視覚的に表現します。 詳細については、サービス マップを参照してください。
ページ: 履歴書
トランザクション ページには、サービスのトランザクションに関する問題を特定し、分析するためのツールが提供されます。
メトリクスの場合、この書き込みでは、データがHTTP メトリクスまたはRPC メトリクスの意味規則に準拠していると想定されます。 http.route
属性とrpc.method
属性は、トランザクションによるリスト表示とフィルタリングに使用されます。
スパンの場合には、クエリは汎用的であり、最上位レベルのスパンのデータ モデルのみを利用します。 スパンは、ゴールデンストップで説明されているように、瞬間スループットと応答タイムにカウントされます。 スパンの名フィールドは、トランザクションによるリスト表示とフィルタリングに使用されます。
ページ: データベース
データベース ページには、サービスのデータベース クライアント操作に関する問題を特定し、分析するためのツールが用意されています。
現在、利用できるセマンティック規則がないため、データベースのメトリックスベースのビューはありません。
スパンの場合には、クエリはデータがDB スパンのセマンティック規則に準拠していると想定します。 スパン名、 db.system
、 db.sql.table
、 db.operation
属性は、データベース操作の一覧表示とフィルタリングに使用されます。
ページ: 外部サービス
外部ページには、呼び出し元エンティティ (上流サービス) や呼び出し先エンティティ (下流サービス) などのサービスの外部呼び出しに関する問題を特定し、分析するためのツールが用意されています。
外部サービスページのメトリックスベースのビューはありません。
スパンの場合には、クエリは汎用的であり、最上位レベルのスパンのデータ モデルのみを利用します。 スパンは、サービスを終了する場合、外部サービスのスループットと応答タイムにカウントされ、 WHERE span.kind = client OR span.kind = producer
のヒューリスティックを使用して計算されます。 データベース クライアントスパンは、 WHERE db.system is null
を使用してフィルタリングされます (ページ: データベースを参照)。 ゴールデンシグナルと同様に、スパンのステータスコードがERROR
(たとえば、 otel.status_code = ERROR
) の場合、そのスパンはエラーになります。 利用可能な場合、 HTTP スパンおよびRPC スパンのセマンティック規則のデータを使用して、外部サービス呼び出しを分類します。
ページ: JVM ランタイム
JVM ランタイム ページには、Java サービスの JVM の問題を特定し、分析するためのツールが提供されています。 このページは、 OpenTelemetry java を使用するサービスに対してのみ表示されます。 個別のサービス インスタンスを区別するために、ページではservice.instance.id
リソース属性を設定する必要があります (詳細については、 「サービス」を参照してください)。
JVMゴールデン ランタイム ページには、ランタイムの問題とサービスの使用状況を関連付けるために、 JVMランタイム メトリクスの横に、ストップが表示されます。 メトリクスまたはスパンの切り替えは、ゴールデン ストップがスパン データまたはメトリクス データのどちらによって駆動されるかを決定します。 JVMランタイム メトリクスにはスパンベースのビューはありません。
メトリクスの場合、書き込みはデータがJVMメトリクスの意味規則に準拠していることを前提としています。 これらの規則は、 OpenTelemetry Javaエージェントに自動的に組み込まれるOpenTelemetry Java ランタイム インストゥルメンテーション ライブラリに具体化されていることに注意してください。
ページ: Go ランタイム
Go ランタイム ページには、Go サービスのランタイムの問題を特定し、分析するためのツールが提供されています。 このページは、 OpenTelemetry Go を使用するサービスに対してのみ表示されます。 個別のサービス インスタンスを区別するために、ページではservice.instance.id
リソース属性を設定する必要があります (詳細については、 「サービス」を参照してください)。
Go ランタイムのゴールデン ページには、ランタイムの問題とサービスの使用状況を関連付けるために、Go ランタイム メトリクスの横に「マイナス」が表示されます。 メトリクスまたはスパンの切り替えは、ゴールデン ストップがスパン データまたはメトリクス データのどちらによって駆動されるかを決定します。 Go ランタイム メトリクスにはスパンベースのビューはありません。
メトリクスの場合、クエリはOpenTelemetry Go ランタイム インストゥルメンテーション ライブラリによってデータが生成されることを前提としています。 なお、現在、Go ランタイム メトリックスにはセマンティック規則はありません。
ページ: ログ
ログ ページには、問題を特定し、サービスのログを分析するためのツールが提供されます。 詳細については、 「ログ UI の使用」を参照してください。
ページ: Errors Inbox
エラー受信トレイ ページには、サービスのエラーを検出してトリアージするためのツールが提供されます。 詳細については、 「エラー受信トレイの使用開始」を参照してください。
Errors Inboxページはトレース データによって駆動されます。 ゴールデンシグナルと同様に、スパンのステータスがERROR
に設定されている場合 (たとえば、 otel.status_code = ERROR
)、スパンはエラーとして分類されます。
エラー スパンは、UUID、16 進数値、電子メール アドレスなどの識別値を正規化して計算されたエラー フィンガープリントごとにグループ化されます。 それぞれの個別のエラー スパンは、エラー グループ内の個別のインスタンスです。 エラー グループ メッセージは次のように決定されます。
- スパンステータスの説明(例:
otel.status_description
) rpc.grpc.status_code
RPCスパンセマンティック規約からhttp.status_code
HTTPスパンセマンティック規約からhttp.response.status_code
HTTPスパンセマンティック規約からundefined
上記のいずれも存在しない場合
ページ: メトリクスエクスプローラー
メトリクス エクスプローラーは、サービスのメトリクスを一般的な方法で探索するためのツールを提供します。 詳細については、 「データの探索」を参照してください。
黄金の信号
最長、レスポンスタイム、エラー率のゴールデン シグナルは、 OpenTelemetry APM UI全体の複数の場所に表示されます。 使用する場合、次のように計算されます。
メトリクスの場合、この書き込みでは、データがHTTP メトリクスまたはRPC メトリクスの意味規則に準拠していると想定されます。
スパンの場合には、クエリは汎用的であり、最上位レベルのスパンのデータ モデルのみを利用します。 スパンは、サービスへのルート エントリ スパンの場合には、長さと応答時間にカウントされ、ヒューリスティックWHERE span.kind = server OR span.kind = consumer
を使用して計算されます。 スパンのステータス コードがERROR
(たとえば、 otel.status_code = ERROR
) の場合、そのスパンはエラーになります。
フィルターでデータを絞り込む
いくつかのページには、Narrow data to... [データを絞り込む]などのオプションを含むフィルター バーが含まれています。 これにより、ページ上のクエリを基準に合わせてフィルタリングできます。 たとえば、 service.version='1.2.3-canary'
をフィルタリングすることで、特定のカナリアデプロイメントに絞り込むことができます。 ページ間を移動するときにフィルターは保持されます。
メトリクスまたはスパンの切り替え
さまざまなページにメトリクスまたはスパンの切り替えが含まれています。 これにより、分析要件とデータの可用性に基づいて、執筆をスパン データまたはメトリクス データのどちらによって行うかを選択できます。
メトリックはサンプリングの対象ではないため、特に中間率などのレートを計算する場合はより正確です。 ただし、メトリックはカーディナリティ制約の対象であり、分析に重要な特定の属性が欠落している可能性があります。 対照的に、スパンはサンプリングされるため、精度の問題が生じますが、カーディナリティ制約の対象ではないため、より豊富な属性を持ちます。
歴史的に、 OpenTelemetry言語APIと SDK、およびインストゥルメンテーションはトレース インストゥルメンテーションを優先していました。 ただし、プロジェクトは長い道のりを経て、メトリクスはほぼすべての言語で利用できるようになりました。 詳細については、関連する言語とインストゥルメンテーションのドキュメントを確認してください。