Bugfix: Method tracers no longer cloning arguments
Previously, when calling add_method_tracer with certain combination of arguments, it would lead to the wrapped method's arguments
being cloned rather than passed to the original method for manipulation as intended. This has been fixed.
Bugfix: Delayed Job instrumentation fixed for Ruby 2.7+
Previously, the agent was erroneousy separating positional and keyword arguments on the instrumented method calls into
Delayed Job's library. The led to Delayed job not auto-instrumenting correctly and has been fixed.
Bugfix: Ruby 2.7+ methods sometimes erroneously attributed compiler warnings to the Agent's add_method_tracer
The specific edge cases presented are now fixed by this release of the agent. There are still some known corner-cases
that will be resolved with upcoming changes in next major release of the Agent. If you encounter a problem with adding
method tracers and compiler warnings raised, please continue to submit small repoducible examples.
Bugfix: Ruby 2.7+ fix for keyword arguments on Rack apps is unnecessary and removed
A common fix for positional and keyword arguments for method parameters was implemented where it was not needed and
led to RackApps getting extra arguments converted to keyword arguments rather than Hash when it expected one. This
Ruby 2.7+ change was reverted so that Rack apps behave correctly for Ruby >= 2.7.
Feature: captures incoming and outgoing request headers for distributed tracing
HTTP request headers will be logged when log level is at least debug level. Similarly, request headers
for exchanges with New Relic servers are now audit logged when audit logging is enabled.
Bugfix: newrelic.yml.erb added to the configuration search path
Previously, when a user specifies a newrelic.yml.erb and no newrelic.yml file, the agent fails to find
the .erb file because it was not in the list of files searched at startup. The Ruby agent has long supported this as a
means of configuring the agent programatically. The newrelic.yml.erb filename is restored to the search
path and will be utilized if present. NOTE: newrelic.yml still takes precedence over newrelic.yml.erb If found,
the .yml file is used instead of the .erb file. Search directories and order of traversal remain unchanged.
Bugfix: dependency detection of Redis now works without raising an exception
Previously, when detecting if Redis was available to instrument, the dependency detection would fail with an Exception raised
(with side effect of not attempting to instrument Redis). This is now fixed with a better dependency check that resolves falsly without raising an Exception.
Bugfix: Gracefully handles NilClass as a Middleware Class when instrumenting
Previously, if a NilClass is passed as the Middleware Class to instrument when processing the middleware stack,
the agent would fail to fully load and instrument the middleware stack. This fix gracefully skips over nil classes.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps newrelic_rpm from 6.13.1 to 6.14.0.
Changelog
Sourced from newrelic_rpm's changelog.
Commits
c9e02bf
Merge pull request #503 from newrelic/dev20ba706
update version (#501)c77c764
Add prepend option for Net::HTTP instrumentation (#496)5f50cc1
Method tracers refactored (#499)ffa3967
add supportability metricd9355b3
changed default to true1c896f0
Update deprecated action commands (#500)39a7bad
removed pry commenta2bdcc2
increase timeout limit for testsfb9c579
Merge branch 'dev' into prepend_net_instrumentationDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)