Sha256: a573d41b187a52192cafe9ba619b8ee8385dfae8049b47445b89aa7edca37aa8
Contents?: true
Size: 796 Bytes
Versions: 12
Compression:
Stored size: 796 Bytes
Contents
module WatCatcher class SidekiqMiddleware def call(worker, msg, queue) begin yield rescue => excpt raise if thrown_by_watcatcher?(msg) u = nil begin if worker.class == Sidekiq::Extensions::DelayedClass (worker,method_name,args) = YAML.load(msg["args"][0]) end if worker.respond_to?(:wat_user) && worker.method(:wat_user).arity == msg["args"].length u = worker.wat_user(*msg["args"]) else u = { id: "jid_#{msg["jid"]}", jid: msg["jid"] } end rescue; raise end WatCatcher::Report.new(excpt, user: u, sidekiq: msg) raise end end def thrown_by_watcatcher?(msg) msg["class"] =~ /WatCatcher/ end end end
Version data entries
12 entries across 12 versions & 1 rubygems