lib/sentry/rails/configuration.rb in sentry-rails-5.12.0 vs lib/sentry/rails/configuration.rb in sentry-rails-5.13.0

- old
+ new

@@ -44,10 +44,71 @@ 'ActionDispatch::Http::MimeNegotiation::InvalidType', 'ActionController::UnknownHttpMethod', 'ActionDispatch::Http::Parameters::ParseError', 'ActiveRecord::RecordNotFound' ].freeze + + ACTIVE_SUPPORT_LOGGER_SUBSCRIPTION_ITEMS_DEFAULT = { + # action_controller + "write_fragment.action_controller" => %i[key], + "read_fragment.action_controller" => %i[key], + "exist_fragment?.action_controller" => %i[key], + "expire_fragment.action_controller" => %i[key], + "start_processing.action_controller" => %i[controller action params format method path], + "process_action.action_controller" => %i[controller action params format method path status view_runtime db_runtime], + "send_file.action_controller" => %i[path], + "redirect_to.action_controller" => %i[status location], + "halted_callback.action_controller" => %i[filter], + # action_dispatch + "process_middleware.action_dispatch" => %i[middleware], + # action_view + "render_template.action_view" => %i[identifier layout], + "render_partial.action_view" => %i[identifier], + "render_collection.action_view" => %i[identifier count cache_hits], + "render_layout.action_view" => %i[identifier], + # active_record + "sql.active_record" => %i[sql name statement_name cached], + "instantiation.active_record" => %i[record_count class_name], + # action_mailer + # not including to, from, or subject..etc. because of PII concern + "deliver.action_mailer" => %i[mailer date perform_deliveries], + "process.action_mailer" => %i[mailer action params], + # active_support + "cache_read.active_support" => %i[key store hit], + "cache_generate.active_support" => %i[key store], + "cache_fetch_hit.active_support" => %i[key store], + "cache_write.active_support" => %i[key store], + "cache_delete.active_support" => %i[key store], + "cache_exist?.active_support" => %i[key store], + # active_job + "enqueue_at.active_job" => %i[], + "enqueue.active_job" => %i[], + "enqueue_retry.active_job" => %i[], + "perform_start.active_job" => %i[], + "perform.active_job" => %i[], + "retry_stopped.active_job" => %i[], + "discard.active_job" => %i[], + # action_cable + "perform_action.action_cable" => %i[channel_class action], + "transmit.action_cable" => %i[channel_class], + "transmit_subscription_confirmation.action_cable" => %i[channel_class], + "transmit_subscription_rejection.action_cable" => %i[channel_class], + "broadcast.action_cable" => %i[broadcasting], + # active_storage + "service_upload.active_storage" => %i[service key checksum], + "service_streaming_download.active_storage" => %i[service key], + "service_download_chunk.active_storage" => %i[service key], + "service_download.active_storage" => %i[service key], + "service_delete.active_storage" => %i[service key], + "service_delete_prefixed.active_storage" => %i[service prefix], + "service_exist.active_storage" => %i[service key exist], + "service_url.active_storage" => %i[service key url], + "service_update_metadata.active_storage" => %i[service key], + "preview.active_storage" => %i[key], + "analyze.active_storage" => %i[analyzer], + }.freeze + class Configuration # Rails 7.0 introduced a new error reporter feature, which the SDK once opted-in by default. # But after receiving multiple issue reports, the integration seemed to cause serious troubles to some users. # So the integration is now controlled by this configuration, which is disabled (false) by default. # More information can be found from: https://github.com/rails/rails/pull/43625#issuecomment-1072514175 @@ -78,10 +139,14 @@ # config.rails.assets_regexp = /my_regexp/ # end # ``` attr_accessor :assets_regexp + # Hash of subscription items that will be shown in breadcrumbs active support logger. + # @return [Hash<String, Array<Symbol>>] + attr_accessor :active_support_logger_subscription_items + def initialize @register_error_subscriber = false @report_rescued_exceptions = true @skippable_job_adapters = [] @assets_regexp = if defined?(::Sprockets::Rails) @@ -90,9 +155,10 @@ @tracing_subscribers = Set.new([ Sentry::Rails::Tracing::ActionViewSubscriber, Sentry::Rails::Tracing::ActiveRecordSubscriber, Sentry::Rails::Tracing::ActiveStorageSubscriber ]) + @active_support_logger_subscription_items = Sentry::Rails::ACTIVE_SUPPORT_LOGGER_SUBSCRIPTION_ITEMS_DEFAULT.dup end end end end