rotaie / ruby - come salvare ActionView :: TemplateError
-
19-09-2019 - |
Domanda
sto testando un'applicazione creata con le rotaie e di volta in volta ottenere i bug
quando succede, si verifica ActionView :: TemplateError e viene registrato nel registro / production.log
Come faccio a prenderlo e f.ex. Mi inviare via e-mail ogni volta che succede da qualche parte in app?
qual è il modo migliore per farlo?
f.ex. in ApplicationController con una sorta di before_filter?
il codice sarebbe, immagino
before_filter :app_error_catch
def app_error_catch
begin
rescue ActionView::TemplateError
Mailer.deliver_apperror(errormessage)
end
end
è così vicino alla verità? e come faccio ad avere il "errormessage"?
grazie
Soluzione
Hai guardato [exception_notifier][1]
o hoptoad? exception_notifier è un plugin che invierà una e-mail su un'eccezione, completo di backtrace.
Hoptoad è un sito che raccoglie le informazioni sulle eccezioni della vostra applicazione.
Altri suggerimenti
Non è necessario scrivere questo da soli - ci sono plugin costruite per fare questo. Come suggerito da flyfishr64, exception_notifier è ampiamente utilizzato.
passare attraverso le seguenti (breve) screencast e vedere quale soluzione ti piace il migliore.
Lungo le linee di risposta di flyfishr64 , c'è anche la bella eccezionale
Ci sono diversi strumenti / servizi che è possibile utilizzare.
servizi terze parti:
Plugin:
- eccezione Logger (quasi morto)
personalizzato
Si può facilmente integrare una funzione personalizzata utilizzando rescue_from e < a href = "http://api.rubyonrails.org/classes/ActionController/Rescue.html#M000415" rel = "nofollow"> noreferrer metodi rescue_action_in_public.