対応 Node.js ライブラリとフレームワーク

Instana Node.js Tracer パッケージは、以下の Node.js ライブラリとフレームワークのトレースをサポートしています。

Node.js アプリケーションの監視の詳細については、 Node.js 監視」を参照してください。

npm パッケージバージョン」列は、特定のライブラリまたはフレームワークに必要な Instana Node.js Tracer パッケージの最小バージョンを示します。 詳しくは、 GitHub の変更履歴をご覧ください。

HTTP

次の表は、Instana Node.js Tracer パッケージがサポートする HTTP ライブラリの概要です:

ライブラリー サポート・ポリシー 最小サポート対象 Instana npm バージョン 計測器の識別子 [1]
エクスプレス・ エラー処理と パス・テンプレート 45 日間 1.32.0, 1.43.0 express
ファスティファイ 45 日間 1.44.0 fastify
HTTP またはHTTPクライアント 0日 1.10.0 httpClient
HTTP またはHTTPサーバー 0日 1.10.0 httpServer
HTTP/2 顧客 0日 1.103.0 http2Client
HTTP/2 サーバー 0日 1.103.0 http2Server
hapi パステンプレート 45 日間 1.68.0 hapi
koa-router パステンプレート 45 日間 1.56.0 koa
リクエスト・プロミス [2] 非推奨 1.10.0
リクエスト [3] 非推奨 1.10.0
スーパーエージェント 45 日間 1.102.0 superagent
フェッチ 0日 2.15.0 nativefetch
TSOA 45 日間 1.140.0 tsoa

データベース

次の表は、Instana Node.js Tracer でサポートされるデータベースライブラリの概要です:

ライブラリー サポート・ポリシー 最小サポート対象 Instana npm バージョン 楽器識別子 [1:2]
Elasticsearch クライアント (@elastic/elasticsearch) 45 日間 1.96.0 elasticsearch
Memcached(>= 2.2.2) 45 日間 1.126.0 memcached
MongoDB(>= 2.2) 45 日間 1.13.0 mongodb
マングース 45 日間 1.13.0 mongoose
MySQL 45 日間 1.29.0 mysql
MySQL2 45 日間 1.37.1 mysql2
MSSQL 45 日間 1.47.0 mssql
プリズマ 45 日間 2.11.0 prisma
Postgres 45 日間 1.44.2 pg
Postgres (pg-native) 45 日間 1.86.0 pgnative
Redis 45 日間 1.31.0 redis
Redis (ioredis) 45 日間 1.33.0 ioredis
Sequelize 45 日間 ドライバーの特定のバージョンに依存する [ 5] sequelize
IBM Db2 45 日間 2.2.0 db2
Couchbase 45 日間 2.21.0 couchbase

メッセージング

次の表は、Instana Node.js Tracer パッケージがサポートするメッセージングライブラリの概要です:

ライブラリー サポート・ポリシー 最小サポート対象 Instana npm バージョン 楽器識別子 [1:3]
NATS ストリーミング 非推奨 1.72.0 natStreaming
NATS 45 日間 1.72.0 nats
RabbitMQ/amqplib 45 日間 1.51.0 amqplib
Kafka -ノード 非推奨 1.20.0 kafkanode
カフカス 45 日間 1.83.0 kafkajs
node-rdkafka 45 日間 1.139.0 rdkafka
Bull 45 日間 1.119.0 bull

クラウド・サービス

次の表は、Instana Node.js Tracer パッケージがサポートするクラウドサービスライブラリの概要です:

ライブラリー サポート・ポリシー 最小サポート対象 Instana npm バージョン 楽器識別子 [1:4]
AWS SDK v2 SQS [6] [7] [8:1] 45 日間 1.114.0 aws-sdk/v2
AWS SDK v3 SQS [6:1] [7:1] 45 日間 1.132.0 aws-sdk/v3
AWS SDK v2S3 [8:2] 45 日間 1.115.0 aws-sdk/v2
AWS SDK v3 S3 45 日間 1.129.0 aws-sdk/v3
AWS SDK v2 DynamoDB [8:3] 45 日間 1.116.0 aws-sdk/v2
AWS SDK v3 DynamoDB 45 日間 1.127.0 aws-sdk/v3
AWS SDK v2 SNS [8:4] 45 日間 1.136.0 aws-sdk/v2
AWS SDK v2 Kinesis [8:5] 45 日間 1.120.0 aws-sdk/v2
AWS SDK v3 キネシス 45 日間 2.30.0 aws-sdk/v3
AWS SDK v2 Lambda [8:6] 45 日間 1.122.0 aws-sdk/v2
AWS SDK v3 ラムダ 45 日間 2.34.0 aws-sdk/v3
Google Cloud Storage 45 日間 1.105.0 gcp/storage
PubSubGoogle Cloud [6:2] (≥ 1.2.0 ) 45 日間 1.107.0 gcp/pubsub
SQSコンシューマー 45 日間 1.119.3 sqs-consumer
Azure ストレージ Blob 45 日間 3.4.0 azure/blob

ロギング

次の表は、Instana Node.js トレーサーでサポートされているロギング ライブラリの概要です:

ライブラリー サポート・ポリシー 最小サポート対象 Instana npm バージョン 楽器識別子 [1:5]
バニヤン 45 日間 1.54.0 bunyan
エクスプレス・ウィンストン 45 日間 1.88.0 winston
log4js 45 日間 1.84.0 log4js
ピノ 45 日間 1.52.0 pino
ウィンストン (>= 3.x )。 45 日間 1.53.0 winston
ウィンストン (<= 2.x ) 45 日間 1.88.0 winston

その他

次の表は、Instana Node.js Tracer でサポートされているその他のライブラリの概要です:

ライブラリー サポート・ポリシー 最小サポート対象 Instana npm バージョン Comment
Apigee Microgateway/edgemicro ( 2.4, 2.5, >= 3.x ) 45 日間 1.89.0 追加のインストール手順が必要です。 [9]
  • NATSの場合:NATSにはメッセージヘッダがない。 詳しくは NATSのトレースに関するドキュメントをご覧ください。
  • NATSストリーミングの場合:NATSストリーミングにはメッセージヘッダがないため。 詳しくは NATSのトレースに関するドキュメントをご覧ください。
  • npmパッケージ kafka-node を使用してメッセージを送信または消費する場合:このパッケージは Kafka レコードヘッダをサポートしていないからです。 詳しくは kafka-node#763 そして kafka-node#1309. トレースの連続性は、 Kafka 0.11 から始まる Kafka の一般的なランタイムでサポートされており、 kafkajs パッケージを使用する場合にもサポートされている。 したがって、 Node.js アプリケーションで Kafka と Instana を使用する場合は、 kafka-node の代わりに kafkajs を使用する必要があります。
  • を使用 node-rdkafka すると、オプション objectMode が に設定されていない true場合に、メッセージをストリームとして生成します。

OpenTelemetry 楽器

Instanaは、ライブラリーのカバレッジを高めるために、特定の OpenTelemetry インストゥルメンテーションを使用する。

次の表は、Instana Node.js Tracers がサポートする OpenTelemetry 測定器の概要です:

ライブラリー サポート・ポリシー 最小サポート対象 Instana npm バージョン 楽器識別子 [1:7]
fs 45 日間 2.24.0
oracleDb 45 日間 4.24.0
restify 45 日間 2.24.0
socket.io 45 日間 2.24.0
socket.io-client 45 日間 2.24.0
tedious 45 日間 3.2.0
注: OpenTelemetry との統合で問題が発生した場合は、無効にすることができます。 統合を無効にする方法の詳細については、 OpenTelemetry の統合を無効にするを参照してください。
  1. インストルメンテーション識別子は 特定のライブラリのトレースを有効または無効にするためにアプリケーション構成で使用される内部名です。↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  2. npm request-promiseライブラリは正式に非推奨となった。 詳しくは request-promiseを参照。

  3. npm リクエスト・ライブラリは正式に非推奨となった。 詳細はリクエストを参照。

  4. アポロ連盟ライブラリーは正式に非推奨となった。 詳細はアポロ連盟を参照。

  5. Instanaは Sequelizeを直接計測するのではなく、基盤となるデータベースドライバを計測します。 sequelizeアクションへの可視性は、sequelizeと共に使用しているデータベースライブラリによって異なります (mysql, mysql2, mssql, pg, pg-native)。

  6. SQS、NATS、NATS AWS ストリーミング、 amqplibRabbitMQnode-rdkafkaまたはでメッセージ kafkajsを受信した後、後続の呼び出し Google CloudPubSub, を kafka-node正しくキャプチャするには、 span.end()span.disableAutoEnd() とを使用する必要があります。 詳細については、 スパンを手動で終了するを参照してください。↩︎ ↩︎ ↩︎

  7. AWS SQSでは、Promiseを使用する場合、 手動で非同期コンテキストを復元する必要があります。 async または await. ↩︎ ↩︎

  8. AWS SDKは正式に v2 廃止されました。 詳細については、 SDK v3 移行 ↩ AWS を参照してください。
  9. Apigeeマイクロゲートウェイまたはedgemicroを使用するには、追加のインストール手順が必要です。 このユースケースの詳細については、 インストール手順を参照してください。 ↩︎