mirror of
https://github.com/mperham/sidekiq.git
synced 2022-11-09 13:52:34 -05:00
added FailureJobs middleware
This commit is contained in:
parent
92c1942363
commit
12d688f209
2 changed files with 25 additions and 0 deletions
|
@ -11,6 +11,7 @@ require 'sidekiq/middleware/chain'
|
|||
require 'sidekiq/middleware/server/active_record'
|
||||
require 'sidekiq/middleware/server/airbrake'
|
||||
require 'sidekiq/middleware/server/unique_jobs'
|
||||
require 'sidekiq/middleware/server/failure_jobs'
|
||||
require 'sidekiq/middleware/client/resque_web_compatibility'
|
||||
require 'sidekiq/middleware/client/unique_jobs'
|
||||
|
||||
|
|
24
lib/sidekiq/middleware/server/failure_jobs.rb
Normal file
24
lib/sidekiq/middleware/server/failure_jobs.rb
Normal file
|
@ -0,0 +1,24 @@
|
|||
module Sidekiq
|
||||
module Middleware
|
||||
module Server
|
||||
class FailureJobs
|
||||
def call(*args)
|
||||
yield
|
||||
rescue => e
|
||||
data = {
|
||||
:failed_at => Time.now.strftime("%Y/%m/%d %H:%M:%S %Z"),
|
||||
:payload => args[1],
|
||||
:exception => e.class.to_s,
|
||||
:error => e.to_s,
|
||||
:backtrace => e.backtrace,
|
||||
:worker => args[1]['class'],
|
||||
:queue => args[2]
|
||||
}
|
||||
|
||||
Sidekiq.redis.rpush(:failed, MultiJson.encode(data))
|
||||
raise
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Reference in a new issue