Настройка уведомлений об исключениях с помощью отложенных заданий в Rails 4
Я не могу получить драгоценный камень Уведомления об Исключении, чтобы уведомить меня, когда Задержка Задания терпит неудачу. Я могу потерпеть неудачу на работе, но уведомление не выходит. Кто-нибудь еще понял это?
Я использую:
delayed_job_active_record (4.0.0)
exception_notification (4.0.0)
И есть следующее в моих инициализаторах /delayed_jobs_config:
# Chain delayed job's handle_failed_job method to do exception notification
Delayed::Worker.class_eval do
def handle_failed_job_with_notification(job, error)
handle_failed_job_without_notification(job, error)
# only actually send mail in production
if Rails.env.production?
# rescue if ExceptionNotifier fails for some reason
begin
ExceptionNotifier::Notifier.background_exception_notification(error)
rescue Exception => e
Rails.logger.error "ExceptionNotifier failed: #{e.class.name}: #{e.message}"
e.backtrace.each do |f|
Rails.logger.error " #{f}"
end
Rails.logger.flush
end
end
end
alias_method_chain :handle_failed_job, :notification
end
1 ответ
Решение
Начиная с exception_notification 4.0 , появился новый способ обработки уведомлений вручную. Попробуй поменять
ExceptionNotifier::Notifier.background_exception_notification(error)
за
ExceptionNotifier.notify_exception(error)