• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

ブラウザ監視とRubyエージェント

Ruby エージェントを使用すると、ブラウザ監視エージェントを自動または手動で Web ページに挿入できます。 デフォルトでは、Ruby エージェントが Javascript を検出すると、自動的にがインストールされます。

ブラウザ監視を手動で追加する場合、または Browseragent のインストールオプションについて詳しく知りたい場合は、 Browseragent インストレーション ガイドを参照してください

要件

自動browserインストゥルメントは、 Rubyエージェントのサポートされているすべてのバージョンで利用できます。 自動インストゥルメンテーションの環境が準備されていることを確認するには、 ブラウザの互換性と要件ガイドを確認してください。

オートインストルメントの使用

New Relicのデフォルト設定では、ブラウザ監視の自動ログインが有効になっています。

browser_monitoring:
auto_instrument: true

これはモニターエンドユーザーになる最も簡単な方法です。 Rubyエージェントは、アプリケーションの各ページが読み込まれるときにそれを調べ、 browser JavaScript をヘッダーに自動的に挿入します。 自動インストゥルメンテーションは、Rack を使用する環境で機能します。 パフォーマンス上の理由から、エージェントは、ヘッダー インストゥルメント ポイントを探すために、アプリケーションの応答の最初の 50,000 行のみをスキャンします。 X-UA-Compatibleメタ タグが存在し、 <head>タグが 50k を超える場合、自動インストゥルメンテーションは正常に失敗します。

自動インストゥルメンテーションは、 X-UA-Compatibleメタ タグを検索し、その直後に JavaScript を挿入します。 オートインストゥルメンテーションがX-UA-Compatibleメタ タグを見つけられない場合は、開始ヘッド タグの後に挿入されます。 できない場合は、開始 body タグの後に挿入されます。 これらのタグのいずれかが条件文またはコメントで囲まれている場合、自動インストゥルメンテーションは失敗する可能性があります。

自動ストリーミングは、添付ファイル「Content-Type」があるページやストリーミング要求を検出した場合には実行されません。

自動インポートでアプリケーションのページを正しくインポートできない場合は、エージェント を使用して 手動でインポートするAPI 必要があります。

エージェントAPIを介した手動での計測

ページに適切なスクリプトを含めることで、エンドユーザーの監視を手動で設定できます。 New Relic Ruby エージェントの API を使用してスクリプトを生成します。 API はこのスクリプトをページに挿入します。

例えば、アプリケーションのテンプレートを変更してエージェントを呼び出すには、次のようにします。

<head>
<%= ::NewRelic::Agent.browser_timing_header rescue "" %>
# existing template code ...
</head>

CSP Nonceのサポート

コンテンツ セキュリティ ポリシーが「unsafe-inline」に設定されている場合、Browseragent を自動的に計装できます。 CSP Nonce を使用する場合は、手動で設定を追加する必要がある場合があります。

Rails CSP ノンス

Rails バージョン 5.2 以降には、 API を使用して CSP nonce を設定する機能が含まれています。 Rubyエージェントバージョン9.10.0以降では、Rails CSP nonceが自動的に検出され、Browserエージェントインジェクションスクリプトに適用されます。

この機能を無効にするには、 newrelic.ymlを次のように更新します。

browser_monitoring:
content_security_policy_nonce: false

または、環境変数NEW_RELIC_BROWSER_MONITORING_CONTENT_SECURITY_POLICY=falseを設定します。

API呼び出し

Ruby エージェント バージョン 7.1.0 以降では、CSP nonce をNewRelic::Agent.browser_timing_header API に渡すことができます。

このメソッドに nonce を渡す場合は、ブラウザ監視の自動インストゥルメンテーションを無効にし、エージェントAPI経由で手動インストゥルメンテーションを使用する必要があります。

newrelic.ymlを次のように更新します:

browser_monitoring:
auto_instrument: false

または、環境変数NEW_RELIC_BROWSER_MONITORING_AUTO_INSTRUMENT=falseを設定します。

API メソッドに nonce を引数として渡して、エージェントがブラウザのインストルメンテーションに nonce を挿入できるようになりました。たとえば、 NewRelic::Agent.browser_timing_header(nonce)

トラブルシューティング

Browserデータが報告されない場合は、HTMLソースを表示し、次のような2つのスクリプトブロックがHTMLヘッドにあることを確認します。

<script type="text/javascript">
window.NREUM||(NREUM={});...
</script>

これらが存在しない場合は、以下を確認してください。

  • 自動ログイン設定
  • テンプレートファイル内の手動インストゥルメンテーションの配置
  • ノンスを適用する方法

オートインストルメントの無効化

auto-instrumentのデフォルト値はtrueです (指定されていない場合でも)。 自動インストゥルメンテーションを無効にするには、このフラグをfalseに設定します。

browser_monitoring:
auto_instrument: false

特定のコントローラーまたはコントローラー アクションに対してのみ自動ログインを無効にするには、 newrelic_ignore_enduserを使用します。 サーバー側のインストゥルメンテーションはこの呼び出しの影響を受けません。

Copyright © 2024 New Relic株式会社。

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