Class: Sidekiq::Tracer::ServerMiddleware
- Inherits:
-
Object
- Object
- Sidekiq::Tracer::ServerMiddleware
- Includes:
- Commons
- Defined in:
- lib/sidekiq/tracer/server_middleware.rb
Instance Attribute Summary collapse
-
#active_span ⇒ Object
readonly
Returns the value of attribute active_span.
-
#after_trace ⇒ Object
readonly
Returns the value of attribute after_trace.
-
#tracer ⇒ Object
readonly
Returns the value of attribute tracer.
Instance Method Summary collapse
-
#call(_worker, job, _queue) ⇒ Object
rubocop:disable Metrics/MethodLength.
-
#initialize(tracer, active_span, after_trace) ⇒ ServerMiddleware
constructor
A new instance of ServerMiddleware.
Methods included from Commons
Constructor Details
#initialize(tracer, active_span, after_trace) ⇒ ServerMiddleware
Returns a new instance of ServerMiddleware.
10 11 12 13 14 |
# File 'lib/sidekiq/tracer/server_middleware.rb', line 10 def initialize(tracer, active_span, after_trace) @tracer = tracer @active_span = active_span @after_trace = after_trace end |
Instance Attribute Details
#active_span ⇒ Object (readonly)
Returns the value of attribute active_span.
8 9 10 |
# File 'lib/sidekiq/tracer/server_middleware.rb', line 8 def active_span @active_span end |
#after_trace ⇒ Object (readonly)
Returns the value of attribute after_trace.
8 9 10 |
# File 'lib/sidekiq/tracer/server_middleware.rb', line 8 def after_trace @after_trace end |
#tracer ⇒ Object (readonly)
Returns the value of attribute tracer.
8 9 10 |
# File 'lib/sidekiq/tracer/server_middleware.rb', line 8 def tracer @tracer end |
Instance Method Details
#call(_worker, job, _queue) ⇒ Object
rubocop:disable Metrics/MethodLength
17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/sidekiq/tracer/server_middleware.rb', line 17 def call(_worker, job, _queue) tracer.start_active_span(operation_name(job), ignore_active_scope: true, tags: (job, "consumer")) do |scope| begin yield rescue StandardError => e tag_errors(scope.span, e) if scope.span raise ensure after_trace&.call(scope.span) if scope.span end end end |