Class: ActionMailer::LogSubscriber
- Inherits:
-
ActiveSupport::LogSubscriber
- Object
- ActiveSupport::Subscriber
- ActiveSupport::LogSubscriber
- ActionMailer::LogSubscriber
- Defined in:
- actionmailer/lib/action_mailer/log_subscriber.rb
Overview
Implements the ActiveSupport::LogSubscriber for logging notifications when email is delivered or received.
Constant Summary
Constants inherited from ActiveSupport::LogSubscriber
ActiveSupport::LogSubscriber::BLACK, ActiveSupport::LogSubscriber::BLUE, ActiveSupport::LogSubscriber::BOLD, ActiveSupport::LogSubscriber::CLEAR, ActiveSupport::LogSubscriber::CYAN, ActiveSupport::LogSubscriber::GREEN, ActiveSupport::LogSubscriber::MAGENTA, ActiveSupport::LogSubscriber::RED, ActiveSupport::LogSubscriber::WHITE, ActiveSupport::LogSubscriber::YELLOW
Instance Attribute Summary
Attributes inherited from ActiveSupport::Subscriber
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.
-
#receive(event) ⇒ Object
An email was received.
Methods inherited from ActiveSupport::LogSubscriber
#finish, flush_all!, log_subscribers, #start
Methods inherited from ActiveSupport::Subscriber
attach_to, detach_from, #finish, #initialize, method_added, #start, subscribers
Constructor Details
This class inherits a constructor from ActiveSupport::Subscriber
Instance Method Details
#deliver(event) ⇒ Object
An email was delivered.
10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'actionmailer/lib/action_mailer/log_subscriber.rb', line 10 def deliver(event) info do perform_deliveries = event.payload[:perform_deliveries] if 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.
39 40 41 |
# File 'actionmailer/lib/action_mailer/log_subscriber.rb', line 39 def logger ActionMailer::Base.logger end |
#process(event) ⇒ Object
An email was generated.
30 31 32 33 34 35 36 |
# File 'actionmailer/lib/action_mailer/log_subscriber.rb', line 30 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 |
#receive(event) ⇒ Object
An email was received.
24 25 26 27 |
# File 'actionmailer/lib/action_mailer/log_subscriber.rb', line 24 def receive(event) info { "Received mail (#{event.duration.round(1)}ms)" } debug { event.payload[:mail] } end |