You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Remove opensearch service from depends_on
OpenSearch does not have a service, it's commented out.
* Update verbiage to match docs website
Tweaks for automatic_custom_instrumentation_method_list
* add ruby version check
* Update 9.14 changelog to match release notes
* Stripe: restrict CI tests to Stripe <= v12
For now, limit Stripe testing to < v13
* Sequel: relax Ruby requirement for Timed pool
Accommodate Sequel v5.85.0, which has made the timed connection pool the
default for Ruby 3.2+ by always permitting the use of a timed
connection pool for explain plan generation in a Ruby 3.2+ context
(previously only a Ruby 3.4+ context would work).
https://sequel.jeremyevans.net/rdoc/files/doc/release_notes/5_85_0_txt.html#label-Other+Improvements
* add changelog entry
* Remove excess info-level instrumentation logs (#2881)
* Remove duplicate info-level instrumentation logs
The methods `prepend_instrument` and `chain_instrument` eventually produce info-level log statements. Remove duplicate statements.
---------
Co-authored-by: James Bunch <[email protected]>
* Stripe testing update (#2891)
* Update Stripe test
Co-authored-by: James Bunch <[email protected]>
---------
Co-authored-by: James Bunch <[email protected]>
* increase db.statement threshold to 4096
increase the db.statement max from 2000 to 4096 as per the updated cross
agent spec
* Test Ruby 3.4.0-preview2
* Update CHANGELOG.md
Co-authored-by: Kayla Reopelle <[email protected]>
* add aws_account_id config
* tests script: perform cleanup
clean up content on each fresh test run instance
* Add assertion condition for 3.4 support
The JSON string output changed in Ruby 3.4 to remove the hash rocket
Pre Ruby 3.4:
:app_name=>\"test\"
Ruby 3.4+:
app_name: \"test\"
* Exclude api_key from reported settings
* Add TODO to fix the test before 3.4 is released
* Improve failure output for assert_log_contains
* stringio CI test
* Update stringio version
* berm/bermq: only clean once
given than `berm` and `bermq` both follow the same path, prevent
duplicate cleaning operations
* use cloud.aws.account_id for config name
* add changelog entry
* Skip config_file_loading suite on Ruby 3.4
* add allow nil to config
* Simplify excluded_settings test
* Update CHANGELOG.md
Co-authored-by: Kayla Reopelle <[email protected]>
* Update CHANGELOG.md
Co-authored-by: Kayla Reopelle <[email protected]>
* Update lib/new_relic/agent/configuration/default_source.rb
Co-authored-by: Kayla Reopelle <[email protected]>
* Update newrelic-grape check logic
* Update View Component metric building (#2907)
* Use default `View/component` metric name for unidentified View Components
* add exit code to output
* move rdkafka to its own group for multiverse
* add config to allow test to pass for jruby
* Create helper method to return rubygems specs
Bundler version 2.5.12 deprecated all_specs and added installed_specs.
To support newer Bundler versions, try to use installed_specs first,
then fall back to all_specs.
All callers expect this to be an array, so return an array if Bundler
isn't defined.
This consolidates the way the rubygems specs are accessed across
the multiple places we use them.
* Add changelog entry for all_specs update
* Update stub for Rubies below 2.7
* Rubocop
* prevent false 'unsatisfied' dependency status
address 2 issues causing dependency detection to falsely label an
instrumentation's dependencies as "unsatisfied".
- handle Padrino with a special case pending resolution of
#2912
- don't mark an item as unsatisfied the second (or higher) time it comes
around through the `detect!` loop
* sinatra dd check - use a string
use a string for comparison
* Use double splat for Ruby >= 3.0
* Update changelog
* update changelog
* Update CHANGELOG.md
Co-authored-by: Kayla Reopelle <[email protected]>
* DD templating: conditionally invoke requires
as per #2844, don't perform `require_relative` on content that won't be
used unless all dependency detection checks succeed
* DD: require only prepend OR chain DD code
when chaining or prepending, only bring in the appropriate chain or
prepend code
* DD: update the rendering of the 'named' line
the template's rendering of a `named` line was previously attempting to
wrap symbol values with single quotes when necessary.
but given that everything is routed through the `snake_name` method,
nothing will ever need the quotes if we simply use the output of that
method, held in `@snake_name`.
* bugfix: always apply transformations on booleans
v9.14.0 introduced improved handling of boolean based configuration
parameters and inadvertently broke AWS Lambda layer based functionality
due to a bypassing of config transformations for booleans.
Boolean based values will now again be routed through their
transformations if defined.
resolves#2919
* Update CHANGELOG.md
Update dev bugfix title for Lambda layer functionality restoration
Co-authored-by: Kayla Reopelle <[email protected]>
* Update CHANGELOG.md
Reference the Lambda bugfix PR now that it exists
Co-authored-by: Kayla Reopelle <[email protected]>
* CHANGELOG: improve Lambda bugfix summary
Improve the wording for the Lambda bugfix summary
Co-authored-by: Kayla Reopelle <[email protected]>
* add .vscode to gitignore
* Add security scan
* Add scan-type: fs
* chore: Rename build job
* Update run conditions
* Add bundling step
* bundle after checkout
* Prerelease 9.15.0-pre (#2927)
* bump version
---------
Co-authored-by: newrelic-ruby-agent-bot <[email protected]>
Co-authored-by: Hannah Ramadan <[email protected]>
---------
Co-authored-by: Kayla Reopelle <[email protected]>
Co-authored-by: Kayla Reopelle <[email protected]>
Co-authored-by: Tanna McClure <[email protected]>
Co-authored-by: James Bunch <[email protected]>
Co-authored-by: Hannah Ramadan <[email protected]>
Co-authored-by: Patrick Arnett <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: newrelic-ruby-agent-bot <[email protected]>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+32-4
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,36 @@
1
1
# New Relic Ruby Agent Release Notes
2
2
3
+
## v9.15.0
4
+
5
+
Version 9.15.0 updates View Componment instrumentation to use a default metric name when one is unavailable, adds a configuration option to associate the AWS account ID with the DynamoDB calls from the AWS SDK, resolves a bug in rdkafka instrumentation when using the karafka-rdkafka gem, resolves a bug in the ruby-kafka instrumentation, fixes a bug with Grape instrumentation, and addresses a bug preventing the agent from running in serverless mode in an AWS Lambda layer.
6
+
7
+
-**Feature: New configuration option cloud.aws.account_id**
8
+
9
+
A new configuration option has been added, `cloud.aws.account_id`, that will allow New Relic to provide more details about certain calls made using the AWS SDK. One example, is that relationships between AWS services instrumented with New Relic's CloudWatch Metric Streams will have relationships formed in the service map with APM applications. Currently, the DynamoDB instrumentation is the only instrumentation that will make use of this configuration option, but this will be used in future instrumentation as well. [PR#2904](https://github.com/newrelic/newrelic-ruby-agent/pull/2904)
10
+
11
+
-**Feature: Use default `View/component` metric name for unidentified View Components**
12
+
13
+
Previously, when a View Component metric name could not be identified, the agent would set the name as `nil`. Now, the agent defaults to using `View/component` as the metric name when one can not be identified. [PR#2907](https://github.com/newrelic/newrelic-ruby-agent/pull/2907)
14
+
15
+
-**Bugfix: Instrumentation errors when using the karafka-rdkafka gem**
16
+
17
+
Due to version differences between the rdkafka gem and karafka-rdkafka gem, the agent could encounter an error when it tried to install rdkafka instrumentation. This has now been resolved. Thank you to @krisdigital for bringing this issue to our attention. [PR#2880](https://github.com/newrelic/newrelic-ruby-agent/pull/2880)
18
+
19
+
-**Bugfix: Stop calling deprecated all_specs method to check for the presence of newrelic-grape**
20
+
21
+
In 9.14.0, we released a fix for calls to the deprecated `Bundler.rubygems.all_specs`, but the fix fell short for the agent's Grape instrumentation and deprecation warnings could still be raised. The condition has been simplified and deprecation warnings should no longer be raised. Thank you, [@excelsior](https://github.com/excelsior) for bringing this to our attention. [Issue#2885](https://github.com/newrelic/newrelic-ruby-agent/issues/2885)[PR#2906](https://github.com/newrelic/newrelic-ruby-agent/pull/2906)
22
+
23
+
-**Bugfix: Instrumentation errors when using the ruby-kafka gem**
24
+
25
+
Kafka::Consumer#each_message takes keyword arguments, while the prepended method is defined with a single splat positional argument. In Ruby >= 3.0, this signature mismatch raises an ArgumentError. Thank you [@patrickarnett](https://github.com/patrickarnett) for providing this bugfix. [PR#2915](https://github.com/newrelic/newrelic-ruby-agent/pull/2915)
Version 9.14.0 of the agent introduced an optimization related to how the agent handles boolean configuration parameters which inadvertently caused the agent to stop operating properly in an AWS Lambda layer context. [Issue#2919](https://github.com/newrelic/newrelic-ruby-agent/issues/2919)[PR#2920](https://github.com/newrelic/newrelic-ruby-agent/pull/2920)
30
+
3
31
## v9.14.0
4
32
5
-
Version 9.14.0 adds Apache Kafka instrumentation for the rdkafka and ruby-kafka gems, introduces a configuration-based, automatic way to add custom instrumentation method tracers, correctly captures MIME type for AcionDispatch 7.0+ requests, properly handles Boolean coercion for `newrelic.yml` configuration, fixes a JRuby bug in the configuration manager, fixes a bug related to `Bundler.rubygems.installed_specs`, and fixes a bug to make the agent compatible with ViewComponent v3.15.0+.
33
+
Version 9.14.0 adds Apache Kafka instrumentation for the rdkafka and ruby-kafka gems, introduces a configuration-based, automatic way to add custom instrumentation method tracers, correctly captures MIME type for ActionDispatch 7.0+ requests, properly handles Boolean coercion for `newrelic.yml` configuration, fixes a JRuby bug in the configuration manager, fixes a bug related to `Bundler.rubygems.installed_specs`, and fixes a bug to make the agent compatible with ViewComponent v3.15.0+.
6
34
7
35
-**Feature: Add Apache Kafka instrumentation for the rdkafka and ruby-kafka gems**
8
36
@@ -42,21 +70,21 @@ Version 9.14.0 adds Apache Kafka instrumentation for the rdkafka and ruby-kafka
42
70
- MyCompany::User.notify
43
71
```
44
72
45
-
That configuration example uses YAML array syntax to specify both methods. Alternatively, a comma-delimited string can be used instead:
73
+
That configuration example uses YAML array syntax to specify both methods. Alternatively, you can use a comma-delimited string:
Whitespace around the comma(s) in the list is optional. When configuring the agent with a list of methods via the `NEW_RELIC_AUTOMATIC_CUSTOM_INSTRUMENTATION_METHOD_LIST` environment variable, this comma-delimited string format should be used:
79
+
Whitespace around the comma(s) in the list is optional. When configuring the agent with a list of methods via the `NEW_RELIC_AUTOMATIC_CUSTOM_INSTRUMENTATION_METHOD_LIST` environment variable, use this comma-delimited string format:
-**Feature: Collect just MIME type for AcionDispatch 7.0+ requests**
87
+
-**Feature: Collect just MIME type for ActionDispatch 7.0+ requests**
60
88
61
89
Rails 7.0 [introduced changes](https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#actiondispatch-request-content-type-now-returns-content-type-header-as-it-is) to the behavior of `ActionDispatch::Request#content_type`, adding extra request-related details the agent wasn't expecting to collect. Additionally, the agent's use of `content_type ` was triggering deprecation warnings. The agent now uses `ActionDispatch::Request#media_type` to capture the MIME type. Thanks to [@internethostage](https://github.com/internethostage) for letting us know about this change. [Issue#2500](https://github.com/newrelic/newrelic-ruby-agent/issues/2500)[PR#2855](https://github.com/newrelic/newrelic-ruby-agent/pull/2855)
0 commit comments