newrelic 13.20.0 → 14.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NEWS.md +125 -0
- package/README.md +1 -5
- package/THIRD_PARTY_NOTICES.md +584 -544
- package/api.js +95 -0
- package/lib/agent.js +12 -9
- package/lib/attributes.js +1 -2
- package/lib/collector/api.js +2 -20
- package/lib/collector/http-agents.js +4 -1
- package/lib/collector/remote-method.js +8 -19
- package/lib/config/default.js +43 -21
- package/lib/config/index.js +0 -190
- package/lib/context-manager/async-local-context-manager.js +2 -8
- package/lib/db/statement-matcher.js +1 -1
- package/lib/errors/index.js +0 -2
- package/lib/instrumentation/@prisma/client.js +12 -2
- package/lib/instrumentation/core/http-outbound.js +14 -31
- package/lib/instrumentation/core/http.js +17 -70
- package/lib/instrumentation/core/http2.js +2 -11
- package/lib/instrumentations.js +0 -4
- package/lib/logger.js +2 -1
- package/lib/metrics/recorders/apollo-resolver.js +40 -0
- package/lib/metrics/recorders/http.js +0 -2
- package/lib/metrics/recorders/http_external.js +1 -25
- package/lib/otel/metrics/index.js +8 -7
- package/lib/otel/metrics/nr-exporter.js +44 -0
- package/lib/otel/metrics/nr-proxying-delegate.js +42 -0
- package/lib/otel/metrics/nr-proxying-serializer.js +64 -0
- package/lib/otel/traces/constants.js +7 -0
- package/lib/otel/traces/rules.js +62 -16
- package/lib/otel/traces/span-processor.js +4 -1
- package/lib/otel/traces/transformation-rules/100-OtelHttpServer1_23.json +66 -0
- package/lib/otel/traces/transformation-rules/101-OtelHttpServerNextjs1_20.json +45 -0
- package/lib/otel/traces/transformation-rules/102-OtelHttpServer1_20.json +54 -0
- package/lib/otel/traces/transformation-rules/102-OtelRpcServer1_20.json +44 -0
- package/lib/otel/traces/transformation-rules/199-FallbackServer.json +17 -0
- package/lib/otel/traces/transformation-rules/200-OtelMessagingConsumer1_30.json +57 -0
- package/lib/otel/traces/transformation-rules/201-OtelMessagingConsumer1_24.json +51 -0
- package/lib/otel/traces/transformation-rules/202-OtelMessagingConsumer1_17.json +49 -0
- package/lib/otel/traces/transformation-rules/299-FallbackConsumer.json +18 -0
- package/lib/otel/traces/transformation-rules/300-OtelDbClientRedis1_40.json +41 -0
- package/lib/otel/traces/transformation-rules/301-OtelDbClientRedis1_24.json +41 -0
- package/lib/otel/traces/transformation-rules/302-OtelDbClientMongo1_40.json +47 -0
- package/lib/otel/traces/transformation-rules/303-OtelDbClientMongo1_24.json +47 -0
- package/lib/otel/traces/transformation-rules/304-OtelDbClient1_40.json +43 -0
- package/lib/otel/traces/transformation-rules/305-OtelDbClient1_24.json +43 -0
- package/lib/otel/traces/transformation-rules/306-OtelDbClientRedis1_17.json +46 -0
- package/lib/otel/traces/transformation-rules/307-OtelDbClientMongo1_17.json +47 -0
- package/lib/otel/traces/transformation-rules/308-OtelDbClientDynamo1_40.json +44 -0
- package/lib/otel/traces/transformation-rules/309-OtelDbClientDynamo1_17.json +49 -0
- package/lib/otel/traces/transformation-rules/310-OtelDbClient1_17.json +43 -0
- package/lib/otel/traces/transformation-rules/311-OtelDbClientPrisma1_40.json +28 -0
- package/lib/otel/traces/transformation-rules/312-OtelHttpClient1_23.json +66 -0
- package/lib/otel/traces/transformation-rules/313-OtelHttpClient1_17.json +66 -0
- package/lib/otel/traces/transformation-rules/314-OtelRpcClient1_23.json +59 -0
- package/lib/otel/traces/transformation-rules/315-OtelLambdaClient1_17.json +36 -0
- package/lib/otel/traces/transformation-rules/316-OtelRpcClient1_17.json +59 -0
- package/lib/otel/traces/transformation-rules/399-FallbackClient.json +16 -0
- package/lib/otel/traces/transformation-rules/400-Producer_1_30.json +46 -0
- package/lib/otel/traces/transformation-rules/401-Producer_1_24.json +46 -0
- package/lib/otel/traces/transformation-rules/402-ProducerSQS_1_17.json +61 -0
- package/lib/otel/traces/transformation-rules/403-Producer_1_17.json +40 -0
- package/lib/otel/traces/transformation-rules/499-FallbackProducer.json +16 -0
- package/lib/otel/traces/transformation-rules/999-Fallback.json +11 -0
- package/lib/otel/traces/transformation-rules/index.js +52 -0
- package/lib/shim/message-shim/index.js +4 -4
- package/lib/shim/shim.js +2 -40
- package/lib/shim/transaction-shim.js +10 -130
- package/lib/subscriber-configs.js +3 -0
- package/lib/subscribers/apollo-server/config.js +52 -0
- package/lib/subscribers/apollo-server/constants.js +49 -0
- package/lib/subscribers/apollo-server/request.js +355 -0
- package/lib/subscribers/apollo-server/resolve.js +242 -0
- package/lib/subscribers/aws-sdk/middleware/bedrock/index.js +3 -4
- package/lib/subscribers/aws-sdk/middleware/dynamodb/index.js +2 -3
- package/lib/subscribers/aws-sdk/middleware/nr-specific/attributes.js +2 -2
- package/lib/subscribers/aws-sdk/middleware/nr-specific/headers.js +3 -3
- package/lib/subscribers/aws-sdk/middleware/sns/index.js +3 -4
- package/lib/subscribers/aws-sdk/middleware/sqs/index.js +3 -4
- package/lib/subscribers/aws-sdk/utils/attach-headers.js +1 -1
- package/lib/subscribers/azure-functions/azure-handler-base.js +1 -1
- package/lib/subscribers/azure-functions/http-handler.js +1 -1
- package/lib/subscribers/base.js +8 -29
- package/lib/subscribers/bluebird/config.js +1 -1
- package/lib/subscribers/bluebird/instrumentation.js +3 -7
- package/lib/subscribers/cassandra-driver/config.js +5 -5
- package/lib/subscribers/dc-base.js +45 -4
- package/lib/subscribers/fastify/config.js +2 -2
- package/lib/subscribers/fastify/index.js +1 -1
- package/lib/subscribers/google-adk/agent-run-async.js +1 -2
- package/lib/subscribers/grpcjs/client.js +3 -12
- package/lib/subscribers/grpcjs/server.js +2 -2
- package/lib/subscribers/hapi/config.js +65 -0
- package/lib/subscribers/hapi/decorate.js +37 -0
- package/lib/subscribers/hapi/ext.js +77 -0
- package/lib/subscribers/hapi/render.js +28 -0
- package/lib/subscribers/hapi/route.js +73 -0
- package/lib/subscribers/kafkajs/client-constructor.js +6 -6
- package/lib/subscribers/koa/config.js +28 -0
- package/lib/subscribers/koa/middleware-wrapper.js +58 -0
- package/lib/subscribers/koa/use.js +86 -0
- package/lib/subscribers/message-consumer-tools.js +1 -1
- package/lib/subscribers/message-producer.js +2 -3
- package/lib/subscribers/middleware-wrapper.js +51 -31
- package/lib/subscribers/middleware.js +2 -2
- package/lib/subscribers/mysql/config.js +1 -33
- package/lib/subscribers/mysql/connection-query.js +72 -3
- package/lib/subscribers/mysql/pool-get-connection.js +0 -1
- package/lib/subscribers/mysql2/config.js +14 -56
- package/lib/subscribers/mysql2/connection-execute.js +2 -2
- package/lib/subscribers/mysql2/pool-get-connection.js +0 -2
- package/lib/subscribers/nestjs/config.js +1 -1
- package/lib/subscribers/undici/index.js +1 -24
- package/lib/symbols.js +1 -4
- package/lib/transaction/index.js +16 -82
- package/lib/transaction/trace/index.js +148 -67
- package/lib/transaction/trace/segment-tree.js +7 -15
- package/lib/transaction/trace/segment.js +24 -28
- package/lib/transaction/tracer/index.js +46 -28
- package/lib/util/attributes.js +1 -70
- package/lib/util/hashes.js +0 -30
- package/lib/util/label-parser.js +3 -2
- package/lib/util/logger.js +35 -2
- package/package.json +29 -37
- package/lib/config/lasp.js +0 -106
- package/lib/instrumentation/@hapi/hapi.js +0 -248
- package/lib/instrumentation/@hapi/vision.js +0 -44
- package/lib/instrumentation/fastify/spec-builders.js +0 -103
- package/lib/instrumentation/fastify.js +0 -100
- package/lib/instrumentation/koa/instrumentation.js +0 -177
- package/lib/instrumentation/koa/nr-hooks.js +0 -35
- package/lib/instrumentation/koa/route-instrumentation.js +0 -31
- package/lib/instrumentation/koa/router-instrumentation.js +0 -121
- package/lib/otel/traces/transformation-rules.json +0 -1371
- package/lib/subscribers/mysql/pool-namespace-query.js +0 -19
- package/lib/subscribers/mysql/pool-query.js +0 -41
- package/lib/subscribers/mysql2/pool-namespace-query.js +0 -19
- package/lib/subscribers/mysql2/pool-query.js +0 -19
- package/lib/transaction/trace/exclusive-time-calculator.js +0 -143
- package/lib/util/cat.js +0 -305
package/NEWS.md
CHANGED
|
@@ -1,3 +1,128 @@
|
|
|
1
|
+
### v14.1.0 (2026-06-02)
|
|
2
|
+
|
|
3
|
+
#### Features
|
|
4
|
+
|
|
5
|
+
* Added support for native Next.js OTEL instrumentation via the Hybrid Agent ([#4040](https://github.com/newrelic/node-newrelic/pull/4040)) ([1944f39](https://github.com/newrelic/node-newrelic/commit/1944f395de1a1f23a535b0188502eb257beb8c6a))
|
|
6
|
+
|
|
7
|
+
#### Bug fixes
|
|
8
|
+
|
|
9
|
+
* Updated label parser to handle empty values in an object key ([#4004](https://github.com/newrelic/node-newrelic/pull/4004)) ([73c00d7](https://github.com/newrelic/node-newrelic/commit/73c00d746822fa50e763d38302e6307b3e638dc1))
|
|
10
|
+
|
|
11
|
+
#### Code refactoring
|
|
12
|
+
|
|
13
|
+
* Migrate `@hapi/hapi` and `@hapi/vision` to subscriber-based ([#3995](https://github.com/newrelic/node-newrelic/pull/3995)) ([54c60a8](https://github.com/newrelic/node-newrelic/commit/54c60a841346737f6e6b42c4910381c0b98552a2))
|
|
14
|
+
* Refactored `koa` instrumentation to subscribe to events emitted ([#4016](https://github.com/newrelic/node-newrelic/pull/4016)) ([e1f6c27](https://github.com/newrelic/node-newrelic/commit/e1f6c27897e3e907d1d9768d73faf0a78f72961b))
|
|
15
|
+
* Updated MiddlewareWrapper `maybeHandleError` to only mark error as handled if there was a previously stored error ([#4032](https://github.com/newrelic/node-newrelic/pull/4032)) ([1b21cc8](https://github.com/newrelic/node-newrelic/commit/1b21cc89ce82055bde96815c8ac216d4af008684))
|
|
16
|
+
|
|
17
|
+
#### Documentation
|
|
18
|
+
|
|
19
|
+
* Removed linked to `@newrelic/apollo-server-plugin` as instrumentation was merged into agent ([#4003](https://github.com/newrelic/node-newrelic/pull/4003)) ([9afd9cb](https://github.com/newrelic/node-newrelic/commit/9afd9cb8d721e175f60d31dc7384b752632f9ae5))
|
|
20
|
+
* Moved `apollo-server` docs to the docs website ([#3994](https://github.com/newrelic/node-newrelic/pull/3994)) ([11ca2ae](https://github.com/newrelic/node-newrelic/commit/11ca2ae419ebc616bed4d072641cedb42b48be87))
|
|
21
|
+
* Updated compatibility report ([#4028](https://github.com/newrelic/node-newrelic/pull/4028)) ([b16ad6e](https://github.com/newrelic/node-newrelic/commit/b16ad6e2dfee69e424f1e54ee7f7c69207842339)) ([#4014](https://github.com/newrelic/node-newrelic/pull/4014)) ([3efa1ff](https://github.com/newrelic/node-newrelic/commit/3efa1ff3af27178c410ac7332e714f1d126d07dd)) ([#4002](https://github.com/newrelic/node-newrelic/pull/4002)) ([33a8236](https://github.com/newrelic/node-newrelic/commit/33a82361674d29e53db9b699048c7a7970445d7c))
|
|
22
|
+
|
|
23
|
+
#### Miscellaneous chores
|
|
24
|
+
|
|
25
|
+
* Deprecate `instrumentLoadedModule` API ([#4034](https://github.com/newrelic/node-newrelic/pull/4034)) ([306ff86](https://github.com/newrelic/node-newrelic/commit/306ff86e4ffeaaa094c3ee3f93e9248c74d3d4d1))
|
|
26
|
+
* Added audit logging for OTEL metrics ([#4018](https://github.com/newrelic/node-newrelic/pull/4018)) ([494c836](https://github.com/newrelic/node-newrelic/commit/494c8369176994c01e75b5bf1f28ff471654d31a))
|
|
27
|
+
* Added OTEL rule to support Prisma 7 ([#4013](https://github.com/newrelic/node-newrelic/pull/4013)) ([c142c60](https://github.com/newrelic/node-newrelic/commit/c142c60162cb9409946d8a1babb6f59cd569f6ea))
|
|
28
|
+
* Fix ordering of OTEL rules ([#4025](https://github.com/newrelic/node-newrelic/pull/4025)) ([150476a](https://github.com/newrelic/node-newrelic/commit/150476a61cd272a29ed7c03366e879f6eb009298))
|
|
29
|
+
* Refactored OTEL transform rules ([#3999](https://github.com/newrelic/node-newrelic/pull/3999)) ([48ff739](https://github.com/newrelic/node-newrelic/commit/48ff739e47a21a1ac5c0fa5673e8ef4fc4f153fb))
|
|
30
|
+
* Fixed node-version in CI workflow ([#4042](https://github.com/newrelic/node-newrelic/pull/4042)) ([dd05ea9](https://github.com/newrelic/node-newrelic/commit/dd05ea914e157278e56b0887ec89317dcc1852d8))
|
|
31
|
+
* Updated codecov action ([#4039](https://github.com/newrelic/node-newrelic/pull/4039)) ([31b9c84](https://github.com/newrelic/node-newrelic/commit/31b9c8416116c8b04293f53335540729e934c768))
|
|
32
|
+
* Updated remote-method to use audit method of logger ([#4038](https://github.com/newrelic/node-newrelic/pull/4038)) ([0e4507e](https://github.com/newrelic/node-newrelic/commit/0e4507e27a62f880f9748d675d2b2127b1605d0f))
|
|
33
|
+
* Added baseline instructions for Claude bot ([#4036](https://github.com/newrelic/node-newrelic/pull/4036)) ([c8f6649](https://github.com/newrelic/node-newrelic/commit/c8f66496764cab5e3361d4b0b0f21bd889356189))
|
|
34
|
+
* Updated dependencies
|
|
35
|
+
* Removed unused dev dependencies ([#4005](https://github.com/newrelic/node-newrelic/pull/4005)) ([e00f7d3](https://github.com/newrelic/node-newrelic/commit/e00f7d3132a8d7635a65162d80fd3217edad35f5))
|
|
36
|
+
* Updated `@apm-js-collab/tracing-hooks` to `0.9.1` ([#4043](https://github.com/newrelic/node-newrelic/pull/4043)) ([f05e5d4](https://github.com/newrelic/node-newrelic/commit/f05e5d473e641ed783ced0b1ef8b2fabc5df3502))
|
|
37
|
+
* Updated `commander` to latest ([#4021](https://github.com/newrelic/node-newrelic/pull/4021)) ([83b1d58](https://github.com/newrelic/node-newrelic/commit/83b1d5871bd70244ece463cbca23f34cbacfe6d7))
|
|
38
|
+
* Updated `nock` to latest ([#4022](https://github.com/newrelic/node-newrelic/pull/4022)) ([9bf79ab](https://github.com/newrelic/node-newrelic/commit/9bf79ab23eefabd22a529a26a7d3d75e7ff08a19))
|
|
39
|
+
* Updated `sinon` to latest ([#4020](https://github.com/newrelic/node-newrelic/pull/4020)) ([0ced304](https://github.com/newrelic/node-newrelic/commit/0ced30446a9be2711c96c0afa6453e6b87c014ad))
|
|
40
|
+
* Updated `protobufjs` to latest ([#4006](https://github.com/newrelic/node-newrelic/pull/4006)) ([45c61f3](https://github.com/newrelic/node-newrelic/commit/45c61f3624945553bfa5aac331c577255827f7bc))
|
|
41
|
+
* Upgraded `glob` to 13 ([#4008](https://github.com/newrelic/node-newrelic/pull/4008)) ([3053545](https://github.com/newrelic/node-newrelic/commit/3053545aa3c1ed673255887448b65f20137d670e))
|
|
42
|
+
* Upgraded `got` and `rimraf` to latest ([#4007](https://github.com/newrelic/node-newrelic/pull/4007)) ([b967593](https://github.com/newrelic/node-newrelic/commit/b9675938bfa0165b54f3df583577bfd36c70cdcd))
|
|
43
|
+
|
|
44
|
+
#### Tests
|
|
45
|
+
|
|
46
|
+
* Add stable `http.request` shim so AWS test agent setup works with smithy >=4.7.3 ([#4010](https://github.com/newrelic/node-newrelic/pull/4010)) ([c5fd80a](https://github.com/newrelic/node-newrelic/commit/c5fd80aeeae88f3ada7cd27219832cec49765040))
|
|
47
|
+
* Added an undici versioned test to assert behavior with using a self signed cert and `undici.Agent` ([#4026](https://github.com/newrelic/node-newrelic/pull/4026)) ([27507bc](https://github.com/newrelic/node-newrelic/commit/27507bc3678dd03ab232892be33959622b34a210))
|
|
48
|
+
* Refactor `mongodb-esm` tests to test `>=4.1.4` ([#4023](https://github.com/newrelic/node-newrelic/pull/4023)) ([d85767f](https://github.com/newrelic/node-newrelic/commit/d85767fa83e300610bfbe3a4b3e2e3d5ab8a6b91))
|
|
49
|
+
* Removed reliance on `glob` in lieu of `fs.glob` ([#4019](https://github.com/newrelic/node-newrelic/pull/4019)) ([204f124](https://github.com/newrelic/node-newrelic/commit/204f1242810135f24ae6e3b9543cd227c813b16d))
|
|
50
|
+
* Updated undici.Agent versioned test to skip using custom dispatcher on versions <5.2.0 as it was not supported ([#4029](https://github.com/newrelic/node-newrelic/pull/4029)) ([08cd079](https://github.com/newrelic/node-newrelic/commit/08cd07907748bf4deb2259d8e6572dcb49d51ad9))
|
|
51
|
+
|
|
52
|
+
### v14.0.0 (2026-05-18)
|
|
53
|
+
#### ⚠ BREAKING CHANGES
|
|
54
|
+
|
|
55
|
+
This version of the Node.js agent is a SemVer MAJOR update and contains the following breaking changes. MAJOR versions may drop support for language runtimes that have reached End-of-Life according to the maintainer. Additionally, MAJOR versions may drop support for and remove certain instrumentation. For more details on these changes please see the [migration guide](https://docs.newrelic.com/docs/apm/agents/nodejs-agent/installation-configuration/update-nodejs-agent/).
|
|
56
|
+
|
|
57
|
+
* Dropped support for Node.js 20
|
|
58
|
+
* Migrated `@apollo/sever` instrumentation from a plugin(`@newrelic/apollo-server-plugin`) to traditional instrumentation
|
|
59
|
+
* Removed Cross Application Tracing(CAT) functionality
|
|
60
|
+
* Removed support for License, Application, and Security Policies(LASP)
|
|
61
|
+
* Removed instrumentation for `koa-route`
|
|
62
|
+
* Removed instrumentation for `koa-router`
|
|
63
|
+
* Removed `shim.prefixRouteParameters` as the logic was previously moved to when a transaction ends
|
|
64
|
+
* Removed creating `MySQL Pool#query` segments
|
|
65
|
+
* Removed `shim.argsToArray`
|
|
66
|
+
* Updated minimum supported version of `@nestjs/cli` and `@nestjs/core` to `10.0.0`
|
|
67
|
+
* Updated minimum supported version of `next` to 14
|
|
68
|
+
* Updated minimum supported version of `bluebird` to `3.0.0`
|
|
69
|
+
* Updated minimum supported version of `mysql2` to `3.0.0`
|
|
70
|
+
* Updated minimum supported version for `cassandra-driver` to `4.0.0`
|
|
71
|
+
* Dropped support for `fastify` 3.x
|
|
72
|
+
* Updated `config.distributed_tracing.exclude_newrelic_header` to be set to `true` by default
|
|
73
|
+
|
|
74
|
+
#### Features
|
|
75
|
+
|
|
76
|
+
* Dropped support for `fastify` 3.x ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([720979b](https://github.com/newrelic/node-newrelic/commit/720979bccb65c93a143d1e069a32904bff78f02b))
|
|
77
|
+
* Dropped support for Node.js 20 ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([5306223](https://github.com/newrelic/node-newrelic/commit/530622314532e3c7eb4d8c3685e0b1974df61b8f))
|
|
78
|
+
* Migrated `@apollo/sever` instrumentation from a plugin(`@newrelic/apollo-server-plugin`) to traditional instrumentation ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([736e0a4](https://github.com/newrelic/node-newrelic/commit/736e0a40b78224e32e263a3aa0264c150d29982d))
|
|
79
|
+
* Removed `shim.argsToArray` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([9183d29](https://github.com/newrelic/node-newrelic/commit/9183d29c456aba6ad003bc0a365c14d9b5d3044c))
|
|
80
|
+
* Removed `shim.prefixRouteParameters` as the logic was previously moved to when a transaction ends ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([9f1408e](https://github.com/newrelic/node-newrelic/commit/9f1408e26b168733644b3c9160dc45726c4b0034))
|
|
81
|
+
* Removed creating `MySQL Pool#query` segments ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([1d5a6dd](https://github.com/newrelic/node-newrelic/commit/1d5a6dde7f5c1280079cdca859cc5a2fc3121556))
|
|
82
|
+
* Removed Cross Application Tracing(CAT) functionality ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([a87ed4d](https://github.com/newrelic/node-newrelic/commit/a87ed4dbd3aad072de81475601844efebd8353ac))
|
|
83
|
+
* Removed instrumentation for `koa-route` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([40c10d9](https://github.com/newrelic/node-newrelic/commit/40c10d90fdebd08dba7bb8e99856def93093267a))
|
|
84
|
+
* Removed instrumentation for `koa-router` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([038ecc7](https://github.com/newrelic/node-newrelic/commit/038ecc749a0fd5d2cdd0ba6b5b0c9537f04a3208))
|
|
85
|
+
* Removed support for License, Application, and Security Policies(LASP) ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([bc09485](https://github.com/newrelic/node-newrelic/commit/bc094850bd18daf6be047615ad71c4dc13a7ec85))
|
|
86
|
+
* Updated `config.distributed_tracing.exclude_newrelic_header` to be set to `true` by default ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([774ce08](https://github.com/newrelic/node-newrelic/commit/774ce0805ddefd4a6e89d8635183d31e2d7e1d3a))
|
|
87
|
+
* Updated minimum supported version for `cassandra-driver` to `4.0.0` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([419337a](https://github.com/newrelic/node-newrelic/commit/419337a78d126467cbf4fc70b94ec293fb919bbf))
|
|
88
|
+
* Updated minimum supported version of `@nestjs/cli` and `@nestjs/core` to `10.0.0` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([120e6de](https://github.com/newrelic/node-newrelic/commit/120e6deef05c940baea52656dd04fdd992e9061d))
|
|
89
|
+
* Updated minimum supported version of `bluebird` to `3.0.0` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([369f920](https://github.com/newrelic/node-newrelic/commit/369f920a86b81980552fe97c708b1aeb3a70771f))
|
|
90
|
+
* Updated minimum supported version of `mysql2` to `3.0.0` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([2861406](https://github.com/newrelic/node-newrelic/commit/2861406c6d9d41f71dab2332d1fd22c27ddfda7c))
|
|
91
|
+
* Updated minimum supported version of `next` to 14 ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([80c5c0c](https://github.com/newrelic/node-newrelic/commit/80c5c0ca1ffdf2c2fa6d4abf74c8b7c3e2024a2e))
|
|
92
|
+
|
|
93
|
+
#### Code refactoring
|
|
94
|
+
|
|
95
|
+
* Updated how exclusive time and trace total time is calculated ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([b227ed6](https://github.com/newrelic/node-newrelic/commit/b227ed6975b077a8e16cffafc781a14d55636059))
|
|
96
|
+
* Updated instances of `tracer.bindFunction` with `tracer.runInContext` to improve performance in hot paths ([#3811](https://github.com/newrelic/node-newrelic/pull/3811)) ([5d77085](https://github.com/newrelic/node-newrelic/commit/5d77085b89e98bb1e09a9206a5d5656cdc410c2d))
|
|
97
|
+
|
|
98
|
+
#### Documentation
|
|
99
|
+
|
|
100
|
+
* Updated compatibility report ([#3990](https://github.com/newrelic/node-newrelic/pull/3990)) ([f3bb380](https://github.com/newrelic/node-newrelic/commit/f3bb380770e575e1ef3600e6601ddbf944b189ea))
|
|
101
|
+
|
|
102
|
+
#### Miscellaneous chores
|
|
103
|
+
|
|
104
|
+
* Removed `husky` in lieu of git hooks, added security hardened options to `npm install` ([#3988](https://github.com/newrelic/node-newrelic/pull/3988)) ([e3a7dda](https://github.com/newrelic/node-newrelic/commit/e3a7ddaee58f393cf347d812fed6b4c6ab1505f0))
|
|
105
|
+
* Updated production dependencies to the latest ([#3996](https://github.com/newrelic/node-newrelic/pull/3996)) ([b710bac](https://github.com/newrelic/node-newrelic/commit/b710bacff2231c8038b792ac4c7a570991566835))
|
|
106
|
+
|
|
107
|
+
#### Tests
|
|
108
|
+
|
|
109
|
+
* Added `minSupported` to the nest js versioned tests package.json to ensure the compatibility report will show we support `@nestjs/core` ([#3982](https://github.com/newrelic/node-newrelic/pull/3982)) ([bfa4aa1](https://github.com/newrelic/node-newrelic/commit/bfa4aa1d7b1fa60b8ac0da221f132124fb31ea6d))
|
|
110
|
+
* Added prisma 7 tests ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([116ee9c](https://github.com/newrelic/node-newrelic/commit/116ee9cd006d378afba1922d8daa27e213d1f6ab))
|
|
111
|
+
* Moved versioned test runner code from `@newrelic/test-utilties` to agent ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([d4f9a0c](https://github.com/newrelic/node-newrelic/commit/d4f9a0ce27364b7cfb723fa6a7c56a5ccdc07b68))
|
|
112
|
+
* Removed `@newrelic/test-utilities` ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([1751147](https://github.com/newrelic/node-newrelic/commit/1751147503c9ff971208c2977912d7298e9e923f))
|
|
113
|
+
* Decrease smoke-like esm tests' sample size ([#3986](https://github.com/newrelic/node-newrelic/pull/3986)) ([40669fb](https://github.com/newrelic/node-newrelic/commit/40669fbc157d65b53a4e5b7c22061ede7f26e630))
|
|
114
|
+
* Fixed `test/lib/get-package-version.js` ([#3993](https://github.com/newrelic/node-newrelic/pull/3993)) ([5d31f08](https://github.com/newrelic/node-newrelic/commit/5d31f08fb542f7b58bf89457f8a30255511ee9e0))
|
|
115
|
+
* Fixed version lookup issue in aws-sdk-v3 tests ([#3992](https://github.com/newrelic/node-newrelic/pull/3992)) ([7be3f4a](https://github.com/newrelic/node-newrelic/commit/7be3f4ab5a69fa7563752f584704e59cf6a863d2))
|
|
116
|
+
* Restructure `aws-sdk-v3` test runner to use `groupedDependencies` ([#3984](https://github.com/newrelic/node-newrelic/pull/3984)) ([fc67490](https://github.com/newrelic/node-newrelic/commit/fc674909e176f0f5305a0798c14d3c8447e58155))
|
|
117
|
+
* Updated a few versioned test stanzas to reduce the number of combinations it runs ([#3991](https://github.com/newrelic/node-newrelic/pull/3991)) ([d606305](https://github.com/newrelic/node-newrelic/commit/d6063055ebd034deabd2f2c3f1acba8162a5bd44))
|
|
118
|
+
|
|
119
|
+
#### Continuous integration
|
|
120
|
+
|
|
121
|
+
* Added `contents: write` to `post-release` to allow commit/push of api docs ([#3978](https://github.com/newrelic/node-newrelic/pull/3978)) ([90c4e61](https://github.com/newrelic/node-newrelic/commit/90c4e61ac304715dc0848aad091ec1725e057367))
|
|
122
|
+
* Updated remaining actions so they are running on Node 24 ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([ea21934](https://github.com/newrelic/node-newrelic/commit/ea21934a7b638855610ff193e88d15f8b910d8a8))
|
|
123
|
+
* Updated version of `actions/download-artifact` to v8 ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([54a58b9](https://github.com/newrelic/node-newrelic/commit/54a58b95bb8b5a15d7f7b340a9c8da2a3d3e88a9))
|
|
124
|
+
* Updated versions of actions to ensure they are running on node 24 ([#3980](https://github.com/newrelic/node-newrelic/pull/3980)) ([6302002](https://github.com/newrelic/node-newrelic/commit/630200223d03e39249e359563727900a70ce15cf))
|
|
125
|
+
|
|
1
126
|
### v13.20.0 (2026-05-12)
|
|
2
127
|
|
|
3
128
|
#### Features
|
package/README.md
CHANGED
|
@@ -136,7 +136,7 @@ We support the following custom instrumentation API methods in ES module apps:
|
|
|
136
136
|
* `newrelic.instrumentMessages`
|
|
137
137
|
* `newrelic.instrumentWebframework`
|
|
138
138
|
|
|
139
|
-
Note that
|
|
139
|
+
Note that `newrelic.instrumentLoadedModule` is deprecated and scheduled for removal in v15. It was never supported in ES module apps, and in CommonJS it only existed to retrofit instrumentation when the agent was loaded after user modules, which is no longer supported.
|
|
140
140
|
|
|
141
141
|
If you want to see an example of how to write custom instrumentation in an ES module app, check out our [examples](https://github.com/newrelic/newrelic-node-examples/tree/main/esm-app) repo for a working demo.
|
|
142
142
|
|
|
@@ -148,10 +148,6 @@ For more information on getting started, [check the Node.js docs](https://docs.n
|
|
|
148
148
|
|
|
149
149
|
There are modules that can be installed and configured to accompany the Node.js agent:
|
|
150
150
|
|
|
151
|
-
* [`@newrelic/apollo-server-plugin`](https://github.com/newrelic/newrelic-node-apollo-server-plugin): New Relic's official Apollo Server plugin for use with the Node.js agent.
|
|
152
|
-
|
|
153
|
-
There are modules included within the Node.js agent to add more instrumentation for 3rd party modules:
|
|
154
|
-
|
|
155
151
|
* [`@newrelic/native-metrics`](https://github.com/newrelic/node-native-metrics): Provides hooks into the native v8 layer of Node.js to provide metrics to the Node.js agent.
|
|
156
152
|
|
|
157
153
|
## Usage
|