Sha256: 52956df278396ac408189b38183e51a54a91827bebc03783cbb28e76f1c016d2

Contents?: true

Size: 827 Bytes

Versions: 33

Compression:

Stored size: 827 Bytes

Contents

# frozen_string_literal: true

require "opentracing"

module Labkit
  module Middleware
    module Sidekiq
      module Tracing
        # Client provides a sidekiq client middleware for
        # instrumenting distributed tracing calls made from the client
        # application
        class Client
          include SidekiqCommon

          SPAN_KIND = "client"

          def call(_worker_class, job, _queue, _redis_pool)
            Labkit::Tracing::TracingUtils.with_tracing(operation_name: "sidekiq:#{job_class(job)}", tags: tags_from_job(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
        end
      end
    end
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
gitlab-labkit-0.37.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.36.1 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.36.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.35.1 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.35.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.34.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.33.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.32.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.31.1 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.31.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.30.1 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.30.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.29.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.28.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.27.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.26.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.25.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.24.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.23.0 lib/labkit/middleware/sidekiq/tracing/client.rb
gitlab-labkit-0.22.0 lib/labkit/middleware/sidekiq/tracing/client.rb