默认情况下,sidekiq将重试任何引发异常的作业。那样就好。但是,我希望能够捕获该异常,以便我的异常处理程序不会得到通知,然后重试该作业。我如何做出反应?
所以我的代码看起来像这样:
1 IntelliSense: identifier "AnsiString" is undefined.
但我想重试那份工作。
答案 0 :(得分:3)
配置您的错误服务客户端以忽略ExcClass。 Sidekiq将重试,您不会收到错误报告。
答案 1 :(得分:2)
如果我正确地关注了您的问题,听起来您可能需要自定义错误处理程序来执行您想要的操作:
Sidekiq.configure_server do |config|
config.error_handlers << Proc.new {|exception,context_hash| MyErrorService.notify(exception,context_hash) }
end
默认情况下,Sidekiq会继续自动重试您的作业。
这是否回答了你的问题?这有点令人困惑。 Here are the docs我从中提取了上述信息。