Existe-t-il une gemme like_notification-like pour delayed_job? De préférence cela fonctionne avec REE-1.8.7 et Rails 2.3.10.exception_notification pour delayed_job
4
A
Répondre
3
Je l'ai fait quelque chose comme ça dans le passé pour les tâches de rake d'emploi différé:
require 'action_mailer'
class ExceptionMailer < ActionMailer::Base
def setup_mail
@from = ExceptionNotifier.sender_address
@sent_on = Time.now
@content_type = "text/plain"
end
def exception_message(subject, message)
setup_mail
@subject = subject
@recipients = ExceptionNotifier.exception_recipients
@body = message
end
end
namespace :jobs do
desc "sync the local database with the remote CMS"
task(:sync_cms => :environment) do
Resort.sync_all!
result = Delayed::Job.work_off
unless result[1].zero?
ExceptionMailer.deliver_exception_message("[SYNC CMS] Error syncing CMS id: #{Delayed::Job.last.id}", Delayed::Job.last.last_error)
end
end
fin
2
Inclure ce module dans les classes qui doivent être retardées:
require 'exception_notifier'
module Delayed
module ExceptionNotifier
# Send error via exception notifier
def error(job, e)
env = {}
env['exception_notifier.options'] = {
:sections => %w(backtrace delayed_job),
:email_prefix => '[Delayed Job ERROR] ',
:exception_recipients => %w([email protected]),
:sender_address => %([email protected])
}
env['exception_notifier.exception_data'] = {:job => job}
::ExceptionNotifier::Notifier.exception_notification(env, e).deliver
end
end
end
et créez un modèle pour la notification dans app/views/exception_notifier/_delayed_job.text.erb:
Job name: <%= @job.name %>
Job: <%= raw @job.inspect %>
* Process: <%= raw $$ %>
* Server : <%= raw `hostname -s`.chomp %>
Questions connexes
- 1. aide pour l'installation delayed_job
- 2. Rails3 Beta4 configuration Delayed_job
- 3. Delayed_job personnalisé échecs assertions?
- 4. Rails 3 - Delayed_Job
- 5. format journal avec delayed_job
- 6. Jammit & delayed_job on Heroku
- 7. Delayed_job en développement
- 8. delayed_job redémarrer de capistrano
- 9. Delayed_Job - sur site5 serveur
- 10. Réessayer manuellement Job dans Delayed_job
- 11. Est-ce que delayed_job fonctionne pour rails3? quelle version?
- 12. Rails 3 - Delayed_Job - Pour tous les e-mails
- 13. Y at-il un delayed_job comme gem pour jruby?
- 14. problème avec le script ruby / delayed_job start. delayed_job et daemon sur windows
- 15. Rails problème avec Delayed_Job et enregistrement actif
- 16. ordre d'exécution des travaux dans delayed_job
- 17. Quelques questions de base sur 'delayed_job'
- 18. Callback après le processus de delayed_job travail
- 19. Est-ce que monit redémarrer delayed_job
- 20. Comment dois-je exécuter delayed_job dans l'environnement de production?
- 21. Comment puis-je envoyer des emails avec delayed_job
- 22. Comment mettre en sourdine la sortie delayed_job dans test?
- 23. rails delayed_job problème de la consommation de mémoire
- 24. Rails en cours d'exécution multiple delayed_job - lock tables
- 25. Priorités de test sur le plugin delayed_job dans les rails
- 26. delayed_job et rails 3 ne charge pas les travaux
- 27. Démarrage de delayed_job au démarrage avec des rails
- 28. râteau emplois: travail fonctionne bien. problème avec script/delayed_job start
- 29. Mise à l'échelle automatique des travailleurs pour delayed_job dans Rails 3
- 30. Comment puis-je utiliser delayed_job sur heroku pour envoyer des e-mails qui sont groupés?
commuté à Resque =) – razenha
Lors de l'utilisation de Resque, [this gem] (https://github.com/akshayrawat/resque_exception_notification) signale les exceptions via exception_notification. –