应该在生产Rails应用程序中将raise_delivery_errors设置为true吗?

时间:2009-05-16 02:44:25

标签: ruby-on-rails actionmailer

Ruby on Rails中的默认设置是将此设置为false(在生产和开发中)。

config.action_mailer.raise_delivery_errors = false
似乎很奇怪。我肯定会在开发中实现这一点,这对我很有帮助。但为什么似乎没有人在生产中开启此功能?如果电子邮件没有通过,我们是否应该收到通知?这似乎相当重要。

rails.rb中的rails注释状态

  

错误的电子邮件地址将被忽略

但我有一些验证可以检查错误的电子邮件地址。似乎我仍然想知道(通过例外通知程序或其他方式)用户没有收到电子邮件的频率。

1 个答案:

答案 0 :(得分:12)

真正的问题是,您是否希望失败的电子邮件向最终用户抛出错误?邮件服务器可能已关闭或其他一些原因阻止了邮件的发送。您是否希望这会向用户抛出50倍的错误?

就个人而言,我是异步发送所有电子邮件,因此我可以监控这类内容(加上它在响应时间方面有很大帮助)