分散トレースを使用すると、分散システム全体でのリクエストの全過程を確認できます。Javaエージェントの場合、2種類の分散トレースを提供します(詳細については、 スパンサンプリングのしくみを参照してください)。
- 標準(ヘッドベースのサンプリング):トレースが到着する前に、受け入れて分析するトレースの設定パーセンテージを決定します。これにより、トレースがどのように役立つかを確認するための確実な出発点が得られます。Javaエージェント7.4.0以降ではデフォルトでオンになっています。
- 無限トレース(テールベースのサンプリング):当社のクラウドベースのサービスは、すべてのトレースを受け入れ、それらをソートして最も重要なものを見つけます。標準トレースを設定した後、このオプションを追加することをお勧めします。これは、すべてのトレースを分析し、最も重要なトレースをサンプリングするための構成オプションを提供するためです。
分散トレースを開始するために必要なすべての手順は、次のとおりです。
- 新しいJavaエージェント:新しいエージェントのインストールのためのヘッドベースおよびテールベースのサンプリングの手順
- 古いJavaエージェント:古いJavaエージェントがある場合のトレースオプション
- 手動インストルメンテーション:自動インストルメンテーションが機能しない場合のヒント
新しいJavaエージェント
標準の分散トレース (ヘッドベースのサンプリング) を試してみたいだけか、無限トレース (テールベースのサンプリング) をセットアップしたいかどうかに関係なく、標準のトレースをセットアップすることから始める必要があります。私たちはあなたを通り抜けます ヘッドベースのサンプリングを開始するためのエージェントのインストール。 その後、オプションですが推奨される Infinite Tracing を設定できます。
エージェントをインストールして、標準の分散トレースを取得します
これは、サービスにAPMエージェントをまだインストールしていない場合、または追加のサービスをインストルメント化する場合に、標準の分散トレースを設定するための最良のアプローチです。
このAPMエージェントでインストルメント化されたサービスがすでにいくつかあり、それらを分散トレースに含めたい場合は、各サービスの分散トレースを手動で有効にする必要があります。古いJavaエージェントのオプションを参照してください。
ヒント
分散トレースを設定するには、NewRelicアカウントが必要です。まだお持ちでない場合は、無料のアカウントをすばやく作成できます。
ステップ1.サービスを特定する
どのサービスがリクエストに対応しているかを把握し、各サービスをインストルメント化してトレースデータをNewRelicに送信できるようにします。
ステップ2.各サービスをAPMエージェントでインストルメント化する
トランザクションに関係するサービスごとに、エージェントのインストールルーチンを繰り返します。一部のサービスが他の言語を使用している場合は、それらの言語のインストール手順を繰り返すだけです。
インストールルーチンを開始するには、下のタイルをクリックします。各エージェントのインストールが完了したら、ここに戻ってトレースを表示するためのヒントを確認してください。
ステップ3.トレースを表示する
各サービスをインストルメント化した後 エージェント、アプリケーションでトラフィックを生成して、トレースをキャプチャできるようにします。 UI でトレースを表示するいくつかの方法を次に示します。
UIでトレースを見つけるための詳細については、以下を参照してください。
無限トレースの設定(推奨)
APMエージェントの標準分散トレース(上記)は、トレースの最大10%をキャプチャしますが、すべてのデータを分析して最も関連性の高いトレースを見つけたい場合は、無限トレースを設定できます。
ヒント
この機能の詳細については、「 無限トレース」を参照してください。
開始する前に、まず要件を満たしていることを確認してください。
手順1.新しいエージェントのインストールを完了します
Infinite Tracingセットアップは、標準の分散トレース用の新しいエージェントインストールからのインストルメンテーションステップに基づいています。エージェントのインストールが完了したら、トレースオブザーバーのセットアップを続行します。
ステップ2.トレースオブザーバーを設定します
トレースオブザーバーは、すべてのトレースを収集して分析するNewRelicAWSベースのサービスです。トレースオブザーバーの設定の手順に従います。完了したら、トレースオブザーバー情報をここに戻し、次の手順に進んでエージェントを構成します。
手順3:エージェントを無限トレース用に構成する
無限トレース構成設定には、標準の分散トレースに加えて、トレースオブザーバーに関する情報が含まれます。サーバー側の構成は、無限トレースでは使用できないことに注意してください。
ヒント
プロキシ設定についてサポートが必要な場合は、 プロキシサポートを参照してください。
ステップ4.(オプション)無限トレースをカスタマイズする
エージェント構成設定を追加すると、NewRelicUIにデータが表示されるようになります。データの分析に時間を費やした後、無限トレースの機能のいくつかを調整することをお勧めします。
古いJavaエージェントのオプション
古いJavaエージェントを使用している場合は、有効にする前に、必要な分散トレース機能がサポートされていることを確認してください。
互換性ガイド
以下の互換性情報を確認した後、 「古いJavaエージェントの構成」を参照してください。
古いJavaエージェントを構成します
分散トレースを有効にするには、以下の設定を参照してください。
ヒント
分散トレースを使用せずに古いエージェントを使用している場合は、分散トレースをオンにする前に、APMへの影響を確認してください。
手動計装(自動計装が機能しない場合)
推奨事項:カスタムインストルメンテーションを実行する前に、以下をお読みください。
サービスがトレースヘッダーを他のサービスに渡していない場合は、分散トレースペイロードAPIを使用して、呼び出し元のサービスと呼び出されたサービスをインストルメント化できます。呼び出し元のサービスは、API呼び出しを使用してペイロードを生成します。このペイロードは、呼び出されたサービスによって受け入れられます。