Notes
Features
- Added source mapping support to heap profiler (#4122) (dcee39f)
- Added source mapping support to CPU (wall time) profiler (#4095) (f6123bc)
- Added
otlp_resource_attributesto all outgoing OpenTelemetry metrics calls (#4128) (a0c1c5b) - Added support for
ai_monitoring.enabled,ai_monitoring.streaming.enabled, andai_monitoring.record_content.enabledto be assigned via server-side config (#4123) (c4d8032)
Bug fixes
- Fixed
bunyanlog forwarding multiple duplicate lines (#4132) (b0f4242) - Fixed OTEL crash when adding exceptions to spans (#4130) (508542e)
Documentation
Miscellaneous chores
- Changed
notify-release.ymlschedule with our bot user (#4135) (a9318ae) - Changed
versioned-security-agent.ymlschedule with our bot user (#4134) (d7c6f64) - Changed smoke-test schedule with our bot user (#4133) (400268e)
- Sharded the versioned tests w/ security agent workflow (#4119) (fe200c4)
- Updated test runner to accept suites as positional parameters (#4117) (ac0985d)
Tests
- Added more scenarios to winston for constructing loggers (#4120) (ea90fc3)
- Added skip for winston test for ranges that do not support it (#4121) (e75e15e)
- Applied sampling to
pg-nativetests to reduce the matrix under test (#4124) (b1ad2da) - Fixed flaky amqplib async-work duration assertions (#4118) (3544237)
- Removed timing race from common.request unit tests (#4113) (b22c25b)
Support statement:
We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
See the New Relic Node.js agent EOL policy for information about agent releases and support dates. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
Bug fixes
- Updated
winstoninstrumenting to assignhandleExceptionsto the first NrTransport to avoid registering duplicateuncaughtExceptionhandlers (#4108) (d60a48d)- This would create a linear memory leak because the
NrTransportobjects for loggers no longer in use, would not be freed because of the globalprocess.on('uncaughtException')handler
- This would create a linear memory leak because the
Documentation
Continuous integration
- Pinned CI npm to 11 so native versioned suites build on Node 22 (#4114) (b844e94)
- Removed the 8 minute versioned shard timeout (#4111) (0ef6374)
- Attempted to fix memcached CI issue again (#4098) (f67fef5)
- Shard versioned tests across CI runners (#4101) (1471734)
Tests
- Added
samplesto prisma and next to cut down on versions under test on packages we recommend using hybrid ageninstrumentation (#4112) (7d8bd7c) - Resolved
grpcproto-loaderfrom the running suite'snode_modules(#4110) (5b5a9f8)
Support statement:
We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
See the New Relic Node.js agent EOL policy for information about agent releases and support dates. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
νΉμ§
- Node.js 26 μ§μ μΆκ° (#4084) (4a7f777)
CpuProfilerμν λ°μ΄ν°μspan_idλ°trace_idλ μ΄λΈ μΆκ° (#4049) (c2b1737)K_REVISIONμ(λ₯Ό) ν¬ν¨νλλ‘ μλ‘μ΄ GCP Cloud Run νΈμ€νΈλͺ λ‘μ§μ μΆκ°νμ΅λλ€ (#4069) (02855dc)profiling.source_mapping.enabledκ΅¬μ± μ΅μ μΆκ° (#4090) (43add80)- λ°μ
tracestateν€λμμspanIdμ κ±° (#4091) (40a8bf1)
μ½λ 리ν©ν λ§
μ μ μλ₯ λΉμΉ
μ‘μΌ
- μ€λ μ§μλ CI λΆμμ μ± λ¬Έμ ν΄κ²° (#4093) (ae973a0)
- Node 26μμ ν¨ν€μ§ λ²μ νμΈ λ¬Έμ μμ (#4094) (73d14a9)
ν΅ν© μ°κ²°
- node-versionμ
lts/*μ(λ₯Ό) μ¬μ©νλλ‘release-creationμ λ°μ΄νΈ (#4080) (7eaed22) - μ΅μ λ²μ μ nodeλ₯Ό κ°μ Έμ€λλ‘
check-latestμ(λ₯Ό) ν¬ν¨νμ¬setup-nodeμμ μ λ°μ΄νΈ (#4079) (4a425f6)
μ§μ§ μ±λͺ :
μ΅μ μμ΄μ νΈ λ²μ μ΄ μΆμλλ©΄ μ¦μ μ λ°μ΄νΈνλ κ²μ΄ μ’μ΅λλ€. μ΅μ λ²μ μΌλ‘ μ κ·Έλ μ΄λν μ μλ κ²½μ°, μμ΄μ νΈλ₯Ό 90μΌ μ΄λ΄ λ²μ μΌλ‘ μ λ°μ΄νΈνμΈμ. μμ΄μ νΈμκ² μ΅μ μ 보λ₯Ό μ 곡νλ λ°©λ²μ λν΄ μμΈν μμ보μΈμ. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
μμ΄μ νΈ λ¦΄λ¦¬μ€ λ° μ§μ λ μ§μ λν μ 보λ λ΄λ λ¦ Node.js μμ΄μ νΈ EOL μ μ± μ μ°Έμ‘°νμΈμ. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
λ²κ·Έ μμ
μλ΅ ν€λκ° ν¬ν¨λ λ Azure Functionsκ° μΆ©λνλ λ¬Έμ λ₯Ό μμ νμ΅λλ€ (#4070) (c88d2b7)
μ μ μλ₯ λΉμΉ
νΈνμ± λ³΄κ³ μ μ λ°μ΄νΈ (#4067) (0ae24b8)
μ§μ§ μ±λͺ
μ΅μ μμ΄μ νΈ λ²μ μ΄ μΆμλλ©΄ μ¦μ μ λ°μ΄νΈνλ κ²μ΄ μ’μ΅λλ€. μ΅μ λ²μ μΌλ‘ μ κ·Έλ μ΄λν μ μλ κ²½μ°, μμ΄μ νΈλ₯Ό 90μΌ μ΄λ΄ λ²μ μΌλ‘ μ λ°μ΄νΈνμΈμ. μμ΄μ νΈμκ² μ΅μ μ 보λ₯Ό μ 곡νλ λ°©λ² μ λν΄ μμΈν μμ보μΈμ.
μμ΄μ νΈ λ¦΄λ¦¬μ€ λ° μ§μ λ μ§μ λν μ 보λ λ΄λ λ¦ Node.js μμ΄μ νΈ EOL μ μ± μ μ°Έμ‘°νμΈμ.
Notes
μ μ μλ₯ λΉμΉ
- 리ν¬μ§ν°λ¦¬μμ μ€λλ Next.js λ¬Έμλ₯Ό μ κ±°νμ΅λλ€(#4060) (185bb66)
- νΈνμ± λ³΄κ³ μλ₯Ό μ λ°μ΄νΈνμ΅λλ€(#4047) (25cbd38)
μ‘μΌ
- OTEL λ©νΈλ¦μ νλ‘μ μ€μ μ§μμ μΆκ°νμ΅λλ€(#4041) (6c04b8a)
- OTEL λ©νΈλ¦ λ΄λ³΄λ΄κΈ°μ μ§μ κ°λ₯μ± λ©νΈλ¦μ μΆκ°νμ΅λλ€(#4051) (db6e4e3)
@opentelemetry0.xν¨ν€μ§μ μ΅μ λ²μ μ^0.219.0(μΌ)λ‘ μ λ°μ΄νΈνμ΅λλ€(#4065) (3f58ad0)
μ§μ§ μ±λͺ :
μ΅μ μμ΄μ νΈ λ²μ μ΄ μΆμλλ©΄ μ¦μ μ λ°μ΄νΈνλ κ²μ΄ μ’μ΅λλ€. μ΅μ λ²μ μΌλ‘ μ κ·Έλ μ΄λν μ μλ κ²½μ°, μμ΄μ νΈλ₯Ό 90μΌ μ΄λ΄ λ²μ μΌλ‘ μ λ°μ΄νΈνμΈμ. μμ΄μ νΈμκ² μ΅μ μ 보λ₯Ό μ 곡νλ λ°©λ²μ λν΄ μμΈν μμ보μΈμ. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
μμ΄μ νΈ λ¦΄λ¦¬μ€ λ° μ§μ λ μ§μ λν μ 보λ λ΄λ λ¦ Node.js μμ΄μ νΈ EOL μ μ± μ μ°Έμ‘°νμΈμ. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
νΉμ§
- νμ΄λΈλ¦¬λ μμ΄μ νΈλ₯Ό ν΅ν λ€μ΄ν°λΈ Next.js OTEL κ³μΈ‘ μ§μμ μΆκ°νμ΅λλ€(#4040) (1944f39)
λ²κ·Έ μμ
- κ°μ²΄ ν€μ λΉ κ°μ μ²λ¦¬νλλ‘ λ μ΄λΈ νμλ₯Ό μ λ°μ΄νΈνμ΅λλ€ (#4004) (73c00d7)
μ½λ 리ν©ν λ§
@hapi/hapiλ°@hapi/visionμ(λ₯Ό) ꡬλ μ κΈ°λ°μΌλ‘ λ§μ΄κ·Έλ μ΄μ (#3995) (54c60a8)- λ°μν μ΄λ²€νΈλ₯Ό ꡬλ
νλλ‘
koaκ³μΈ‘μ 리ν©ν°λ§νμ΅λλ€ (#4016) (e1f6c27) - μ΄μ μ μ μ₯λ μ€λ₯κ° μλ κ²½μ°μλ§ μ€λ₯λ₯Ό μ²λ¦¬λ κ²μΌλ‘ νμνλλ‘ MiddlewareWrapper
maybeHandleErrorμ(λ₯Ό) μ λ°μ΄νΈνμ΅λλ€ (#4032) (1b21cc8)
μ μ μλ₯ λΉμΉ
- κ³μΈ‘μ΄ μμ΄μ νΈμ λ³ν©λ¨μ λ°λΌ
@newrelic/apollo-server-pluginμ λν λ§ν¬λ₯Ό μ κ±°νμ΅λλ€ (#4003) (9afd9cb) apollo-serverλ¬Έμλ₯Ό λ¬Έμ μΉμ¬μ΄νΈλ‘ μ΄λνμ΅λλ€ (#3994) (11ca2ae)- νΈνμ± λ³΄κ³ μ μ λ°μ΄νΈ (#4028) (b16ad6e) (#4014) (3efa1ff) (#4002) (33a8236)
μ‘μΌ
OTEL λ©νΈλ¦μ λν κ°μ¬ λ‘κΉ μΆκ° (#4018) (494c836)
Prisma 7μ μ§μνλ OTEL κ·μΉμ μΆκ°νμ΅λλ€ (#4013) (c142c60)
CI μν¬νλ‘μ°μμ node-version μμ (#4042) (dd05ea9)
λ‘κ±°μ audit λ©μλλ₯Ό μ¬μ©νλλ‘ remote-method μ λ°μ΄νΈ (#4038) (0e4507e)
Claude λ΄μ λν κΈ°μ€ μ§μΉ¨μ μΆκ°νμ΅λλ€ (#4036) (c8f6649)
μ λ°μ΄νΈλ μ’ μμ±
- μ¬μ©νμ§ μλ κ°λ° μ’ μμ± μ κ±°(#4005) (e00f7d3)
@apm-js-collab/tracing-hooksμ(λ₯Ό)0.9.1(μΌ)λ‘ μ λ°μ΄νΈνμ΅λλ€ (#4043) (f05e5d4)commanderμ(λ₯Ό) μ΅μ λ²μ μΌλ‘ μ λ°μ΄νΈνμ΅λλ€ (#4021) (83b1d58)nockμ(λ₯Ό) μ΅μ λ²μ μΌλ‘ μ λ°μ΄νΈνμ΅λλ€ (#4022) (9bf79ab)sinonμ(λ₯Ό) μ΅μ λ²μ μΌλ‘ μ λ°μ΄νΈνμ΅λλ€ (#4020) (0ced304)protobufjsμ(λ₯Ό) μ΅μ λ²μ μΌλ‘ μ λ°μ΄νΈνμ΅λλ€ (#4006) (45c61f3)globμ(λ₯Ό) 13μΌλ‘ μ κ·Έλ μ΄λνμ΅λλ€ (#4008) (3053545)gotλ°rimrafμ(λ₯Ό) μ΅μ λ²μ μΌλ‘ μ κ·Έλ μ΄λνμ΅λλ€ (#4007) (b967593)
ν μ€νΈ
- AWS ν
μ€νΈ μμ΄μ νΈ μ€μ μ΄ smithy >=4.7.3μμ μλνλλ‘ μμ μ μΈ
http.requestshim μΆκ° (#4010) (c5fd80a) - μ체 μλͺ
λ μΈμ¦μ λ°
undici.Agentμ¬μ© μ λμμ νμΈνλ undici λ²μ ν μ€νΈλ₯Ό μΆκ°νμ΅λλ€ (#4026) (27507bc) >=4.1.4μ(λ₯Ό) ν μ€νΈνλλ‘mongodb-esmν μ€νΈ 리ν©ν°λ§ (#4023) (d85767f)globμ λν μμ‘΄μ±μ μ κ±°νκ³fs.glob(μΌ)λ‘ λ체νμ΅λλ€ (#4019) (204f124)- λ²μ <5.2.0μμλ μ§μλμ§ μμΌλ―λ‘ μ¬μ©μ μ§μ λμ€ν¨μ² μ¬μ©μ 건λλ°λλ‘ undici.Agent λ²μ λ³ ν μ€νΈλ₯Ό μ λ°μ΄νΈνμ΅λλ€ (#4029) (08cd079)
μ§μ§ μ±λͺ :
μ΅μ μμ΄μ νΈ λ²μ μ΄ μΆμλλ©΄ μ¦μ μ λ°μ΄νΈνλ κ²μ΄ μ’μ΅λλ€. μ΅μ λ²μ μΌλ‘ μ κ·Έλ μ΄λν μ μλ κ²½μ°, μμ΄μ νΈλ₯Ό 90μΌ μ΄λ΄ λ²μ μΌλ‘ μ λ°μ΄νΈνμΈμ. μμ΄μ νΈμκ² μ΅μ μ 보λ₯Ό μ 곡νλ λ°©λ²μ λν΄ μμΈν μμ보μΈμ. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
μμ΄μ νΈ λ¦΄λ¦¬μ€ λ° μ§μ λ μ§μ λν μ 보λ λ΄λ λ¦ Node.js μμ΄μ νΈ EOL μ μ± μ μ°Έμ‘°νμΈμ. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)