Class: Labkit::Middleware::Sidekiq::Tracing::Client
- Inherits:
-
Object
- Object
- Labkit::Middleware::Sidekiq::Tracing::Client
- Includes:
- SidekiqCommon
- Defined in:
- lib/labkit/middleware/sidekiq/tracing/client.rb
Overview
Client provides a sidekiq client middleware for instrumenting distributed tracing calls made from the client application
Constant Summary collapse
- SPAN_KIND =
"client"
Instance Method Summary collapse
Methods included from SidekiqCommon
#job_class, #tags_from_job, #wrapped?
Instance Method Details
#call(_worker_class, job, _queue, _redis_pool) ⇒ Object
17 18 19 20 21 22 23 24 |
# File 'lib/labkit/middleware/sidekiq/tracing/client.rb', line 17 def call(_worker_class, job, _queue, _redis_pool) Labkit::Tracing::TracingUtils.with_tracing(operation_name: "sidekiq:#{job_class(job)}", tags: (job, SPAN_KIND)) do |span| # Inject the details directly into the job Labkit::Tracing::TracingUtils.tracer.inject(span.context, OpenTracing::FORMAT_TEXT_MAP, job) yield end end |