gpt4 book ai didi

ruby-on-rails - 如何防止重试 sidekiq 上的某些异常/错误

转载 作者:数据小太阳 更新时间:2023-10-29 07:54:57 25 4
gpt4 key购买 nike

我有一个 sidekiq 工作人员,它将请求第 3 方 api(Mailchimp) 并得到一些响应。有时它会响应错误消息,api gem 会引发错误。

不过,那些Errors都是正常的,不需要重试。所以我希望 Sidekiq 在出现这些错误时阻止重试。

我尝试了一个简单的救援,但它不会阻止 sidekiq 捕获引发的错误。

def preform(id)
UpdateMailchimpService.new.(id)
rescue
Mailchimp::ListInvalidBounceMemberError
end

有什么办法吗?谢谢

更新

最后发现我的问题是因为我们的部署工具坏了(部署失败但没有实现)。实际上,Sidekiq 将忽略任何挽救的错误/异常,并且不会重试它们并报告给 Bugsnag。

Bugsnag's documentation ,它清楚地说:

Bugsnag should be installed and configured, and any unhandled exceptions will be automatically detected and should appear in your Bugsnag dashboard.

post github上没有明确的解释,所以这就是为什么我对这个问题感到困惑。

最佳答案

您的假设/示例不正确。做正常的 Ruby 事情:挽救错误并忽略它。

def perform(id)
UpdateMailchimpService.new.(id)
rescue NormalError
# job will succeed normally and Sidekiq won't retry it.
end

关于ruby-on-rails - 如何防止重试 sidekiq 上的某些异常/错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44754548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com