在 Rails 源代码中./actionmailer/lib/action_mailer/log_subscriber.rb
:
module ActionMailer
class LogSubscriber < ActiveSupport::LogSubscriber
def deliver(event)
return unless logger.info?
recipients = Array(event.payload[:to]).join(', ')
info("\nSent mail to #{recipients} (#{event.duration.round(1)}ms)")
debug(event.payload[:mail])
end
def receive(event)
return unless logger.info?
info("\nReceived mail (#{event.duration.round(1)}ms)")
debug(event.payload[:mail])
end
def logger
ActionMailer::Base.logger
end
end
end
Rails 没有提供过滤电子邮件的方法,因此您可以:
- 分叉导轨,删除此信息,并使用您的分叉版本的导轨。
- 编辑此代码,添加一些过滤器,然后发出拉取请求。