Class: Determinator::Tracking::Sidekiq::Middleware

Inherits:
Object
  • Object
show all
Defined in:
lib/determinator/tracking/sidekiq/middleware.rb

Instance Method Summary collapse

Instance Method Details

#call(worker, job, queue) { ... } ⇒ Void

Parameters:

Yields:

  • the next middleware in the chain or worker ‘perform` method

Returns:

  • (Void)


13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/determinator/tracking/sidekiq/middleware.rb', line 13

def call(worker, job, queue)
  begin
    Determinator::Tracking.start!(:sidekiq)
    yield
  rescue => ex
    error = true
    raise
  ensure
    Determinator::Tracking.finish!(
      endpoint: Determinator::Tracking.collect_endpoint_info(worker.class.name),
      queue: queue,
      error: !!error
    )
  end
end