2009-05-16 14 views
15

Domyślną wartością w Ruby on Rails jest ustawienie tego ustawienia na false (w produkcji i rozwoju).Czy raise_delivery_errors należy ustawić na true w aplikacji Rails produkcyjnych?

config.action_mailer.raise_delivery_errors = false 

Wydaje się dziwne. Zdecydowanie włączam to w rozwój, który był pomocny. Ale dlaczego nikt nie wydaje się, aby to zostało włączone w produkcję? Czy nie powinniśmy otrzymywać powiadomienia, jeśli wiadomość e-mail nie zostanie przesłana? Wydaje się to dość ważne.

Komentarz szyny w stanach production.rb

złe adresy e-mail będą ignorowane

Ale mam pewne poprawności do sprawdzania nieprawidłowych adresów e-mail. Wygląda na to, że nadal chciałbym wiedzieć (za pomocą zgłaszającego wyjątki lub w inny sposób), jak często użytkownicy nie otrzymują wiadomości e-mail.

Odpowiedz

12

Prawdziwe pytanie brzmi: czy nieudany e-mail może spowodować błąd dla użytkownika końcowego? Być może serwer poczty jest wyłączony lub kilka innych przyczyn uniemożliwia wysłanie e-maila. Czy chcesz przekazać błąd 50x swojemu użytkownikowi?

Osobiście dostarczyć wszystkie wiadomości asynchronicznie, więc mogę kontrolować tego typu rzeczy (plus to bardzo pomaga w czasy reakcji)

+0

Cześć, myślę, że tak, ponieważ jeśli użytkownik widzi go, to znaczy ja” Zobaczę (i wiem o) za pomocą wyjątku mailer. W przeciwnym razie prawdopodobnie nigdy bym nie wiedział, że coś poszło nie tak. Używam postfiksa, który, jak sądzę, robi to asynchronicznie, więc oznacza to, że powinien on rzadko (jeśli w ogóle) być niedostępny, prawda? Lub jeśli wystąpi błąd, pojawi się on w postfix? Dzięki za pomoc. –

Powiązane problemy