• EnglishEspañol日本語한국어Português
  • Log inStart now

Node.js agent release notesRSS

March 15, 2023
Node.js agent v9.12.1

Notes

  • Added ability to mark errors as expected when using newrelic.noticeError, by adding an optional boolean:

    • newrelic.noticeError(error, {customAttributes}, true|false) when there are custom error attributes.
    • newrelic.noticeError(error, true|false) if there are no custom error attributes.
    • expected errors do not affect error metrics or Apdex.
  • Added ability to disable distributed tracing for aws-sdk 3.290.0 and higher.

  • Updated README header image to latest OSS office required images

  • Updated @grpc/grpc-js from 1.8.8 to 1.8.9

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

March 14, 2023
Node.js agent v9.12.0

Notes

  • This version of the agent was not available, and has been deprecated. The NPM release pipeline did not run successfully. New Relic recommends installing Node agent v9.12.1 instead.

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

March 8, 2023
Node.js agent v9.11.0

Notes

  • Added instrumentation for Prisma(@prisma/client).
    • Miniumum supported version of @prisma/client is 4.0.0.
    • Captures spans for queries.
      • It names them based on the model and action.(i.e. Datastore/statement/Prisma/user/create)
      • For statements and queries using the $queryRaw, $executeRaw, $queryRawUnsafe, and $executeRawUnsafe the names will be aligned with the raw SQL.(i.e. Datastore/statement/Prisma/User/select)
    • Captures database metrics for all statements and queries.
    • Captures SQL Traces.
    • Provides connection between application and database server via service maps.

Huge shoutout to @osmanmrtacar for the original contribution

  • Updated @grpc/protoloader from 0.7.4 to 0.7.5.
  • Updated @grpc/grpc-js from 1.8.7 to 1.8.8.

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

February 21, 2023
Node.js agent v9.10.2

Notes

  • Fix: Replaced request.aborted with response.close in HTTP instrumentation.
  • Fixed issue where setting NEW_RELIC_GRPC_IGNORE_STATUS_CODES wasn't properly parsing the codes as integers, thus not ignoring reporting errors of certain status codes.
  • Upgraded @grpc/grpc-js from 1.8.4 to 1.8.7.

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

February 13, 2023
Node.js agent v9.10.1

Notes

  • Fixed error with Lambda/ALB serverless instrumentation when no response headers were included

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

February 9, 2023
Node.js agent v9.10.0

Notes

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

February 6, 2023
Node.js agent v9.9.0

Notes

  • Added support for URL obfuscation using regex (Thanks for your contribution @matewilk)

    • For Distributed Tracing, this means that:
      • Incoming and outgoing requests' path will be obfuscated
      • Transaction's request.url attribute will be obfuscated
      • Span's http.uri path will be obfuscated
    • For transactions, this means that:
      • Transaction trace details url will be obfuscated
    • With the following example configuration, URL obfuscation will turn /api/v1/users/12345456/edit to /api/v1/users/**/edit.
      url_obfuscation: {
      enabled: true,
      regex: {
      pattern: /(\/api\/v1\/users\/)([\d]+)(\/.*$)/,
      flags: "i",
      replacement: '$1**$3'
      }
      }
    • You can also use environment variables to configure URL obfuscation:
      NEW_RELIC_URL_OBFUSCATION_ENABLED: "true",
      NEW_RELIC_URL_OBFUSCATION_REGEX_PATTERN: '/(\/api\/v1\/users\/)([\d]+)(\/.*$)/',
      NEW_RELIC_URL_OBFUSCATION_REGEX_FLAGS: 'i',
      NEW_RELIC_URL_OBFUSCATION_REGEX_REPLACEMENT: '$1**$3'
  • Add a new tracking type of instrumentation. This will be responsible for logging Supportability/Features/Instrumentation/OnResolved/<pkg> and Supportability/Features/Instrumentation/OnResolved/<pkg>/Version/<version> metrics when packages are required.

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

January 25, 2023
Node.js agent v9.8.1

Notes

  • Changed GCP metadata parsing to use json-bigint to avoid loss of precision from numerical instance ID.

  • Instrumented winston.loggers.add so it works like winston.createLogger.

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

January 17, 2023
Node.js agent v9.8.0

Notes

  • Updated getBrowserTimingHeader to allow the browser agent to be generated even when not in a transaction by adding allowTransactionlessInjection to function options. allowTransactionlessInjection is a boolean option, and when set to true, will allow injection of the browser agent when not in a transaction. This is intended to be used in frameworks that build Static Site Generation(SSG). Note that if you're using this option, you may need to wait until the Node agent has established a connection before calling getBrowserTimingHeader. To wait until the agent is connected, you can add the following check to your code:
if (!newrelic.agent.collector.isConnected()) {
await new Promise((resolve) => {
newrelic.agent.on('connected', resolve)
})
}

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

January 3, 2023
Node.js agent v9.7.5

Notes

  • Added a check to the code level metrics utility to ensure filePath was set before adding the code.* attributes.

  • Updated to latest version of @newrelic/test-utilities.

  • Fixed issue where listing of dependencies and packages from symlinked nested directories created an infinite loop which caused the agent to never connect.

Support statement:

  • New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.