class LogStasher::ActiveSupport::MailerLogSubscriber
Constants
- MAILER_FIELDS
Public Instance Methods
deliver(event)
click to toggle source
# File lib/logstasher/active_support/mailer_log_subscriber.rb, line 11 def deliver(event) process_event(event, %w[mailer deliver]) end
logger()
click to toggle source
# File lib/logstasher/active_support/mailer_log_subscriber.rb, line 28 def logger LogStasher.logger end
process(event)
click to toggle source
# File lib/logstasher/active_support/mailer_log_subscriber.rb, line 24 def process(event) process_event(event, %w[mailer process]) end
receive(event)
click to toggle source
This method will only be invoked on Rails
6.0 and prior. Starting in Rails
6.0 the receive method was deprecated in favor of ActionMailbox. The receive method was removed from ActionMailer in Rails
6.1, and there doesn't appear to be corresponding instrumentation for ActionMailbox.
# File lib/logstasher/active_support/mailer_log_subscriber.rb, line 20 def receive(event) process_event(event, %w[mailer receive]) end
Private Instance Methods
extract_metadata(payload)
click to toggle source
# File lib/logstasher/active_support/mailer_log_subscriber.rb, line 39 def extract_metadata(payload) payload.slice(*MAILER_FIELDS) end
process_event(event, tags)
click to toggle source
# File lib/logstasher/active_support/mailer_log_subscriber.rb, line 34 def process_event(event, tags) data = LogStasher.request_context.merge(extract_metadata(event.payload)) logger << "#{LogStasher.build_logstash_event(data, tags).to_json}\n" end