Notes
Added defensive code in redis v4 instrumentation to check for
opts.socket
first before evaluatingopts.socket.path
. Thanks @RAshidAZ for your contribution!Updated
@grpc/proto-loader
to v0.6.13 to pickup security fixes in protobufjs.
Notes
Fixed issue with
api.getBrowserTimingHeader
optional script unwrapping issue with util.format. Thanks for your contribution @github-dd-nicolasFixed winston instrumentation to not exit early when
winston.createLogger
is created without options.Updated pino instrumentation to not override user log configurations.
Notes
- Upgraded
protobufjs
to resolve CVE-2022-25878
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.
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.