Telemetry-in-Context: Automatic Application Logs, a quick way to view logs no matter where you are in the platform
Adds support for forwarding application logs to New Relic. This automatically sends application logs that have been enriched to power Telemetry-in-Context. This is disabled by default in this release. This may be on by default in a future release.
Adds support for enriching application logs written to disk or standard out. This can be used with another log forwarder to power Telemetry-in-Context if in-agent log forwarding is not desired. We recommend enabling either log forwarding or local log decorating, but not both features. This is disabled by default in this release.
Improves speed and Resque support for logging metrics which shows the rate of log message by severity in the Logs chart in the APM Summary view. This is enabled by default in this release.
To learn more about Telemetry-in-Context and the configuration options please see the documentation here.
Improve the usage of the 'hostname' executable and other executables
In all places where a call to an executable binary is made (currently this is done only for the 'hostname' and 'uname' binaries), leverage a new helper method when making the call. This new helper will a) not attempt to execute the binary if it cannot be found, and b) prevent STDERR/STDOUT content from appearing anywhere except New Relic's own logs if the New Relic logger is set to the 'debug' level. When calling 'hostname', fall back to Socket.gethostname if the 'hostname' binary cannot be found. When calling 'uname', fall back on using a value of 'unknown' if the 'uname' command fails. Many thanks to @metaskills and @brcarp for letting us know that Ruby AWS Lambda functions can't invoke 'hostname' and for providing ideas and feedback with [Issue #697](newrelic/newrelic-ruby-agent#697).
Documentation: remove confusing duplicate RUM entry from newrelic.yml
The browser_monitoring.auto_instrument configuration option to enable web page load timing (RUM) was confusingly listed twice in the newrelic.yml config file. This option is enabled by default. The newrelic.yml file has been updated to list the option only once. Many thanks to @robotfelix for bringing this to our attention with [Issue #955](newrelic/newrelic-ruby-agent#955).
Bugfix: fix unit test failures when New Relic environment variables are present
Previously, unit tests would fail with unexpected invocation errors when NEW_RELIC_LICENSE_KEY and NEW_RELIC_HOST environment variables were present. Now, tests will discard these environment variables before running.
When Curb instrumentation is used (either via prepend or chain), be sure to always pass the verb argument over to method_with_tracing which requires it. Thank you to @knarewski for bringing this issue to our attention, for providing a means of reproducing an error, and for providing a fix. That fix has been replicated by the agent team with permission. See Issue 1033 for more details.
v8.5.0
AWS: Support IMDSv2 by using a token with metadata API calls
When querying AWS for instance metadata, include a token in the request headers. If an AWS user configures instances to require a token, the agent will now work. For instances that do not require the inclusion of a token, the agent will continue to work in that context as well.
Muffle anticipated stderr warnings for "hostname" calls
When using the hostname binary to obtain hostname information, redirect STDERR to /dev/null. Thanks very much to @frenkel for raising this issue on behalf of OpenBSD users everywhere and for providing a solution with [PR #965](newrelic/newrelic-ruby-agent#965).
Added updated configuration options for transaction events and deprecated previous configs
This release deprecates and replaces the following configuration options:
Deprecated
Replacement
event_report_period.analytic_event_data
event_report_period.transaction_event_data
analytics_events.enabled
transaction_events.enabled
analytics_events.max_samples_stored
transaction_events.max_samples_stored
Eliminated warnings for redefined constants in ParameterFiltering
Fixed the ParameterFiltering constant definitions so that they are not redefined on multiple reloads of the module. Thank you to @TonyArra for bringing this issue to our attention.
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)
Bumps newrelic_rpm from 4.7.1.340 to 8.6.0.
Release notes
Sourced from newrelic_rpm's releases.
... (truncated)
Changelog
Sourced from newrelic_rpm's changelog.
... (truncated)
Commits
4829b3c
Update CHANGELOG.mdecfec74
Merge pull request #1055 from newrelic/feature/1052-replace-level-with-loglevelee732c2
Update LEVEL_KEY to use "log.level"9a4c5d1
Merge pull request #1049 from newrelic/bump_version_8602ea16c8
grouped bugfix entries9ee6f3e
Merge pull request #1048 from newrelic/logging-initiative-gaa75f803
add changelog entry48c2ac7
bump version 8.6.0a6e7806
Add harvest! call to test89b2cb3
Merge pull request #1047 from newrelic/feature/add-overall-enabled-configDependabot 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)