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

この機械翻訳は参考用に提供されます。

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

問題を作成する

Node.js v1 カスタム・インスツルメンテーション(レガシー)

New Relic for Node.js は、ほとんどの標準的な Web リクエストを自動的にインスツルメンテーションしますが、時には拡張インスツルメンテーションが必要な場合もあります。カスタムインスツルメンテーションでは、 ウェブソケットバックグラウンドジョブサポートされていないデータベース をインスツルメンテーションすることができます。また、カスタムインスツルメンテーションでは、 コードの特定のセクションをターゲットにして、より深い洞察を得ることができます。

カスタム・インスツルメンテーションは、Node.jsエージェントのバージョン1.10.0以降で利用可能です。最新の Node.js エージェントの機能を利用するには、 エージェントをアップグレードしてください

Webトランザクションのインストゥルメンテーション

WebsocketリクエストなどのWebトランザクションを計測するには、カスタムトランザクションを作成します。カスタムトランザクションを作成すると、エージェントが自動的に計測するトランザクションと同じ種類の可視性が得られます。

  1. インストルメントするハンドラーをcreateWebTransaction()でラップします。
  2. トランザクションの最後に必ずendTransaction()に電話してください。

重要

トランザクション名の末尾に角かっこ[suffix]を使用しないでください。 New Relicは、名前から角かっこを自動的に削除します。代わりに、必要に応じて括弧(suffix)またはその他の記号を使用してください。

バックグラウンド・トランザクションのインストゥルメンテーション

カスタムトランザクションを使用して、アプリ内の定期的なジョブやリクエストの完了後に継続する作業などのバックグラウンドタスクを計測することもできます。バックグラウンドタスクをインストルメントするには、インストルメントするハンドラーをcreateBackgroundTransaction()でラップします。トランザクションの最後にendTransaction()を呼び出すようにしてください。

トランザクション内でのインストゥルメンテーションの拡大

また、カスタム・インスツルメンテーションを使用して、すでにインスツルメンテーションされているウェブ・トランザクションの可視性を高めたり、自動的にインスツルメンテーションされていないデータベースやその他のトランザクション内の作業を把握したりすることもできます。そのためには、コールバックをカスタムトレーサーでラップします。カスタムトレーサーは、特定の関数やデータベースの呼び出しなど、既存のトランザクション内の追加セグメントに対して特定のメトリクスを作成し、収集します。

コールバックをインストルメント化するには、コールバックをcreateTracer()でラップします。非同期関数内で呼び出される関数をインストルメント化する場合は、ターゲット関数とその親非同期関数の両方をcreateTracer()でラップする必要があります。

ヒント

これらのサンプルは、すでにインスツルメンテーションされているトランザクションの中に置かなければなりません。トランザクションは、自動的にインスツルメンテーションされるか、カスタム・トランザクションを介してインスツルメンテーションされます。

Copyright © 2024 New Relic株式会社。

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