class ActionMailer::LogSubscriber
Implements the ActiveSupport::LogSubscriber for logging notifications when email is delivered and received.
Public Instance Methods
deliver(event)
click to toggle source
An email was delivered.
# File lib/action_mailer/log_subscriber.rb, line 8 def deliver(event) return unless logger.info? recipients = Array(event.payload[:to]).join(', ') info("\nSent mail to #{recipients} (#{event.duration.round(1)}ms)") debug(event.payload[:mail]) end
logger()
click to toggle source
Use the logger configured for ActionMailer::Base
# File lib/action_mailer/log_subscriber.rb, line 30 def logger ActionMailer::Base.logger end
process(event)
click to toggle source
An email was generated.
# File lib/action_mailer/log_subscriber.rb, line 23 def process(event) mailer = event.payload[:mailer] action = event.payload[:action] debug("\n#{mailer}##{action}: processed outbound mail in #{event.duration.round(1)}ms") end
receive(event)
click to toggle source
An email was received.
# File lib/action_mailer/log_subscriber.rb, line 16 def receive(event) return unless logger.info? info("\nReceived mail (#{event.duration.round(1)}ms)") debug(event.payload[:mail]) end