lib/ddtrace/contrib/ethon/easy_patch.rb in ddtrace-0.40.0 vs lib/ddtrace/contrib/ethon/easy_patch.rb in ddtrace-0.41.0
- old
+ new
@@ -1,7 +1,8 @@
require 'ddtrace/ext/net'
require 'ddtrace/ext/distributed'
+require 'ddtrace/ext/integration'
require 'ddtrace/propagation/http_propagator'
require 'ddtrace/contrib/ethon/ext'
require 'ddtrace/contrib/http_annotation_helper'
module Datadog
@@ -10,12 +11,12 @@
# Ethon EasyPatch
module EasyPatch
def self.included(base)
base.send(:prepend, InstanceMethods)
end
-
# InstanceMethods - implementing instrumentation
+ # rubocop:disable Metrics/ModuleLength
module InstanceMethods
include Datadog::Contrib::HttpAnnotationHelper
def http_request(url, action_name, options = {})
load_datadog_configuration_for(url)
@@ -101,10 +102,11 @@
method = 'N/A'
if instance_variable_defined?(:@datadog_method) && !@datadog_method.nil?
method = @datadog_method.to_s
end
span.resource = method
-
+ # Tag as an external peer service
+ span.set_tag(Datadog::Ext::Integration::TAG_PEER_SERVICE, span.service)
# Set analytics sample rate
Contrib::Analytics.set_sample_rate(span, analytics_sample_rate) if analytics_enabled?
return unless uri
span.set_tag(Datadog::Ext::HTTP::URL, uri.path)