6

我正在从 rails 2.3 迁移到 rails 3.1,我正在尝试在生成异常时发送电子邮件。我正在使用 exception_notification gem。

我其余的电子邮件都在工作。但是异常邮件不会被解雇。

以下是我的 staging.rb 文件中的设置。

config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true

以下是 application.rb 中的代码

C::Application.config.middleware.use ExceptionNotification::Rack,
  :email => {
    :email_prefix => "[#{Rails.env.to_s.upcase} Error] ",
    :sender_address => %{"Exception Notifier " <email_id>},
    :exception_recipients => %w{email_id}
  }

我不确定为什么电子邮件没有触发,也没有看到任何错误。任何帮助都会得到帮助,谢谢。

4

2 回答 2

4

您需要像这样配置您的应用程序:

C::Application.config.middleware.use ExceptionNotification::Rack,
  :email_prefix => "[#{Rails.env.to_s.upcase} Error] ",
  :sender_address => %{"Exception Notifier " <email_id>},
  :exception_recipients => %w{email_id}

注意您有过多的:email => {...}声明,用于exception_notifier版本配置4(请参阅此处)。但是您不能使用with rails的版本4exception_notifier3.1

我在 github https://github.com/dimakura/stackoverflow-projects/tree/master/32118817-exception-notification创建了一个存储库,这是一个工作示例。我使用了 ruby 1.9.3​​、rails3.1.12exception_notifier 3.0.1. 我猜你正在使用相同的宝石或接近它。

注 2当我添加email: {...}到配置中时,异常消息停止到达。

于 2015-09-03T10:35:16.043 回答
1

将 gem 配置代码移动到environment.rb文件中,而不是application.rb

于 2015-08-28T19:56:56.437 回答