我正在从rails 2.3迁移到rails 3.1,我正在尝试在生成异常时发送电子邮件。我正在使用exception_notification gem。
我的其余电子邮件正在发挥作用。但异常邮件不会被解雇。
下面是我的staging.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}
}
以下是application.rb中的代码
res.redirect( req.originalUrl.split("?").shift() );
我不确定为什么电子邮件没有触发,也没有看到任何错误。任何帮助都会受到关注,谢谢。
答案 0 :(得分: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
声明(请参阅here)。但是,您无法使用4
版本exception_notifier
和3.1
。
我在github https://github.com/dimakura/stackoverflow-projects/tree/master/32118817-exception-notification创建了一个存储库,这是一个工作示例。我使用了ruby 1.9.3
,rails 3.1.12
和exception_notifier
3.0.1
。我猜你使用相同的宝石或靠近它。
注意2 当我将email: {...}
添加到配置中时,异常消息将停止到达。
答案 1 :(得分:1)
将gem配置代码移至environment.rb
文件,而不是application.rb