• ログイン今すぐ開始

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

Rubyサービスの分散トレース

分散トレースを使用すると、分散システム全体でのリクエストの全過程を確認できます。Rubyエージェントの場合、2種類の分散トレースを提供します(詳細については、 スパンサンプリングのしくみを参照してください)。

  • 標準(ヘッドベースのサンプリング):トレースが到着する前に、受け入れて分析するトレースの設定パーセンテージを決定します。これにより、トレースがどのように役立つかを確認するための確実な出発点が得られます。Rubyエージェント8.0.0以降ではデフォルトでオンになっています。
  • 無限トレース(テールベースのサンプリング):当社のクラウドベースのサービスは、すべてのトレースを受け入れ、それらをソートして最も重要なものを見つけます。標準トレースを設定した後、このオプションを追加することをお勧めします。これは、すべてのトレースを分析し、最も重要なトレースをサンプリングするための構成オプションを提供するためです。

分散トレースを開始するために必要なすべての手順は、次のとおりです。

新しいRubyエージェント

標準の分散トレース(ヘッドベースのサンプリング)を試すだけの場合でも、無限トレース(テールベースのサンプリング)を設定する場合でも、標準のトレースを設定することから始める必要があります。ヘッドベースのサンプリングを実行するために、APMエージェントのインストールについて説明します。その後、Infinite Tracingを設定できます。これはオプションですが、推奨されます。

エージェントをインストールして、標準の分散トレースを取得します

これは、サービスにAPMエージェントをまだインストールしていない場合、または追加のサービスをインストルメント化する場合に、標準の分散トレースを設定するための最良のアプローチです。

このAPMエージェントでインストルメント化されたサービスがすでにいくつかあり、それらを分散トレースに含めたい場合は、各サービスの分散トレースを手動で有効にする必要があります。古いRubyエージェントのオプションを参照してください。

ヒント

分散トレースを設定するには、NewRelicアカウントが必要です。まだお持ちでない場合は、無料のアカウントをすばやく作成できます

ステップ1.サービスを特定する

各トレースデータをNew Relicに送信できるように、どのサービスをインストゥルメントするかを把握します。

ステップ2.各サービスをAPMエージェントでインストルメント化する

トランザクションに関係するサービスごとに、エージェントのインストールルーチンを繰り返します。一部のサービスが他の言語を使用している場合は、それらの言語のインストール手順を繰り返すだけです。

インストールルーチンを開始するには、下のタイルをクリックします。各エージェントのインストールが完了したら、ここに戻ってトレースを表示するためのヒントを確認してください。

Start installation

ステップ3.トレースを表示する

各サービスをAPMエージェントでインストルメント化した後、アプリケーションでトラフィックを生成して、トレースをキャプチャできるようにします。UIでトレースを表示する2つの方法は次のとおりです。

UIでトレースを見つけるための詳細については、以下を参照してください。

無限トレースの設定(推奨)

APMエージェントの標準分散トレース(上記)は、トレースの最大10%をキャプチャしますが、すべてのデータを分析して最も関連性の高いトレースを見つけたい場合は、無限トレースを設定できます。

ヒント

この機能の詳細については、「 無限トレース」を参照してください。

開始する前に、まず要件を満たしていることを確認してください。

手順1.新しいエージェントのインストールを完了します

Infinite Tracingセットアップは、標準の分散トレース用の新しいエージェントインストールからのインストルメンテーションステップに基づいています。エージェントのインストールが完了したら、トレースオブザーバーのセットアップを続行します。

ステップ2.トレースオブザーバーを設定します

トレースオブザーバーは、すべてのトレースを収集して分析するNewRelicAWSベースのサービスです。トレースオブザーバーの設定の手順に従います。完了したら、トレースオブザーバー情報をここに戻し、次の手順に進んでエージェントを構成します。

手順3:エージェントを無限トレース用に構成する

無限トレース構成設定には、標準の分散トレースに加えて、トレースオブザーバーに関する情報が含まれます。サーバー側の構成は、無限トレースでは使用できないことに注意してください。

ヒント

プロキシ設定についてサポートが必要な場合は、 プロキシサポートを参照してください。

ステップ4.(オプション)無限トレースをカスタマイズする

エージェント構成設定を追加すると、NewRelicUIにデータが表示されるようになります。データの分析に時間を費やした後、無限トレースの機能のいくつかを調整することをお勧めします。

古いRubyエージェントのオプション

古いRubyエージェントを使用している場合は、有効にする前に、必要な分散トレース機能がサポートされていることを確認してください。

互換性ガイド

以下の互換性情報を確認した後、 「古いRubyエージェントの構成」を参照してください

古いRubyエージェントを構成する

分散トレースを有効にするには、以下の設定を参照してください。

ヒント

分散トレースを使用せずに古いエージェントを使用している場合は、分散トレースをオンにする前に、APMへの影響を確認してください。

手動計装(自動計装が機能しない場合)

推奨事項:カスタムインストルメンテーションを実行する前に、以下をお読みください。

サービスがトレースヘッダーを他のサービスに渡していない場合は、分散トレースペイロードAPIを使用して、呼び出し元のサービス呼び出されたサービスをインストルメント化できます。呼び出し元のサービスは、API呼び出しを使用してペイロードを生成します。このペイロードは、呼び出されたサービスによって受け入れられます。

Copyright © 2022 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.