ActiveJob docs for exception handling提供了如何在作业上下文中执行异常处理的示例:
class GuestsCleanupJob < ActiveJob::Base queue_as :default rescue_from(ActiveRecord::RecordNotFound) do |exception| # Do something with the exception end def perform # Do something later end end
我在我正在构建的应用程序中使用此技术并捕获某些特定异常.我的问题是,如何捕获任何和所有异常?
我正在捕获各种异常并且每种方式执行相同的过程,所以我想干掉我的代码,并且在我当前的实现中,某些异常被忽略,这意味着在某些情况下我的工作无声地失败.
如何使用ActiveJob捕获任何常规异常?
解决方法
试试这个
class GuestsCleanupJob < ActiveJob::Base ... rescue_from(StandardError) do |exception| # Do something with the exception end ... end