Notes
Errors will now respect its transaction's ignore state.
When ignoring transactions, related errors will now also be ignored.
The agent can now handle immutable and frozen error objects.
In rare cases the agent gets passed an immutable error object. The agent would then crash when trying to tag the error object with the current transaction. We now handle these errors properly.
Notes
Corrected a defect in the handling of uncaught exceptions
This defect was surfaced in versions of node that did not have
process._fatalException
, namely v0.8. When an uncaught exception occurs, the agent now records the error and passes it along to the other uncaught exception handlers that have been registered. This was inverted before, passing along errors when there were no other error handlers present and rethrowing otherwise.
Notes
Moved
concat-stream
from dev dependencies to production dependencies.Last week we released v1.21.0 but forgot to move a dependency. We've removed v1.21.0 from npmjs.org and this release contains the changes from that version.
Support for display host names (originally in 1.21.0).
The agent now has configuration settings to allow configuration of custom host names. Set
process_host.display_name
to enable this.If this config is not set, the agent will continue to use the host name found through an
os.hostname()
call. Should this lookup fail somehow,process_host.ipv_preference
can now be set to4
or6
to configure the type of ip address displayed in place of the host name.
Notes
This release has been unpublished from npmjs.org. Use v1.21.1 or higher instead.
Support for display host names.
The agent now has configuration settings to allow configuration of custom host names. Set
process_host.display_name
to enable this.If this config is not set, the agent will continue to use the host name found through an
os.hostname()
call. Should this lookup fail somehow,process_host.ipv_preference
can now be set to4
or6
to configure the type of ip address displayed in place of the host name.
Notes
Fixed a bug where custom events weren't being sent.
In a refactor of our data collection cycle, we omited the custom events from the list of commands, this is now fixed.
Fixed a very rare bug where the custom event pool could be set to 10 instead of the user config value. This patch was contributed by shezarkhani, thanks!
This case would only be hit if you disabled custom events via server sent config while there were custom events ready to be sent. Then you later reenabled it via server sent config. It would only occur for one data collection cycle then reset back to the correct size.
Notes
Fixed a bug in custom event recording limits.
Previously, the agent would use the config value for max events (default of 1000) for the first harvest of custom events, then would use an internal default for the reservoir with max of 10 events for each harvest after that, resulting in less than the expected number of events being sent.
Exposed the
custom_insights_events
settings in the user config.You can now set
custom_insights_events.enabled
andcustom_insights_events.max_samples_stored
in yournewrelic.js
.Read more about these settings in our documentation.
Notes
Triaged a defect in native promise instrumentation
Transactions used to be lost acrossed chained
.then
calls. The way promises are wrapped has been changed to fix this issue.Added support for Slow Queries
Slow Query information will now appear in the UI for Node agent users. This feature allows you to see a trace for slow datastore queries. Read more about this feature in our documentation
Notes
Fixed an issue with Error tracing
Previously the agent could sometimes cause issues with user serialization of error Âobjects after they passed through the error tracing code.
MongoDB cursor count method is now instrumented
The
count
method on MongoDB cursors is now instrumented. Previously, count would not be included in transaction traces.Fixed a typo in NEWS.md
Previously the release notes for v1.19.1 were included as notes for 1.19.0. This has now fixed thanks to @bruun
Notes
Fixed a bug in native ES6 Promise instrumentation.
Previously the Promise instrumentation would cause
instanceof Promise
to return false even if the object was a promise. This also caused an incompatibility with async-listener.instanceof
checks will now work on both the wrapped and unwrapped Promise object.
Features
Filesystem interactions are now recorded in metrics
The time spent in filesystem functions during a transaction will now be displayed in the transaction overview page per operation.
Bugfixes
Fixed a bug with error handling.
Previously the agent could crash applications in certain situations where
null
was thrown rather than anError
object.