Node.jsエージェントには、最も一般的なNode.jsフレームワーク、アプリケーションサーバー、データベース、およびメッセージキューシステムのビルトイン・インストゥルメンテーションが含まれています。追加設定なしでインストゥルメントされていないフレームワークとライブラリに関しては、Node.jsエージェントAPIでエージェントを拡張できます。
Node.js用エージェントは、Node Package Manager(npm)リポジトリとGitHubで公開されています。New RelicのNode.jsエージェントを試してみませんか?New Relicアカウントを作成します。
エージェントのインストール要件
エージェントをインストールする前に、お使いのシステムが最小要件を満たしていることを確認してください。パフォーマンスを最大化するために、Node.jsの最新のアクティブな長期サポート(LTS)バージョンを使用してください。
Node.jsエージェントは、次のオペレーティングシステムに対応しています。
- Linux
- SmartOS
- MacOS 10.7以上
- Windows Server 2008以上
また、以下のホスティングサービスにも対応しています。
標準的な データ収集のセキュリティ対策として、アプリサーバーはSHA-2(256ビット)をサポートしている必要があります。SHA-1はサポートされていません。
当社は、以下のアクティブな長期サポートスケジュールの開始により、Node.jsリリースの最新バージョンをサポートします。バージョンサポートポリシーは、一般的な有効期限(EOL)ポリシーを置き換えません。
提案される時間範囲を以下に示します。実際のリリース日は異なる可能性があります。
Node.jsのバージョン | アクティブな長期サポート(LTS)開始日 | サポート付きNode.jsエージェントの初期リリース日 |
---|
20 | 2023年10月 | 2023年8月28日、Node.jsエージェントのv11.0.0を使用 |
18 | 2022年10月 | 2022年8月3日、Node.jsエージェントのv9.0.0を使用 |
16 | 2021年10月 | Node.jsエージェントv8.0.0を含む2021年7月26日 |
古いNode.jsバージョンのEOLの推奨時間範囲を以下に示します。実際のリリース日は異なる可能性があります。
Node.jsのバージョン | 有効期限(EOL)日 | Node.jsエージェントのサポート終了の初期リリース日 |
---|
14 | 2023年4月 | 2023年8月28日現在、Node.jsエージェントのv11を使用したNode.js 14のサポートを終了しました。 |
12 | 2022年4月 | 2022年8月3日現在、Node.jsエージェントのv9を使用したNode.js 12のサポートを終了しました。 |
10 | 2021年4月 | 2021年7月26日現在で、Node.jsエージェントのv8を使用したNode.js 10のサポートを終了しました。この移行の簡単な準備方法などの詳細については、サポートフォーラムの投稿を参照してください。 |
Node.jsを備えたインストゥルメント
インストール後、エージェントはサポートされているNode.jsライブラリとフレームワークのカタログを使用して自動インストゥルメントします。これにより、ウェブアプリケーションやサーバーに固有の詳細情報に即座にアクセスできます。
未対応のフレームワークまたはライブラリの場合、Node.jsエージェントAPIを使用してエージェントを自身でインストゥルメントする必要があります。
Node.jsエージェントは、以下のデータストアに対するNode.jsアプリケーション呼び出しのパフォーマンスを監視します。
- grpc-jsライブラリは、単項、ストリーミング、双方向のクライアント呼び出しでサポートされています。
Node.jsエージェントは、ネイティブのhttp
およびfetch
モジュールをインストゥルメントします。さらに、人気のあるundiciクライアントもサポートされています。
注:fetch
とundici
は両方ともバージョン11.1.0でサポートされています。
aws-sdkを使用したAmazon Web Services(AWS)へのすべての呼び出しが追跡されます。
コンテキストでAPMログをサポートするために、Node.jsエージェントは次のライブラリをインストゥルメントします。
ロギングライブラリ | npm モジュール名
| 最小モジュールバージョン | エージェントの最小バージョン |
---|
winston | winston
| 3.0.0 | 8.11.0 |
pino | pino
| 7.0.0 | 8.11.0 |
bunyan | bunyan
| 1.8.12 | 9.3.0 |
TypeScriptはJavaScriptにコンパイルできるプログラミング言語です。インストール後、Node.jsエージェントはTypeScriptアプリを自動インストゥルメントし、すぐにパフォーマンスデータにアクセスできるようにします。
ESモジュールは、共有/再利用のためにJavaScriptコードをパッケージ化するための公式標準です。Node.jsエージェントは、Node.jsバージョン16.12.0以降およびエージェントのバージョン9.1.0以降を実行する、ESモジュールアプリケーションの実験的サポートを提供します。以降およびエージェントのバージョン9.1.0以降追加情報と手順については、ESモジュールのドキュメントを参照してください。
フレームワーク | サポート対象バージョン | エージェントの最小バージョン | メモ |
---|
Express | 4.6.0以降 | | |
Restify | | | |
Connect | | | |
Hapi | 20.0.0以降 | 9.0.0 | エージェントのv9.0.0では、サポートされるHapiの最小バージョンをv20.0.0以降に更新しました。v20.0.0未満のすべてのバージョンは、セキュリティ上の理由からHapiにより非推奨とされています。サポートポリシーを参照してください。 |
Koa | 2.0.0以降 | | エージェントとともにロードされた外部モジュール |
Fastify | 2以降 | 8.5.0 | |
Nest.js | 8.0.0以降 | 10.1.0 | nest start コマンドを使用してアプリケーションを起動する場合は、New Relicエージェントを読み込むように起動バイナリを変更します。 nest start --exec 'node -r newrelic'
|
Next.js | 12.0.9- 13.3.0 | 10.1.0 | ミドルウェアインストゥルメンテーションにはv12.2.0以降が必要 |
サポートされているフレームワークをデフォルトのルーターとともに使用している場合、Node.jsエージェントはフレームワークのルート名をそのまま読み取ることができます。ただし、フレームワークが提供する名前より固有な名前が必要な場合は、New RelicがNode.jsトランザクションネーミングAPI によって提供する1つ以上のツールを使用できます。
有効期限(EOL)の通知
2021年11月に、いくつかの機能のサポートを終了しました。これには、Node.jsエージェント用のHapi 19.2より前のOracle Driver PackageとHapiバージョンが含まれています。この移行の準備方法などの詳細については、サポートフォーラムの投稿を参照してください。
Node.jsエージェントはその他の機能と統合し、スタック全体でのオブザーバビリティを実現します。