parent
e09e225e5c
commit
e9ecbca70d
@ -1,13 +1,24 @@ |
||||
# frozen_string_literal: true |
||||
|
||||
class SidekiqErrorHandler |
||||
BACKTRACE_LIMIT = 3 |
||||
|
||||
def call(*) |
||||
yield |
||||
rescue Mastodon::HostValidationError |
||||
# Do not retry |
||||
rescue => e |
||||
limit_backtrace_and_raise(e) |
||||
ensure |
||||
socket = Thread.current[:statsd_socket] |
||||
socket&.close |
||||
Thread.current[:statsd_socket] = nil |
||||
end |
||||
|
||||
private |
||||
|
||||
def limit_backtrace_and_raise(e) |
||||
e.set_backtrace(e.backtrace.first(BACKTRACE_LIMIT)) |
||||
raise e |
||||
end |
||||
end |
||||
|
Loading…
Reference in new issue