Node.js用エージェントは、Node Package Manager (npm)リポジトリとGitHubで公開されています。Node.jsエージェントをインストールする前に、お使いのアプリケーションが以下のシステム要件を満たしていることを確認します。
Node.jsバージョンのサポート
ヒント
パフォーマンスを最大化するために、Node.jsの最新のアクティブな長期サポート(LTS)バージョンを使用してください。
新しいNode.jsリリースのサポート
当社は、以下のアクティブな長期サポートスケジュールの開始によってNode.jsリリースの最新偶数バージョンをサポートします。バージョンサポートポリシーは、一般的なエージェントおよびプラグイン有効期限(EOL)ポリシーを置き換えません。
提案される時間範囲を以下に示します。実際のリリース日は異なる可能性があります。
Node.jsのバージョン | アクティブな長期サポート(LTS)開始日 | サポート付きNode.jsエージェントの初期リリース日 |
---|---|---|
14 | 2020年10月 | 2020年4月~10月 |
12 | 2019年10月22日 | 2019年11月 |
EOLに到達するNode.jsリリースのサポート終了日
新しい長期サポートエージェントバージョンのサポートが利用可能になると、同じ期間中に有効期限を迎えるNode.jsエージェントのバージョンのサポートは同時に終了します。
提案される時間範囲を以下に示します。実際のリリース日は異なる可能性があります。
Node.jsのバージョン | 有効期限(EOL)日 | Node.jsエージェントのサポート終了の初期リリース日 |
---|---|---|
10 | 2021年4月 | 2021年4月~10月 |
8 | 2019年12月 | 2020年4月~10月 |
6 | 2019年4月 | 2019年11月 |
Node.js 12のエラー
Node.js 12の場合、以下の変更によってNode.jsエージェントが影響を受けます。
未処理の拒否につながったエラーは、その拒否されたpromiseの作成時にアクティブであったトランザクションに絞り込まれません。これは、init非同期hookのトリガーに責任を有するpromiseはもはやそのpromiseのwrapインスタンス上を通過しないからです。これによって、スケジュールされていたトランザクションに任意のpromise拒否を関連付けるリンクが遮断されます。
サポートされているNode.jsフレームワーク
- Express 4.6.0またはそれ以降
- Restify
- Connect v1とv2(ルーターはサポート対象外)
- Hapi
- Koa 2.0.0またはそれ以降(エージェントとともに外部モジュールがロードされます)
サポートされているフレームワークをデフォルトのルーターとともに使用している場合、Node.jsエージェントはフレームワークのルート名をそのまま読み取ることができます。ただし、フレームワークが提供する名前より固有な名前が必要な場合は、New RelicがNode.jsトランザクションネーミングAPI によって提供する1つ以上のツールを使用できます。
オペレーティングシステム
- Linux
- SmartOS
- MacOS 10.7以降
- Windows Server 2008以降
データストア
Node.jsエージェントは、以下のデータストアに対するNode.jsアプリケーション呼び出しのパフォーマンスを監視します。
インスタンスの詳細
さまざまなデータベースとデータベースドライバを対象にインスタンスの詳細を収集できます。APMにおいて個々のインスタンスおよびデータベース情報の種類が見えるかどうかは、エージェントのバージョンによって異なります。
New RelicのNode.jsエージェントのバージョン1.31.0以降では、以下をサポートします。
データベース |
| 最小モジュールバージョン | エージェントの最小バージョン |
---|---|---|---|
4.0.0 | 1.31.0 | ||
2.0.0 | 1.31.0 | ||
2.1.0 | 1.32.0 | ||
2.4.1 | 1.32.0 | ||
1.0.0 | 1.33.0 |
現在New Relicエージェントにリストされてないデータストアからインスタンスレベルの情報をリクエストするには、support.newrelic.comまでお問い合わせください。
メッセージキュー
メッセージキューのインストゥルメンテーションは、New Relic Node.js エージェントv2以降でのみ利用可能です。現在サポートされているメッセージキューのインストゥルメンテーション:
amqplib
他のメッセージキューライブラリには、カスタムインストゥルメンテーションを使用します。
ホスティングサービス
プロセスマネージャ
一般に、Node.jsの起動、停止、および再開を処理するプロセスマネージャは(Foreverなど)、Node.jsエージェントと互換性がある必要があります。PM2を使用している場合、PM2の最小サポートバージョンは2.0です。
セキュリティ要件
標準的な データ収集のセキュリティ対策として、アプリケーションサーバーはSHA-2(256ビット)をサポートしている必要があります。SHA-1はサポートされていません。
エージェントを他のNew Relic機能に接続する
Node.jsエージェントはその他の機能と統合し、full-stack observabilityを実現します:
製品 | インテグレーション |
---|---|
自動インストゥルメンテーションを有効にすると、Node.jsエージェントは自動的にBrowserモニタリングエージェントを挿入します。Browserモニタリングインジェクションを有効化したあと、APMの概要ページでBrowserデータを見ることや、特定のアプリケーションに対してAPMとBrowserデータを素早く切り替えることが可能です。設定オプションと手動インストゥルメンテーションについては、ブラウザのモニタリングとNode.jsエージェントをご覧ください。 | |
InfrastructureとAPMエージェントを同じホストにインストールすると、それぞれが自動的にお互いを検出します。その後APM UIでホストのリストを見て、Infrastructure UIでAPMアプリを基準にInfrastructureホストをフィルタリングできます。詳しくは、インフラストラクチャモニターにおけるAPMデータをご覧ください。 | |
Node.jsエージェントは、NRQLクエリのためにデフォルトのイベントと属性を送信します。高度な分析のためにカスタムイベントを記録することも可能です。 | |
SyntheticトランザクショントレースはSyntheticsモニターからのリクエストを基になるAPMトランザクションに結びつけます。 |
その他のヘルプ
さらに支援が必要な場合は、これらのサポートと学習リソースを確認してください:
- Explorers Hubを参照して、コミュニティから支援を受け、ディスカッションに参加してください。
- 当社のサイトで回答を見つけ、サポートポータルの使用方法について学びます。
- Linux、Windows、およびmacOSのトラブルシューティングツールであるNew Relic Diagnosticsを実行します。
- New Relicのデータセキュリティとライセンスドキュメントを見直してください。