X-Ray セッション: キートランザクションのトレースとスレッドプロファイル

New Relic の X-Ray Sessions 機能を使用すると、長時間実行したプロファイラ結果の横にトランザクショントレースを示すことによって、キートランザクションのパフォーマンスをより深い洞察を得ることができます。トランザクショントレース数(デフォルトは50)と継続時間(デフォルトは1時間)を選択した後に、New Relic はトランザクションのトランザクショントレースとスレッドプロファイルを収集します。要求されたトレース数(最大100)、または指定された時間(最大1時間)のいずれかが経過すると収集は自動的に停止します。

目次

要件

X-Ray Sessions は、キートランザクションスレッドプロファイラーエージェントと同じ要件を必要とします。現在、X-Ray Sessions 機能は、New Relic APM の 有料アカウントかつ最新の JavaPythonRuby エージェントのみ利用可能です。

Python: WSGI 環境であり、サーバーがコルーチン(グリーンスレッド)を使用している場合、Python ユーザーは既存のスレッドプロファイラーや X-Ray セッションのスレッドプロファイルタブ内のスレッドプロファイリングデータを見ることができません。詳しくは、Python用エージェントのステータスをご覧ください。

Ruby: スレッドプロファイリングには、以下の制約があります。

  • お使いの Ruby エージェントのバージョンが 1.9.2 以降であること
  • MRI のみ推奨
  • Resque では利用できない

詳しくはスレッドプロファイラーについての Ruby メモをご覧ください。

イベントのスレッドプロファイラーと X-Ray セッション

完全なスレッドプロファイリングと特定の X-Ray セッションは両方とも、ツリー構造として結果を表示します。ツリー構造では、詳細情報にドリルダウンすることができます。しかし、両者の結果は同じものではありません。

  • 完全なスレッドプロファイリング (New Relic APM > Applications > (選択したアプリ) > Events > Thread profilerを選択します。) は、1つのホストまたは1つのプロセスが対象です。
  • X-Ray セッションは、アプリケーションを実行するすべてのホストまたはすべてのプロセス間でスレッドプロファイラーを実行します。その後、X-Ray セッションは、選択されたキーのトランザクションのプロファイラデータのみキャプチャします。X-Ray セッションは、選択した詳細にドリルダウンできる Thread Profile ページとトランザクショントレースについての Overview ページの両方を含んでいます。

X-Ray セッションは複数のプロセス間で実行されるので、New Relic は CPU の過負荷を回避するために自動的にサンプル間の時間を調整します。

関連情報

関連情報は次のとおりです。