Class: ActionMailer::LogSubscriber
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
| Class Chain: | |
| Instance Chain: | |
| Inherits: | ActiveSupport::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
::ActiveSupport::LogSubscriber - Inherited
  BLACK, BLUE, BOLD, CLEAR, CYAN, GREEN, MAGENTA, RED, WHITE, YELLOW
Class Attribute Summary
::ActiveSupport::LogSubscriber - Inherited
Class Method Summary
::ActiveSupport::LogSubscriber - Inherited
| .flush_all! | Flush all log_subscribers’ logger. | 
| .log_subscribers | |
::ActiveSupport::Subscriber - Inherited
| .attach_to | Attach the subscriber to a namespace. | 
| .detach_from | Detach the subscriber from a namespace. | 
| .method_added | Adds event subscribers for all new methods added to the class. | 
| .new, .subscribers, .add_event_subscriber, .remove_event_subscriber | |
Instance Attribute Summary
::ActiveSupport::LogSubscriber - Inherited
Instance Method Summary
- 
    
      #deliver(event)  
    
    An email was delivered. 
- 
    
      #logger  
    
    Use the logger configured for Base.
- 
    
      #process(event)  
    
    An email was generated. 
::ActiveSupport::LogSubscriber - Inherited
::ActiveSupport::Subscriber - Inherited
Constructor Details
This class inherits a constructor from ActiveSupport::Subscriber
Instance Method Details
#deliver(event)
An email was delivered.
# 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[:]} (#{event.duration.round(1)}ms)" else "Skipped delivery of mail #{event.payload[:]} as `perform_deliveries` is false" end end debug { event.payload[:mail] } end
#logger
Use the logger configured for Base.
# File 'actionmailer/lib/action_mailer/log_subscriber.rb', line 33
def logger ActionMailer::Base.logger end
#process(event)
An email was generated.
# File 'actionmailer/lib/action_mailer/log_subscriber.rb', line 24
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