6

Je migre des rails 2.3 vers les rails 3.1, j'essaie d'envoyer un e-mail lorsqu'une exception est générée. J'utilise le joyau d'exception_notification.Envoyer un e-mail lorsque l'exception ne s'est pas produite, en utilisant exception_notification

Mes autres courriels fonctionnent. Mais le courrier d'exception ne se fait pas virer.

ci-dessous sont les paramètres dans mon fichier staging.rb.

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

et qui suit est le code dans 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} 
    } 

Je ne sais pas pourquoi l'e-mail ne déclenche pas, et je ne vois aucune erreur. Toute aide serait appréciée, merci.

+0

Destinataires définis sur _String_ '" email_id "'. On dirait suspect. – mudasobwa

+0

Qui est juts une variable d'espace réservé, j'ai l'id d'email approprié mis là –

+1

quelle est la version de votre gem 'exception_notification'? –

Répondre

1

déplacer le code de configuration de pierres précieuses au fichier environment.rb, au lieu de application.rb

4

Vous devez configurer votre application comme ceci:

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} 

Remarque Vous avez excesive déclaration :email => {...} qui est utilisé dans la configuration pour exception_notifier version 4 (voir here). Mais vous ne pouvez pas utiliser la version 4 de exception_notifier avec les rails 3.1.

J'ai créé un référentiel sur github https://github.com/dimakura/stackoverflow-projects/tree/master/32118817-exception-notification, qui est un exemple de travail. J'ai utilisé ruby ​​1.9.3, rails 3.1.12 et exception_notifier3.0.1. Je suppose que vous utilisez les mêmes gemmes ou à proximité.

Remarque 2 Lorsque j'ai ajouté email: {...} à la configuration, les messages d'exception s'arrêtent pour arriver.

+0

Salut dimakura, donc vous suggérer de ne pas ajouter d'e-mail: {...} à la configuration –

+0

Oui, configurez sans elle. J'ai reproduit exactement votre bug, en utilisant l'email: {} – dimakura

+0

@ opensource-ios a-t-il fonctionné pour vous? – dimakura