• ログイン今すぐ開始

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

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

問題を作成する

ラックミドルウェア

Rubyエージェントは、 Rack ミドルウェアを自動的に計測します。Rackミドルウェアの基本に慣れていない場合は、Rails on Rackガイド からリンクされている のリソースを参照してください。また、RubyエージェントはRackミドルウェアを介していくつかの機能を提供します。

New Relic は、Rails と Sinatra 用のこれらのミドルウェアを自動的にインストールします。

ラックの計測器

Rackのミドルウェアを設定する最も一般的な方法は、 Rack::Builder API(最も多いのは config.ru )とRailsのミドルウェアスタック設定の2つです。

ミドルウェアデータの閲覧

ミドルウェアのデータをAPMで見ることができます。

ラックインストルメントの無効化

ラックミドルウェアをインスツルメンテーションしたくない場合は、 disable_middleware_instrumentation の設定でラックミドルウェアのインスツルメンテーションを無効にすることができます。また、 特定のトランザクションを無視することもできます。.

Rubyエージェント・ミドルウェアの手動インストール

New Relic の クロスアプリケーショントレース 機能の Ruby エージェントの実装では、Rack ミドルウェアのインスツルメンテーションを使用して、監視対象のアプリケーション間で情報の受け渡しに必要な HTTP ヘッダーを読み書きしています。Sinatra を使用していて、上記のようにミドルウェアのインスツルメンテーションを無効にしていて、クロスアプリケーショントレースを使用したい場合は、手動で NewRelic::Rack::AgentHooks ミドルウェアをミドルウェアスタックに追加する必要があります。

重要

バージョン8.0.0では、クロスアプリケーショントレースは廃止され、 分散型トレース が採用されています。この機能を有効にすると、ミドルウェアを追加することなく、すべてのラックベースのアプリに対して分散型トレーシングが自動的に設定されます。

クロスアプリケーショントレースを継続して使用したい場合は、 設定を更新する必要があります

ラックの手動計測器

以前のバージョンの Ruby エージェントでは、 NewRelic::Agent::Instrumentation::Rack モジュールを用いて Rack ミドルウェアを手動でインスツルメンテーションすることができました。このインスツルメンテーションは、ミドルウェアの自動インスツルメンテーションには不要なため、Rubyエージェントのバージョン3.9.0以降では非推奨となっています。New Relic では、3.9.0 以降にアップグレードした後は、このモジュールへの参照をコードから削除することをお勧めします。

Copyright © 2022 New Relic株式会社。

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