Class: ActionMailer::LogSubscriber
- Inherits:
-
ActiveSupport::LogSubscriber
- Object
- ActiveSupport::LogSubscriber
- ActionMailer::LogSubscriber
- Defined in:
- lib/action_mailer/log_subscriber.rb
Overview
Action Mailer LogSubscriber
Implements the ActiveSupport::LogSubscriber for logging notifications when email is delivered or received.
Instance Method Summary collapse
-
#deliver(event) ⇒ Object
An email was delivered.
-
#logger ⇒ Object
Use the logger configured for ActionMailer::Base.
-
#process(event) ⇒ Object
An email was generated.
Instance Method Details
#deliver(event) ⇒ Object
An email was delivered.
12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/action_mailer/log_subscriber.rb', line 12 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..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 |
#logger ⇒ Object
Use the logger configured for ActionMailer::Base.
38 39 40 |
# File 'lib/action_mailer/log_subscriber.rb', line 38 def logger ActionMailer::Base.logger end |
#process(event) ⇒ Object
An email was generated.
28 29 30 31 32 33 34 |
# File 'lib/action_mailer/log_subscriber.rb', line 28 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 |