mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-13 14:46:05 +10:00
This ensures Rails and Sidekiq transactions are split into the series "rails_transactions" and "sidekiq_transactions" respectively.
24 lines
523 B
Ruby
24 lines
523 B
Ruby
module Gitlab
|
|
module Metrics
|
|
# Sidekiq middleware for tracking jobs.
|
|
#
|
|
# This middleware is intended to be used as a server-side middleware.
|
|
class SidekiqMiddleware
|
|
def call(worker, message, queue)
|
|
trans = Transaction.new
|
|
|
|
begin
|
|
trans.run { yield }
|
|
ensure
|
|
tag_worker(trans, worker)
|
|
trans.finish
|
|
end
|
|
end
|
|
|
|
def tag_worker(trans, worker)
|
|
trans.add_tag(:action, "#{worker.class.name}#perform")
|
|
end
|
|
end
|
|
end
|
|
end
|