Sha256: 6e4d72227ffee162d6c471ed701a76c3fcedbc4744a97f7fa764735b3a1abc3a

Contents?: true

Size: 779 Bytes

Versions: 10

Compression:

Stored size: 779 Bytes

Contents

require 'ddtrace/contrib/patcher'
require 'ddtrace/contrib/httprb/instrumentation'

module Datadog
  module Contrib
    # Datadog Httprb integration.
    module Httprb
      # Patcher enables patching of 'httprb' module.
      module Patcher
        include Contrib::Patcher

        module_function

        def patched?
          done?(:httprb)
        end

        def target_version
          Integration.version
        end

        # patch applies our patch
        def patch
          do_once(:httprb) do
            begin
              ::HTTP::Client.send(:include, Instrumentation)
            rescue StandardError => e
              Datadog::Logger.error("Unable to apply httprb integration: #{e}")
            end
          end
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
ddtrace-0.46.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.45.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.44.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.43.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.42.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.41.0 lib/ddtrace/contrib/httprb/patcher.rb
ls-trace-0.2.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.40.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.39.0 lib/ddtrace/contrib/httprb/patcher.rb
ddtrace-0.38.0 lib/ddtrace/contrib/httprb/patcher.rb