From 90f53a448f9e68cd9b9c01335c8fbfa0936df669 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wojciech=20Wn=C4=99trzak?= Date: Wed, 29 Oct 2025 07:58:26 +0100 Subject: [PATCH] Fix context serialization in Rails error reporter Follow up to #1190 According to Rafael, Rails only injects controller and job into context, vide https://github.com/rails/rails/issues/56016#issuecomment-3458550211 --- lib/rollbar/plugins/rails/error_subscriber.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/rollbar/plugins/rails/error_subscriber.rb b/lib/rollbar/plugins/rails/error_subscriber.rb index e23e4bb0..a56c8664 100644 --- a/lib/rollbar/plugins/rails/error_subscriber.rb +++ b/lib/rollbar/plugins/rails/error_subscriber.rb @@ -5,8 +5,12 @@ def report(error, handled:, severity:, context:, source: nil) return unless handled || Rollbar.configuration.capture_uncaught != false extra = context.is_a?(Hash) ? context.deep_dup : {} - extra[:controller] = extra[:controller].class.name if extra[:controller]&.respond_to?(:class) extra[:custom_data_method_context] = source + + # Rails auto injected context + extra[:controller] = extra[:controller].class.name if extra[:controller]&.respond_to?(:class) + extra[:job] = extra[:job].class.name if extra[:job]&.respond_to?(:class) + Rollbar.log(severity, error, extra) end end