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, CYAN, GREEN, LEVEL_CHECKS, MAGENTA, MODES, RED, WHITE, YELLOW
Class Attribute Summary
::ActiveSupport::LogSubscriber
- Inherited
::ActiveSupport::Subscriber
- Inherited
Class Method Summary
::ActiveSupport::LogSubscriber
- Inherited
.attach_to, | |
.flush_all! | Flush all log_subscribers’ logger. |
.log_subscribers, .new, .fetch_public_methods, .set_event_levels, .subscribe_log_level |
::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, .fetch_public_methods, .find_attached_subscriber, .invalid_event?, .pattern_subscribed?, .prepare_pattern, .remove_event_subscriber |
Instance Attribute Summary
::ActiveSupport::LogSubscriber
- Inherited
::ActiveSupport::Subscriber
- 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
#call, #logger, #publish_event, #silenced?, | |
#color | Set color by using a symbol or one of the defined constants. |
#log_exception, #mode_from |
::ActiveSupport::Subscriber
- Inherited
Constructor Details
This class inherits a constructor from ActiveSupport::LogSubscriber
Instance Method Details
#deliver(event)
An email was delivered.
# File 'actionmailer/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[: ]} error_class=#{exception.class} error_message=#{exception. .inspect}" elsif event.payload[: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 38
def logger ActionMailer::Base.logger end
#process(event)
An email was generated.
# File 'actionmailer/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