自动记录通过Rails发送的电子邮件

时间:2015-03-19 23:56:17

标签: ruby-on-rails ruby ruby-on-rails-4 actionmailer ruby-on-rails-4.2

我们通过Rails(然后通过Amazon SES)发送许多电子邮件。我现在要在我们的数据库中记录所有这些电子邮件,以便我们确切地知道哪些电子邮件发送到哪里以及所有细节。我也很想知道哪些类/方法发送了这些电子邮件或某种方式来标记它们。

这一定是一个非常普遍的需求,所以我很好奇是否有一个Rails自动处理这个机制?

1 个答案:

答案 0 :(得分:1)

mail-logger gem捕获有关发送的电子邮件的信息,并将其记录到文件中。

通过一些工作,可以自定义以写入数据库。

gem是overriding delivered_email method来记录详细信息:

class Mail::Logger::Callback
  def self.delivered_email(email)
    Mail::Logger.logger.info email.inspect
  end
end