Sha256: 6b9da7c89398debecf97db0719515b14e487fa5e413fe7040bc379bdf65b9333

Contents?: true

Size: 746 Bytes

Versions: 4

Compression:

Stored size: 746 Bytes

Contents

require 'ddtrace/contrib/patcher'
require 'ddtrace/contrib/grpc/ext'

module Datadog
  module Contrib
    module GRPC
      # Patcher enables patching of 'grpc' module.
      module Patcher
        include Contrib::Patcher

        module_function

        def target_version
          Integration.version
        end

        def patch
          require 'ddtrace/propagation/grpc_propagator'
          require 'ddtrace/contrib/grpc/datadog_interceptor'
          require 'ddtrace/contrib/grpc/intercept_with_datadog'

          prepend_interceptor
        end

        def prepend_interceptor
          ::GRPC::InterceptionContext
            .send(:prepend, Datadog::Contrib::GRPC::InterceptWithDatadog)
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ddtrace-0.49.0 lib/ddtrace/contrib/grpc/patcher.rb
ddtrace-0.48.0 lib/ddtrace/contrib/grpc/patcher.rb
ddtrace-0.47.0 lib/ddtrace/contrib/grpc/patcher.rb
ddtrace-0.46.0 lib/ddtrace/contrib/grpc/patcher.rb