Notes
- Updated
@grpc/grpc-jsinstrumentation to work with 1.8.0.
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
Reintroduced throttling during reading of instrumented application's dependency tree during startup, to prevent EMFILE issues.
Improved Restify support
- Added a new test stanza to run restify >=10 on Node 18.
- Update our versioned tests to support Restify 9.0.0.
Laid foundation for supporting Code Level Metrics via CodeStream. Note that this integration is not fully finished and should not be used.
Improved the readability and maintainability of agent by reducing the Cognitive Complexity of various aspects of the agent.
Added
newrelic.noticeError()example to our API docs.Upgraded @grpc/grpc-js from 1.6.9 to 1.7.3.
Upgraded @grpc/proto-loader from 0.6.13 to 0.7.3.
Removed async from benchmark tests, fixed failing benchmark suites, and removed deprecated suite.
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
- Added new configuration option,
grpc.ignore_status_codes, which can be used to select nonzero gRPC status codes to ignore and not report as errors.
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
Dropped support for
vision, and instead only instrument@hapi/vision.Updated configuration system to automatically create an environment variable mapping for a new config value.
- It will follow a convention of
NEW_RELIC_PATH_TO_CONFIG_KEY. - For example if there is a new configuration option of
config.nested.object_path.enabledthe env var would beNEW_RELIC_NESTED_OBJECT_PATH.ENABLED.
- It will follow a convention of
Removed
transaction_tracer.hide_internalsconfiguration. All of the internal configuration is now handled by Javascript symbols instead of non-enumerable properties, so there is no longer a performance penalty, as symbols are already hidden by default.
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
커스텀 대시보드의 기본 제한을 분당 1,000개의 이벤트에서 분당 3,000개의 이벤트로 늘렸습니다. 커스텀 대시보드가 제한되는 시나리오에서, 이 변경 사항을 통해 더 많은 커스텀 대시보드를 뉴렐릭으로 보낼 수 있습니다. 또한 분당 100,000개의 이벤트라는 구성 가능한 새로운 최대 제한이 있습니다. 제한을 변경하려면 custom_insights_events에 대한 문서를 참조하십시오. 변경 사항 및 커스텀 대시보드가 삭제되고 있는지 확인하는 방법에 대해 자세히 알아보려면 Explorers Hub 게시물을 참조하십시오.
코드 커버리지 통계 수집을 포함하도록 CI 프로세스를 업데이트했습니다.
현재 기능 플래그에 대한 [문서)(https://github.com/newrelic/node-newrelic/blob/main/documentation/feature-flags.md)를 추가했습니다.
지지 성명:
- 뉴렐릭은 최신 기능과 성능 이점을 얻을 수 있도록 에이전트를 정기적으로 업그레이드할 것을 권장합니다. 또한 이전 릴리스는 수명 종료에 도달하면 더 이상 지원되지 않습니다.
Notes
Removed legacy agent async context propagation. The default behavior is now what was behind the
feature_flag.new_promise_tracking. You can read more about the difference here.Fixed an issue with the ES Module loader that properly registers instrumentation when the file path included url encoded characters.
Added an API for enqueuing application logs for forwarding
newrelic.recordLogEvent({ message: 'hello world', level: 'info' })`Note: If you're including a serialized error make sure it's on the
errorkey of the log event:const error = new Error('testing errors');newrelic.recordLogEvent({ message: 'error example', level: 'error', error })Fixed
cassandra-driverinstrumentation to properly set instance details on query segments/spans.Added a new context manager that leverages AsyncLocalStorage for async context propagation.
- This will be available via a feature flag
config.feature_flag.async_local_context - Alternatively you can set the environment variable of
NEW_RELIC_FEATURE_FLAG_ASYNC_LOCAL_CONTEXT=1 - By enabling this feature flag it should make the agent use less memory and CPU.
- This will be available via a feature flag
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
Added instrumentation to bunyan to support application logging use cases: forwarding, local decorating, and metrics. Big thanks to @brianphillips for his contribution
Added c8 to track code coverage.
Added documentation about custom instrumentation in ES module applications
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
Added ability to instrument ES Modules with the New Relic ESM Loader.
Added support for custom ESM instrumentation.
- There is structure to registering custom ESM instrumentation. Set the relative path to the instrumentation entry point via
api.esm.custom_instrumentation_entrypoint - Sample custom ESM instrumentation entrypoint
- All the
newrelic.instrument*methods will still work exceptnewrelic.instrumentLoadedModule. This is because it is geared toward CommonJS modules.
- There is structure to registering custom ESM instrumentation. Set the relative path to the instrumentation entry point via
Added test for asserting ESM loader functionality on ESM-only package
Added supportability metric of
Supportability/Nodejs/Collector/MaxPayloadSizeLimit/<endpoint>whenmax_payload_size_in_bytesconfiguration value is exceeded.Removed
application_logging.forwarding.enabledstanza from sample config as the feature is now enabled by default.
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
Added experimental loader to support instrumentation of CommonJS packages in ECMAScript Module(ESM) applications.
- It only supports versions of Node.js >=
16.12.0. - It is subject to change due to its experimental stability.
- It only supports versions of Node.js >=
Enhanced supportability metrics for ESM support.
- Added new metrics to track usage of ESM loader(
Supportability/Features/ESM/LoaderandSupportability/Features/ESM/UnsupportedLoader). - Updated instrumentation map to include an optional "friendly name" for tracking metrics.
- Added new metrics to track usage of ESM loader(
Enabled re-throwing ESM import errors of
newrelic.jsso that the user is informed to rename it tonewrelic.cjsFixed an issue with mongodb instrumentation where IPv6 address([::1]) was not getting mapped to localhost when setting the host attribute on the segment.
Added a test ESM loader to properly mock out agent in versioned tests.
Added ESM versioned tests for:
express,pg,mongodb, and@grpc/grpc-js.
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.