Skip to content

Commit c2c7c8f

Browse files
committed
fix(logging): add missing :origin to rails logging
1 parent 4abc75c commit c2c7c8f

5 files changed

Lines changed: 9 additions & 2 deletions

File tree

sentry-rails/lib/sentry/rails/log_subscriber.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ module Rails
2727
# end
2828
# end
2929
class LogSubscriber < ActiveSupport::LogSubscriber
30+
ORIGIN = "auto.logger.rails.log_subscriber"
31+
3032
class << self
3133
if ::Rails.version.to_f < 6.0
3234
# Rails 5.x does not provide detach_from
@@ -51,8 +53,9 @@ def detach_from(namespace, notifications = ActiveSupport::Notifications)
5153
# @param message [String] The log message
5254
# @param level [Symbol] The log level (:trace, :debug, :info, :warn, :error, :fatal)
5355
# @param attributes [Hash] Additional structured attributes to include
54-
def log_structured_event(message:, level: :info, attributes: {})
55-
Sentry.logger.public_send(level, message, **attributes)
56+
# @param origin [String] The origin of the log event
57+
def log_structured_event(message:, level: :info, attributes: {}, origin: ORIGIN)
58+
Sentry.logger.public_send(level, message, **attributes, origin: origin)
5659
rescue => e
5760
# Silently handle any errors in logging to avoid breaking the application
5861
Sentry.configuration.sdk_logger.debug("Failed to log structured event: #{e.message}")

sentry-rails/spec/sentry/rails/log_subscribers/action_controller_subscriber_spec.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
expect(log_event[:attributes][:method][:value]).to eq("GET")
3636
expect(log_event[:attributes][:path][:value]).to eq("/world")
3737
expect(log_event[:attributes][:format][:value]).to eq(:html)
38+
expect(log_event[:attributes]["sentry.origin"][:value]).to eq("auto.logger.rails.log_subscriber")
3839
end
3940

4041
it "logs bad requests appropriately" do

sentry-rails/spec/sentry/rails/log_subscribers/action_mailer_subscriber_spec.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
expect(log_event[:attributes][:duration_ms][:value]).to be > 0
3939
expect(log_event[:attributes][:perform_deliveries][:value]).to be true
4040
expect(log_event[:attributes][:delivery_method][:value]).to eq(:test)
41+
expect(log_event[:attributes]["sentry.origin"][:value]).to eq("auto.logger.rails.log_subscriber")
4142
expect(log_event[:attributes][:date]).to be_present
4243
end
4344

sentry-rails/spec/sentry/rails/log_subscribers/active_job_subscriber_spec.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
expect(log_event[:level]).to eq("info")
2727
expect(log_event[:attributes][:job_class][:value]).to eq("NormalJob")
2828
expect(log_event[:attributes][:duration_ms][:value]).to be > 0
29+
expect(log_event[:attributes]["sentry.origin"][:value]).to eq("auto.logger.rails.log_subscriber")
2930
end
3031

3132
it "logs job enqueue events when jobs are enqueued" do

sentry-rails/spec/sentry/rails/log_subscribers/active_record_subscriber_spec.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
expect(log_event[:level]).to eq("info")
2626
expect(log_event[:attributes][:sql][:value]).to include("INSERT INTO")
2727
expect(log_event[:attributes][:duration_ms][:value]).to be > 0
28+
expect(log_event[:attributes]["sentry.origin"][:value]).to eq("auto.logger.rails.log_subscriber")
2829
end
2930

3031
it "logs SELECT queries with proper attributes" do

0 commit comments

Comments
 (0)