Releases: getsentry/sentry-ruby
5.22.1
5.22.0
Features
-
Add
include_sentry_event
matcher for RSpec #2424 -
Add support for Sentry Cache instrumentation, when using Rails.cache #2380
-
Add support for Queue Instrumentation for Sidekiq. #2403
-
Add support for string errors in error reporter (#2464)
-
Reset
trace_id
and add root transaction for sidekiq-cron #2446 -
Add support for Excon HTTP client instrumentation (#2383)
Note: MemoryStore and FileStore require Rails 8.0+
Bug Fixes
- Fix Vernier profiler not stopping when already stopped #2429
- Fix
send_default_pii
handling in rails controller spans #2443- Fixes #2438
- Fix
RescuedExceptionInterceptor
to handle an empty configuration #2428 - Add mutex sync to
SessionFlusher
aggregates #2469- Fixes #2468
- Fix sentry-rails' backtrace cleaner issues (#2475)
- Fixes #2472
5.21.0
Features
-
Experimental support for multi-threaded profiling using Vernier (#2372)
You can have much better profiles if you're using multi-threaded servers like Puma now by leveraging Vernier.
To use it, first addvernier
to yourGemfile
and make sure it is loaded beforesentry-ruby
.# Gemfile gem 'vernier' gem 'sentry-ruby'
Then, set a
profiles_sample_rate
and the newprofiler_class
configuration in your sentry initializer to use the new profiler.# config/initializers/sentry.rb Sentry.init do |config| # ... config.profiles_sample_rate = 1.0 config.profiler_class = Sentry::Vernier::Profiler end
Internal
5.20.1
5.20.0
5.19.0
Features
-
Use
Concurrent.available_processor_count
instead ofConcurrent.usable_processor_count
(#2358) -
Support for tracing Faraday requests (#2345)
- Closes #1795
- Please note that the Faraday instrumentation has some limitations in case of async requests: lostisland/faraday#1381
- lostisland/faraday#1381
Usage:
Sentry.init do |config| # ... config.enabled_patches << :faraday end
-
Support for attachments (#2357)
Usage:
Sentry.add_attachment(path: '/foo/bar.txt') Sentry.add_attachment(filename: 'payload.json', bytes: '{"value": 42}'))
-
Transaction data are now included in the context (#2365)
- Closes #2364
-
Inject Sentry meta tags in the Rails application layout automatically in the generator (#2369)
To turn this behavior off, use
bin/rails generate sentry --inject-meta false
Bug Fixes
- Fix skipping
connect
spans in open-telemetry #2364
5.18.2
5.18.1
5.18.0
Features
-
Add generator for initializer generation (#2286)
Rails users will be able to use
bin/rails generate sentry
to generate theirconfig/initializers/sentry.rb
file. -
Notify users when their custom options are discarded (#2303)
-
Add a new
:graphql
patch to automatically enable instrumenting GraphQL spans (#2308)Usage:
Sentry.init do |config| # ... config.enabled_patches += [:graphql] end
-
Add
Sentry.get_trace_propagation_meta
helper for injecting meta tags into views (#2314) -
Add query source support to
sentry-rails
(#2313)The feature is only activated in apps that use Ruby 3.2+ and Rails 7.1+. By default only queries that take longer than 100ms will have source recorded, which can be adjusted by updating the value of
config.rails.db_query_source_threshold_ms
. -
Log envelope delivery message with debug instead of info (#2320)
Bug Fixes
- Don't throw error on arbitrary arguments being passed to
capture_event
options #2301- Fixes #2299
- Decrease the default number of background worker threads by half (#2305)
- Fixes #2297
- Don't mutate
enabled_environments
when usingSentry::TestHelper
(#2317) - Don't use array for transaction names and sources on scope (#2324)
- Fixes #2257
- BREAKING This removes the internal
scope.transaction_names
method, please usescope.transaction_name
instead
Internal
- Add
origin
to spans and transactions to track integration sources for instrumentation (#2319)