Breaking Changes 🛠
-
Logs are now enabled by default and
enable_logsis removed. by @sl0thentr0py in #3053Using
sentry-railswill automatically turn on automatic structured logging from Rails. if you want to turn it off, use:Sentry.init do |config # ... config.rails.structured_logging.enabled = false end
-
Metrics are now enabled by default and
enable_metricsis removed. by @sl0thentr0py in #3061 -
config.otlp.setup_otlp_traces_exporterandconfig.otlp.setup_propagatornow default to false. by @sl0thentr0py in #3063
New Features ✨
Data Collection
We are moving away from send_default_pii to a more granular configuration called data_collection.
It allows you to precisely control the data that Sentry collects from your app.
Sentry.init do |config|
# ...
config.data_collection.user_info = false
config.data_collection.http_bodies = []
endsend_default_pii is deprecated but will continue to default to false.
data_collection will be backfilled when send_default_pii = false with the following values in 7.0.0:
data_collection.user_info = false
data_collection.cookies.mode = :off
data_collection.http_headers.request.mode = :deny_list
data_collection.http_headers.request.terms = %w[forwarded -ip _ip remote via _user -user]
data_collection.http_headers.response.mode = :deny_list
data_collection.http_headers.response.terms = %w[forwarded -ip _ip remote via _user -user]
data_collection.http_bodies = []
data_collection.url_query_params.mode = :off
data_collection.graphql.document = false
data_collection.graphql.variables = false
data_collection.database_query_data = false
data_collection.queues = false
data_collection.frame_context_lines = 3In 8.0.0, send_default_pii will be removed and we will move to more permissive defaults for data_collection.
We recommend migrating to data_collection to match the behavior you want eventually.
- Make rails breadcrumbs respect data collection by @sl0thentr0py in #3068
- Change stack_frame_variables to KeyValueCollection by @sl0thentr0py in #3066
- Allow booleans as shorthand for KeyValueCollection fields by @sl0thentr0py in #3065
- Gate ActiveJob arguments and ExecutionContext inclusion by @sl0thentr0py in #3064
- Port Rails log subscriber by @sl0thentr0py in #3034
- Port Rails controller and ActiveStorage by @sl0thentr0py in #3033
- Port redis, net:http, faraday and excon by @sl0thentr0py in #3032
- Request data collection by @sl0thentr0py in #3030
- User data collection by @sl0thentr0py in #3028
- Add sensitive key-value collection filter by @sl0thentr0py in #3025
- Add base DataCollection configuration with defaults and backfill by @sl0thentr0py in #3022