class ActionMailer::LogSubscriber
email is delivered or received.
Implements the ActiveSupport::LogSubscriber for logging notifications when
= Action Mailer LogSubscriber
def deliver(event)
def deliver(event) info do if exception = event.payload[:exception_object] "Failed delivery of mail #{event.payload[:message_id]} error_class=#{exception.class} error_message=#{exception.message.inspect}" elsif event.payload[:perform_deliveries] "Delivered mail #{event.payload[:message_id]} (#{event.duration.round(1)}ms)" else "Skipped delivery of mail #{event.payload[:message_id]} as `perform_deliveries` is false" end end debug { event.payload[:mail] } end
def logger
def logger ActionMailer::Base.logger end
def process(event)
def process(event) debug do mailer = event.payload[:mailer] action = event.payload[:action] "#{mailer}##{action}: processed outbound mail in #{event.duration.round(1)}ms" end end