지원되는 Node.js 라이브러리 및 프레임워크
Instana ( Node.js ) Tracer 패키지는 다음 Node.js 라이브러리 및 프레임워크에 대한 추적 기능을 지원합니다.
Node.js 애플리케이션 모니터링에 대한 자세한 내용은 Node.js 를 참조하십시오.
“ npm 패키지 버전” 열은 특정 라이브러리나 프레임워크에 필요한 Instana Node.js Tracer 패키지의 최소 버전을 나타냅니다. 자세한 내용은 GitHub 의 변경 내역을 참조하십시오.
HTTP
다음 표는 Instana Node.js Tracer 패키지가 지원하는 HTTP 라이브러리를 요약한 것입니다:
| 라이브러리 | 지원 policy | Instana 의 최소 요구 사양: npm 버전 | 계측 식별자 [1] |
|---|---|---|---|
| Express 오류 처리 및 경로 템플릿 | 45일 | 1.32.0, 1.43.0 | express |
| fastify | 45일 | 1.44.0 | fastify |
| HTTP | 0일 | 1.10.0 | httpClient,httpServer |
| https | 0일 | 1.10.0 | httpClient,httpServer |
| http2 | 0일 | 1.103.0 | http2Client, http2Server |
| node-fetch | 0일 | 3.9.0 | node-fetch |
| @hapi/hapi 경로 템플릿 | 45일 | 1.68.0 | hapi |
| koa-router 경로 템플릿 | 45일 | 1.56.0 | koa |
| 슈퍼 에이전트 | 45일 | 1.102.0 | superagent |
| FETCH | 0일 | 2.15.0 | nativefetch |
| TSOA | 45일 | 1.140.0 | tsoa |
RPC
다음 표는 Instana Node.js Tracer 패키지가 지원하는 RPC 라이브러리를 요약한 것입니다:
| 라이브러리 | 지원 정책 | Instana 의 최소 요구 사양: npm 버전 | 계측기 식별자 [1:1] |
|---|---|---|---|
| @apollo/federation [2] | 더 이상 사용되지 않음 | 1.87.0 | graphql |
| @apollo/서버 | 45일 | 4.12.0 | graphql |
| @apollo/subgraph | 45일 | 3.1.2 | graphql |
| @grpc/grpc-js | 45일 | 1.5.7 | grpc |
| graphql | 45일 | 1.69.0 | graphql |
데이터베이스
다음 표는 Instana Node.js 트레이서가 지원하는 데이터베이스 라이브러리를 요약한 것입니다:
| 라이브러리 | 지원 policy | Instana 의 최소 요구 사양: npm 버전 | 계측기 식별자 [1:2] |
|---|---|---|---|
| @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 |
| PG | 45일 | 1.44.2 | pg |
| pg-native | 45일 | 1.86.0 | pgnative |
| redis | 45일 | 1.31.0 | redis |
| ioredis | 45일 | 1.33.0 | ioredis |
| 속편으로 만들다 | 45일 | 드라이버의 구체적인 버전에 따라 다릅니다 [3] | sequelize |
| ibm-db | 45일 | 2.2.0 | db2 |
| Couchbase | 45일 | 2.21.0 | couchbase |
| 지루한 | 45일 | 3.2.0 | |
| oracledb | 45일 | 4.24.0 |
메시징
다음 표는 Instana Node.js Tracer 패키지가 지원하는 메시징 라이브러리를 요약한 것입니다:
| 라이브러리 | 지원 policy | Instana 의 최소 요구 사양: npm 버전 | 계측기 식별자 [1:3] |
|---|---|---|---|
| node-nats-streaming | 더 이상 사용되지 않음 | 1.72.0 | natStreaming |
| nats | 45일 | 1.72.0 | nats |
| amqplib | 45일 | 1.51.0 | amqplib |
| kafka-node | 더 이상 사용되지 않음 | 1.20.0 | kafkanode |
| 카프카JS | 45일 | 1.83.0 | kafkajs |
| node-rdkafka | 45일 | 1.139.0 | rdkafka |
| 카프카-아브로 | 더 이상 사용되지 않음 | 1.139.0 | |
| Bull | 45일 | 1.119.0 | bull |
| socket.io | 45일 | 2.24.0 | |
| socket.io-client | 45일 | 2.24.0 | |
| @confluentinc/kafka-javascript | 45일 | 5.1.0 |
클라우드 서비스
다음 표는 Instana Node.js Tracer 패키지가 지원하는 클라우드 서비스 라이브러리를 요약한 것입니다:
| 라이브러리 | 지원 policy | Instana 의 최소 요구 사양: npm 버전 | 계측기 식별자 [1:4] |
|---|---|---|---|
| aws-sdk [4] [5] [6] | 45일 | 1.114.0 | aws-sdk/v2 |
| @aws-sdk/client-sqs [4:1] [5:1] | 45일 | 1.132.0 | aws-sdk/v3 |
| @aws-sdk/client-s3 | 45일 | 1.129.0 | aws-sdk/v3 |
| @aws-sdk/client-dynamodb | 45일 | 1.127.0 | aws-sdk/v3 |
| @aws-sdk/client-kinesis | 45일 | 2.30.0 | aws-sdk/v3 |
| @aws-sdk/client-lambda | 45일 | 2.34.0 | aws-sdk/v3 |
| @google-cloud/storage | 45일 | 1.105.0 | gcp/storage |
| @google-cloud/pubsub [4:2] (>= 1.2.0 ) | 45일 | 1.107.0 | gcp/pubsub |
| sqs-소비자 | 45일 | 1.119.3 | sqs-consumer |
| @azure/storage-blob | 45일 | 3.4.0 | azure/blob |
로깅
비동기
기타
다음 표는 Instana Node.js 트레이서가 지원하는 기타 라이브러리를 요약한 것입니다:
| 라이브러리 | 지원 policy | Instana 의 최소 요구 사양: npm 버전 | 계측기 식별자 [1:7] |
|---|---|---|---|
| edgemicro ( 2.4, 2.5, >= 3.x ) [7] | 45일 | 1.89.0 | |
| fs | 45일 | 2.24.0 |
- NATS의 경우: NATS에는 메시지 헤더가 없기 때문입니다. 자세한 내용은 NATS 추적 문서를 참조하십시오.
- NATS 스트리밍의 경우: NATS 스트리밍에는 메시지 헤더가 없기 때문입니다. 자세한 내용은 NATS 추적 문서를 참조하십시오.
- npm 패키지를 사용하여
kafka-node메시지를 전송하거나 수신할 때: 해당 패키지는 Kafka 레코드 헤더를 지원하지 않기 때문입니다. 자세한 내용은 kafka-node#763 및 kafka-node#1309 을 참조하십시오. 일반적으로 Kafka 부터 Kafka 의 트레이스 연속성이 지원되며, 다른 런타임의 경우 0.11 에서도 지원됩니다. 또한 해당 패키지를 사용할kafkajs때도 마찬가지입니다. 따라서 Node.js 애플리케이션에서 Kafka 및 Instana 을 사용할 때는 대신kafka-node을kafkajs사용해야 합니다. - 를
node-rdkafka사용하여 메시지를 스트림 으로 생성할 때,objectModetrue옵션이 로 설정되어 있지 않은 경우.
인스트루멘테이션 식별자는 애플리케이션 구성에서 특정 라이브러리에 대한 추적을 활성화하거나 비활성화하는 데 사용되는 내부 이름입니다. 식별자가 없는 경우, 해당 계측 도구는 이러한 기능을 지원하지 않습니다. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
Instana Sequelize 자체를 직접 처리하는 것이 아니라, 그 기반이 되는 데이터베이스 드라이버를 처리합니다. Sequelize 작업에 대한 가시성은 sequelize와 함께 사용하는 데이터베이스 라이브러리에 따라 다릅니다(
mysql,mysql2,mssql,pg,pg-native). ↩ ︎AWS SQS,
kafkajskafka-node,node-rdkafka,RabbitMQ,amqplib,, NATS, NATS streaming 또는 Google Cloud PubSub, 가 포함된 메시지를 수신한 후 후속 호출을 올바르게 캡처하려면 및span.end()를span.disableAutoEnd()사용해야 합니다. 자세한 내용은 ‘스팬 수동 종료’를 참조하십시오. ↩︎ ↩︎ ↩︎AWS SQS 또는 와
async함께 Promise를 사용할 때는await수동으로 비동기 컨텍스트를 복원 해야 합니다. ↩︎ ↩︎AWS SDK v2 는 공식적으로 사용 중단되었습니다. 자세한 내용은 AWS 의 SDK v3 마이그레이션 문서를 참조하세요.↩︎
Apigee 마이크로게이트웨이 또는 엣지마이크로를 사용하려면 추가 설치 단계가 필요합니다. 이 사용 사례에 대한 자세한 내용은 설치 안내를 참조하십시오. ↩︎