Rails ActiveJob - ActionMailer::DeliveryJob 中处理异常的好方法是什么

Rails ActiveJob - What's the good way to handle exception in ActionMailer::DeliveryJob

我在我的 Rails 项目中使用 ActiveJob + Sidekiq 进行任务处理。

我直接使用 MyMailer.some.deliver_later 发送邮件。它将自动创建一个 ActionMailer::DeliveryJob 任务并将其放入 Sidekiq 队列。

问题是,从那里处理异常有什么好处?

此致。

根据 http://edgeguides.rubyonrails.org/active_job_basics.html,我认为好的方法是在初始化程序中为 ActionMailer::DeliveryJob 设置异常错误处理程序,例如:

ActionMailer::DeliveryJob.rescue_from(Net::SMTPSyntaxError) do |exception|
  unless ['501 Command parsing failed'].include?(exception.message.strip)
    raise exception
  end
end