Notes
- Fixed passing undefined as a formatter options to
winston.format.combine
Notes
Moved log forwarding logic to a transport so customer transports are not polluted with NR linking metadata and timestamp and error manipulations.
Prevented transmitting logs when application level logging has been disabled.
Notes
Added instrumentation to pino to support application logging use cases: forwarding, local decorating, and metrics.
Added supportability metrics about the data usage bytes of harvested data to the collector endpoints.
Added an optional way to avoid wrapping browser agent script with the
{'<script>'}
tag when usingapi.getBrowserTimingHeader
. This will ease usage with component-based libraries like React. Thanks to @github-dd-nicolas for the contribution.Upgraded
@grpc/proto-loader
to fix a CVE withprotobufjs
.Upgraded
@newrelic/test-utilities
to resolve a dev-only audit warning.
Notes
- Fixed winston instrumentation to no longer coerce every log line to be json.
Notes
- Fixed an issue with winston instrumentation that caused agent to crash when creating a winston logger from an existing instantiated logger.
Notes
Added application logging for Winston in the Node.js agent
Ability to forward logs, send log metrics, and perform local log decoration
Added application log aggregator to collect logs with adaptive sampling and appropriate max samples stored.
Added
application_logging
configuration and env vars with appropriate defaults.Added
application_logging.enabled
configuration value, defaulting to true.Set
application_logging.forwarding.enabled
to false when High-security mode (HSM) is set.Enabled log forwarding by default in the example config.
Added sent, seen, and dropped metrics that collected on every harvest cycle around log lines.
Added supportability metrics for some popular logging frameworks.
Added supportability metrics to record if the logging features are enabled.
Added a storage mechanism to transactions to keep logs until transaction ends.
- Removed distributed tracing setting from example config.
Fixed a typo in
lib/instrumentation/core/child_process.js
.Thanks to Eito Katagiri (@eitoball) for the contribution.
- Support automatic instrumentation of Redis v4.
- Bumped moment from v2.29.1 to v2.29.2.
- Bumped
tap
to v16.x.
- Updated
ansi-regex
to resolve a dev dependency audit warning.
Notes
Added instrumentation for
mysql2/promise
.- This previously only existed in our standalone
@newrelic/mysql
, but now gives feature partiy between the two.
- This previously only existed in our standalone
Removed unused native CPU metric sampler. This logic was no longer getting touched when running Node.js versions higher than 6.1.0.
Fixed promise interceptor from re-throwing errors.
Added transaction naming documentation ported from a discussion forum post.
Added
promises.tap.js
to mysql2 versioned tests.Updated @newrelic/test-utilities to latest.
Removed unused test file in restify versioned tests.
Added
--strict
flag to versioned test runner to properly fail CI runs when test files are not included.
Notes
Fixed
shim.wrapReturn
to callReflect.construct
in construct Proxy trap. Also includingnewTarget
to work with inherited classes.Added link to New Relic Node.js Examples repository.
Excluded installing dependencies in
versioned-external
folders when running integration tests.
Notes
Added support for
initializeUnorderedBulkOp
, andinitializeOrderedBulkOp
in mongodb v3 instrumentation.Thanks to Denis Lantsman (@dlants) for the contribution.
Updated logger to delay logging until configuration is parsed. The logger will now queue all log entries that occur before the agent can parse the configuration.
Thanks to Cody Landry (@codylandry) for the contribution.
Added
NEW_RELIC_ALLOW_ALL_HEADERS
as a boolean environment variable, same behavior as existingallow_all_headers
.Updated the AWS IMDBS v2 endpoint to use
latest
to align with the internal agent specification.Bumped
@newrelic/koa
to ^6.1.1.Added Next.js to External Modules list in README.
Updated mysql and mysql2 versioned tests to run against their own databases on the MySQL instance.
Removed upper-bound testing from restify versioned tests so future major versions will be covered.
Removed upper-bound testing from mysql2 versioned tests to cover existing and future major versions.
Continues to skip version 1.6.2 which had a bug that broke tests which was resolved in 1.6.3.
Updated @hapi/hapi Node 16 versioned test runs to run against @hapi/hapi >=20.1.2 so future major releases will be ran.
Fixed sparse checkout of non-default branch for external versioned tests.
Added external versioned tests for the Apollo Server plugin instrumentation.
Added nock delay to test timeouts in utilization integration tests.
Added newrelic-node-nextjs to external versioned tests to be run on every PR.
Updated external version test running to support more test scenarios.
- Adds
test/versioned-external
to lint ignore to avoid issues for scripts in tests that auto run linting tools (next/react). - Adds
index.js
andnr-hooks.js
to files automatically checked-out for test runs.
- Adds
Notes
Updated AWS metadata capture to utilize IMDSv2.
Fixed link to discuss.newrelic.com in README
Updated minimum Node version warning to output current Node version from process.
Bumped
@newrelic/native-metrics
to ^7.1.1.Added
Nextjs
to a framework constant within the webframework-shim.Updated shim to pass active segment to inContext callback.
Bumped
@grpc/grpc-js
to ^1.5.5.Bumped
@grpc/proto-loader
to ^0.6.9.Bumped
@newrelic/superagent
to ^5.1.0.Bumped
@newrelic/koa
to ^6.1.0.Bumped
async
to ^3.2.3.Resolved several npm audit warnings for dev deps.
Fixed Post Release workflow by properly configuring git credentials so it can push API docs to branch
Added
set -e
in publish docs script to exit on possible failuresRemoved redundant
npm ci
in publish API docs scriptAdded ability to ignore certain PRs in
bin/pending-prs.js
report to slackUpdated README to include
@newrelic/pino-enricher
as an external module.Fixed documentation in a sample of the Datastore Instrumentation for Node.js.
Added a new
mongo:5
container tonpm run sevices
to test mongodb driver >=4.2.0.Fixed conditions in post release workflow to function when triggered via successful release and manual invoked.
Updated method for retrieving agent version from repository by using
cat package.json | jq .version
Fixed minor formatting and spelling issues in
create-docs-pr.js
.Fixed an issue with the docs PR script that assumed
\n
in the NEWS.md file when extract version and release date