ddtrace 0.52.0 → 0.53.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +65 -1
- data/ddtrace.gemspec +1 -1
- data/docs/DevelopmentGuide.md +1 -6
- data/docs/GettingStarted.md +66 -16
- data/lib/datadog/ci/contrib/rspec/integration.rb +2 -2
- data/lib/datadog/ci/ext/environment.rb +41 -4
- data/lib/datadog/contrib.rb +2 -0
- data/lib/datadog/core/environment/vm_cache.rb +46 -0
- data/lib/ddtrace/configuration/agent_settings_resolver.rb +107 -40
- data/lib/ddtrace/configuration/components.rb +1 -1
- data/lib/ddtrace/configuration/settings.rb +13 -3
- data/lib/ddtrace/contrib/action_cable/instrumentation.rb +46 -0
- data/lib/ddtrace/contrib/action_cable/patcher.rb +1 -0
- data/lib/ddtrace/contrib/action_mailer/configuration/settings.rb +32 -0
- data/lib/ddtrace/contrib/action_mailer/event.rb +50 -0
- data/lib/ddtrace/contrib/action_mailer/events/deliver.rb +54 -0
- data/lib/ddtrace/contrib/action_mailer/events/process.rb +41 -0
- data/lib/ddtrace/contrib/action_mailer/events.rb +31 -0
- data/lib/ddtrace/contrib/action_mailer/ext.rb +32 -0
- data/lib/ddtrace/contrib/action_mailer/integration.rb +45 -0
- data/lib/ddtrace/contrib/action_mailer/patcher.rb +27 -0
- data/lib/ddtrace/contrib/active_job/configuration/settings.rb +33 -0
- data/lib/ddtrace/contrib/active_job/event.rb +54 -0
- data/lib/ddtrace/contrib/active_job/events/discard.rb +46 -0
- data/lib/ddtrace/contrib/active_job/events/enqueue.rb +45 -0
- data/lib/ddtrace/contrib/active_job/events/enqueue_at.rb +45 -0
- data/lib/ddtrace/contrib/active_job/events/enqueue_retry.rb +47 -0
- data/lib/ddtrace/contrib/active_job/events/perform.rb +45 -0
- data/lib/ddtrace/contrib/active_job/events/retry_stopped.rb +46 -0
- data/lib/ddtrace/contrib/active_job/events.rb +39 -0
- data/lib/ddtrace/contrib/active_job/ext.rb +32 -0
- data/lib/ddtrace/contrib/active_job/integration.rb +46 -0
- data/lib/ddtrace/contrib/active_job/log_injection.rb +21 -0
- data/lib/ddtrace/contrib/active_job/patcher.rb +33 -0
- data/lib/ddtrace/contrib/auto_instrument.rb +0 -1
- data/lib/ddtrace/contrib/rails/auto_instrument_railtie.rb +0 -1
- data/lib/ddtrace/contrib/rails/framework.rb +22 -0
- data/lib/ddtrace/contrib/rails/patcher.rb +19 -10
- data/lib/ddtrace/contrib/registerable.rb +0 -1
- data/lib/ddtrace/contrib/sidekiq/ext.rb +3 -0
- data/lib/ddtrace/contrib/sidekiq/integration.rb +10 -0
- data/lib/ddtrace/contrib/sidekiq/patcher.rb +26 -0
- data/lib/ddtrace/contrib/sidekiq/server_internal_tracer/heartbeat.rb +30 -0
- data/lib/ddtrace/contrib/sidekiq/server_internal_tracer/job_fetch.rb +30 -0
- data/lib/ddtrace/contrib/sidekiq/server_internal_tracer/scheduled_push.rb +29 -0
- data/lib/ddtrace/contrib/sinatra/env.rb +2 -1
- data/lib/ddtrace/contrib/sinatra/tracer.rb +15 -2
- data/lib/ddtrace/ext/git.rb +12 -0
- data/lib/ddtrace/ext/profiling.rb +1 -0
- data/lib/ddtrace/ext/runtime.rb +3 -0
- data/lib/ddtrace/ext/transport.rb +11 -0
- data/lib/ddtrace/profiling/collectors/stack.rb +71 -27
- data/lib/ddtrace/profiling/encoding/profile.rb +9 -1
- data/lib/ddtrace/profiling/events/stack.rb +7 -7
- data/lib/ddtrace/profiling/pprof/converter.rb +22 -9
- data/lib/ddtrace/profiling/pprof/stack_sample.rb +28 -2
- data/lib/ddtrace/profiling/tasks/setup.rb +0 -1
- data/lib/ddtrace/profiling/trace_identifiers/ddtrace.rb +1 -1
- data/lib/ddtrace/profiling/trace_identifiers/helper.rb +3 -3
- data/lib/ddtrace/profiling/transport/http.rb +8 -17
- data/lib/ddtrace/runtime/metrics.rb +14 -0
- data/lib/ddtrace/span.rb +7 -19
- data/lib/ddtrace/tracer.rb +1 -1
- data/lib/ddtrace/transport/http/adapters/net.rb +13 -3
- data/lib/ddtrace/transport/http/adapters/test.rb +4 -2
- data/lib/ddtrace/transport/http/adapters/unix_socket.rb +23 -12
- data/lib/ddtrace/transport/http/builder.rb +13 -6
- data/lib/ddtrace/transport/http.rb +5 -11
- data/lib/ddtrace/utils/time.rb +5 -6
- data/lib/ddtrace/version.rb +1 -1
- metadata +27 -2
@@ -64,22 +64,10 @@ module Datadog
|
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
|
-
private_class_method def self.default_adapter
|
68
|
-
:net_http
|
69
|
-
end
|
70
|
-
|
71
67
|
private_class_method def self.configure_for_agent(transport, profiling_upload_timeout_seconds:, agent_settings:)
|
72
68
|
apis = API.agent_defaults
|
73
69
|
|
74
|
-
transport.adapter(
|
75
|
-
default_adapter,
|
76
|
-
agent_settings.hostname,
|
77
|
-
agent_settings.port,
|
78
|
-
# We explictly use profiling_upload_timeout_seconds instead of agent_settings.timeout because profile
|
79
|
-
# uploads are bigger and thus we employ a separate configuration.
|
80
|
-
timeout: profiling_upload_timeout_seconds,
|
81
|
-
ssl: agent_settings.ssl
|
82
|
-
)
|
70
|
+
transport.adapter(agent_settings.merge(timeout_seconds: profiling_upload_timeout_seconds))
|
83
71
|
transport.api(API::V1, apis[API::V1], default: true)
|
84
72
|
|
85
73
|
# NOTE: This proc, when it exists, usually overrides the transport specified above
|
@@ -96,7 +84,7 @@ module Datadog
|
|
96
84
|
port = site_uri.port
|
97
85
|
|
98
86
|
transport.adapter(
|
99
|
-
|
87
|
+
Datadog::Ext::Transport::HTTP::ADAPTER,
|
100
88
|
hostname,
|
101
89
|
port,
|
102
90
|
timeout: profiling_upload_timeout_seconds,
|
@@ -111,9 +99,12 @@ module Datadog
|
|
111
99
|
end
|
112
100
|
|
113
101
|
# Add adapters to registry
|
114
|
-
Datadog::Transport::HTTP::Builder::REGISTRY.set(Datadog::Transport::HTTP::Adapters::Net,
|
115
|
-
|
116
|
-
Datadog::Transport::HTTP::Builder::REGISTRY.set(Datadog::Transport::HTTP::Adapters::
|
102
|
+
Datadog::Transport::HTTP::Builder::REGISTRY.set(Datadog::Transport::HTTP::Adapters::Net,
|
103
|
+
Datadog::Ext::Transport::HTTP::ADAPTER)
|
104
|
+
Datadog::Transport::HTTP::Builder::REGISTRY.set(Datadog::Transport::HTTP::Adapters::Test,
|
105
|
+
Datadog::Ext::Transport::Test::ADAPTER)
|
106
|
+
Datadog::Transport::HTTP::Builder::REGISTRY.set(Datadog::Transport::HTTP::Adapters::UnixSocket,
|
107
|
+
Datadog::Ext::Transport::UnixSocket::ADAPTER)
|
117
108
|
end
|
118
109
|
end
|
119
110
|
end
|
@@ -7,6 +7,7 @@ require 'datadog/core/environment/class_count'
|
|
7
7
|
require 'datadog/core/environment/gc'
|
8
8
|
require 'datadog/core/environment/identity'
|
9
9
|
require 'datadog/core/environment/thread_count'
|
10
|
+
require 'datadog/core/environment/vm_cache'
|
10
11
|
|
11
12
|
module Datadog
|
12
13
|
module Runtime
|
@@ -58,12 +59,25 @@ module Datadog
|
|
58
59
|
gauge(Ext::Runtime::Metrics::METRIC_CLASS_COUNT, Core::Environment::ClassCount.value)
|
59
60
|
end
|
60
61
|
end
|
62
|
+
|
61
63
|
try_flush do
|
62
64
|
if Core::Environment::ThreadCount.available?
|
63
65
|
gauge(Ext::Runtime::Metrics::METRIC_THREAD_COUNT, Core::Environment::ThreadCount.value)
|
64
66
|
end
|
65
67
|
end
|
68
|
+
|
66
69
|
try_flush { gc_metrics.each { |metric, value| gauge(metric, value) } if Core::Environment::GC.available? }
|
70
|
+
|
71
|
+
try_flush do
|
72
|
+
if Core::Environment::VMCache.available?
|
73
|
+
gauge(Ext::Runtime::Metrics::METRIC_GLOBAL_CONSTANT_STATE, Core::Environment::VMCache.global_constant_state)
|
74
|
+
|
75
|
+
# global_method_state is not available since Ruby >= 3.0,
|
76
|
+
# as method caching was moved to a per-class basis.
|
77
|
+
global_method_state = Core::Environment::VMCache.global_method_state
|
78
|
+
gauge(Ext::Runtime::Metrics::METRIC_GLOBAL_METHOD_STATE, global_method_state) if global_method_state
|
79
|
+
end
|
80
|
+
end
|
67
81
|
end
|
68
82
|
|
69
83
|
def gc_metrics
|
data/lib/ddtrace/span.rb
CHANGED
@@ -53,12 +53,7 @@ module Datadog
|
|
53
53
|
Ext::NET::TAG_HOSTNAME => true
|
54
54
|
}.freeze
|
55
55
|
|
56
|
-
|
57
|
-
# The profiler keeps a reference to these objects while sampling so it can extract the latest resource after the
|
58
|
-
# fact, as some integrations only set the correct name at the end of the span.
|
59
|
-
ResourceContainer = Struct.new(:latest)
|
60
|
-
|
61
|
-
attr_accessor :name, :service, :span_type,
|
56
|
+
attr_accessor :name, :service, :resource, :span_type,
|
62
57
|
:span_id, :trace_id, :parent_id,
|
63
58
|
:status, :sampled,
|
64
59
|
:tracer, :context
|
@@ -71,7 +66,8 @@ module Datadog
|
|
71
66
|
# and then <tt>finish()</tt> once the tracer operation is over.
|
72
67
|
#
|
73
68
|
# * +service+: the service name for this span
|
74
|
-
# * +resource+: the resource this span refers, or +name+ if it's missing
|
69
|
+
# * +resource+: the resource this span refers, or +name+ if it's missing.
|
70
|
+
# +nil+ can be used as a placeholder, when the resource value is not yet known at +#initialize+ time.
|
75
71
|
# * +span_type+: the type of the span (such as +http+, +db+ and so on)
|
76
72
|
# * +parent_id+: the identifier of the parent span
|
77
73
|
# * +trace_id+: the identifier of the root span for this trace
|
@@ -81,7 +77,7 @@ module Datadog
|
|
81
77
|
|
82
78
|
@name = name
|
83
79
|
@service = options.fetch(:service, nil)
|
84
|
-
@
|
80
|
+
@resource = options.fetch(:resource, name)
|
85
81
|
@span_type = options.fetch(:span_type, nil)
|
86
82
|
|
87
83
|
@span_id = Datadog::Utils.next_id
|
@@ -289,7 +285,7 @@ module Datadog
|
|
289
285
|
trace_id: @trace_id,
|
290
286
|
name: @name,
|
291
287
|
service: @service,
|
292
|
-
resource: resource,
|
288
|
+
resource: @resource,
|
293
289
|
type: @span_type,
|
294
290
|
meta: @meta,
|
295
291
|
metrics: @metrics,
|
@@ -343,7 +339,7 @@ module Datadog
|
|
343
339
|
packer.write('service')
|
344
340
|
packer.write(@service)
|
345
341
|
packer.write('resource')
|
346
|
-
packer.write(resource)
|
342
|
+
packer.write(@resource)
|
347
343
|
packer.write('type')
|
348
344
|
packer.write(@span_type)
|
349
345
|
packer.write('meta')
|
@@ -375,7 +371,7 @@ module Datadog
|
|
375
371
|
q.text "Trace ID: #{@trace_id}\n"
|
376
372
|
q.text "Type: #{@span_type}\n"
|
377
373
|
q.text "Service: #{@service}\n"
|
378
|
-
q.text "Resource: #{resource}\n"
|
374
|
+
q.text "Resource: #{@resource}\n"
|
379
375
|
q.text "Error: #{@status}\n"
|
380
376
|
q.text "Start: #{start_time}\n"
|
381
377
|
q.text "End: #{end_time}\n"
|
@@ -414,14 +410,6 @@ module Datadog
|
|
414
410
|
end
|
415
411
|
end
|
416
412
|
|
417
|
-
def resource
|
418
|
-
@resource_container.latest
|
419
|
-
end
|
420
|
-
|
421
|
-
def resource=(resource)
|
422
|
-
@resource_container.latest = resource
|
423
|
-
end
|
424
|
-
|
425
413
|
private
|
426
414
|
|
427
415
|
def duration_marker
|
data/lib/ddtrace/tracer.rb
CHANGED
@@ -200,7 +200,7 @@ module Datadog
|
|
200
200
|
if parent.nil?
|
201
201
|
# root span
|
202
202
|
@sampler.sample!(span)
|
203
|
-
span.set_tag(
|
203
|
+
span.set_tag(Datadog::Ext::Runtime::TAG_PID, Process.pid)
|
204
204
|
span.set_tag(Datadog::Ext::Runtime::TAG_ID, Datadog::Core::Environment::Identity.id)
|
205
205
|
|
206
206
|
if ctx && ctx.trace_id
|
@@ -16,13 +16,23 @@ module Datadog
|
|
16
16
|
|
17
17
|
DEFAULT_TIMEOUT = 30
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
@
|
19
|
+
# @deprecated Positional parameters are deprecated. Use named parameters instead.
|
20
|
+
def initialize(hostname = nil, port = nil, **options)
|
21
|
+
@hostname = hostname || options.fetch(:hostname)
|
22
|
+
@port = port || options.fetch(:port)
|
22
23
|
@timeout = options[:timeout] || DEFAULT_TIMEOUT
|
23
24
|
@ssl = options.key?(:ssl) ? options[:ssl] == true : false
|
24
25
|
end
|
25
26
|
|
27
|
+
def self.build(agent_settings)
|
28
|
+
new(
|
29
|
+
hostname: agent_settings.hostname,
|
30
|
+
port: agent_settings.port,
|
31
|
+
timeout: agent_settings.timeout_seconds,
|
32
|
+
ssl: agent_settings.ssl
|
33
|
+
)
|
34
|
+
end
|
35
|
+
|
26
36
|
def open(&block)
|
27
37
|
# DEV Initializing +Net::HTTP+ directly help us avoid expensive
|
28
38
|
# options processing done in +Net::HTTP.start+:
|
@@ -11,8 +11,10 @@ module Datadog
|
|
11
11
|
:buffer,
|
12
12
|
:status
|
13
13
|
|
14
|
-
|
15
|
-
|
14
|
+
# @param buffer [Array] an optional array that will capture all spans sent to this adapter, defaults to +nil+
|
15
|
+
# @deprecated Positional parameters are deprecated. Use named parameters instead.
|
16
|
+
def initialize(buffer = nil, **options)
|
17
|
+
@buffer = buffer || options[:buffer]
|
16
18
|
@mutex = Mutex.new
|
17
19
|
@status = 200
|
18
20
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
# typed: false
|
2
2
|
require 'net/http'
|
3
|
+
require 'ddtrace/ext/transport'
|
3
4
|
require 'ddtrace/transport/http/adapters/net'
|
4
5
|
|
5
6
|
module Datadog
|
@@ -8,21 +9,29 @@ module Datadog
|
|
8
9
|
module Adapters
|
9
10
|
# Adapter for Unix sockets
|
10
11
|
class UnixSocket < Adapters::Net
|
11
|
-
DEFAULT_TIMEOUT = 1
|
12
|
-
|
13
12
|
attr_reader \
|
14
|
-
:filepath,
|
13
|
+
:filepath, # DEV(1.0): Rename to `uds_path`
|
15
14
|
:timeout
|
16
15
|
|
17
|
-
|
18
|
-
|
19
|
-
|
16
|
+
alias_method :uds_path, :filepath
|
17
|
+
|
18
|
+
# @deprecated Positional parameters are deprecated. Use named parameters instead.
|
19
|
+
def initialize(uds_path = nil, **options)
|
20
|
+
@filepath = uds_path || options.fetch(:uds_path)
|
21
|
+
@timeout = options[:timeout] || Ext::Transport::UnixSocket::DEFAULT_TIMEOUT_SECONDS
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.build(agent_settings)
|
25
|
+
new(
|
26
|
+
uds_path: agent_settings.uds_path,
|
27
|
+
timeout: agent_settings.timeout_seconds,
|
28
|
+
)
|
20
29
|
end
|
21
30
|
|
22
31
|
def open(&block)
|
23
32
|
# Open connection
|
24
33
|
connection = HTTP.new(
|
25
|
-
|
34
|
+
uds_path,
|
26
35
|
read_timeout: timeout,
|
27
36
|
continue_timeout: timeout
|
28
37
|
)
|
@@ -31,7 +40,7 @@ module Datadog
|
|
31
40
|
end
|
32
41
|
|
33
42
|
def url
|
34
|
-
"http+unix://#{
|
43
|
+
"http+unix://#{uds_path}?timeout=#{timeout}"
|
35
44
|
end
|
36
45
|
|
37
46
|
# Re-implements Net:HTTP with underlying Unix socket
|
@@ -39,19 +48,21 @@ module Datadog
|
|
39
48
|
DEFAULT_TIMEOUT = 1
|
40
49
|
|
41
50
|
attr_reader \
|
42
|
-
:filepath,
|
51
|
+
:filepath, # DEV(1.0): Rename to `uds_path`
|
43
52
|
:unix_socket
|
44
53
|
|
45
|
-
|
54
|
+
alias_method :uds_path, :filepath
|
55
|
+
|
56
|
+
def initialize(uds_path, options = {})
|
46
57
|
super('localhost', 80)
|
47
|
-
@filepath =
|
58
|
+
@filepath = uds_path
|
48
59
|
@read_timeout = options.fetch(:read_timeout, DEFAULT_TIMEOUT)
|
49
60
|
@continue_timeout = options.fetch(:continue_timeout, DEFAULT_TIMEOUT)
|
50
61
|
@debug_output = options[:debug_output] if options.key?(:debug_output)
|
51
62
|
end
|
52
63
|
|
53
64
|
def connect
|
54
|
-
@unix_socket = UNIXSocket.open(
|
65
|
+
@unix_socket = UNIXSocket.open(uds_path)
|
55
66
|
@socket = ::Net::BufferedIO.new(@unix_socket).tap do |socket|
|
56
67
|
socket.read_timeout = @read_timeout
|
57
68
|
socket.continue_timeout = @continue_timeout
|
@@ -1,4 +1,5 @@
|
|
1
1
|
# typed: true
|
2
|
+
require 'ddtrace/configuration/agent_settings_resolver'
|
2
3
|
require 'ddtrace/transport/http/adapters/registry'
|
3
4
|
require 'ddtrace/transport/http/api/map'
|
4
5
|
require 'ddtrace/transport/http/api/instance'
|
@@ -33,14 +34,20 @@ module Datadog
|
|
33
34
|
yield(self) if block_given?
|
34
35
|
end
|
35
36
|
|
36
|
-
def adapter(
|
37
|
-
@default_adapter =
|
38
|
-
|
39
|
-
|
37
|
+
def adapter(config, *args, **kwargs)
|
38
|
+
@default_adapter = case config
|
39
|
+
when Configuration::AgentSettingsResolver::AgentSettings
|
40
|
+
registry_klass = REGISTRY.get(config.adapter)
|
41
|
+
raise UnknownAdapterError, config.adapter if registry_klass.nil?
|
40
42
|
|
41
|
-
registry_klass.
|
43
|
+
registry_klass.build(config)
|
44
|
+
when Symbol
|
45
|
+
registry_klass = REGISTRY.get(config)
|
46
|
+
raise UnknownAdapterError, config if registry_klass.nil?
|
47
|
+
|
48
|
+
registry_klass.new(*args, **kwargs)
|
42
49
|
else
|
43
|
-
|
50
|
+
config
|
44
51
|
end
|
45
52
|
end
|
46
53
|
|
@@ -30,13 +30,7 @@ module Datadog
|
|
30
30
|
# Pass a block to override any settings.
|
31
31
|
def default(agent_settings: Datadog::Configuration::AgentSettingsResolver::ENVIRONMENT_AGENT_SETTINGS, **options)
|
32
32
|
new do |transport|
|
33
|
-
transport.adapter(
|
34
|
-
default_adapter,
|
35
|
-
agent_settings.hostname,
|
36
|
-
agent_settings.port,
|
37
|
-
timeout: agent_settings.timeout_seconds,
|
38
|
-
ssl: agent_settings.ssl
|
39
|
-
)
|
33
|
+
transport.adapter(agent_settings)
|
40
34
|
transport.headers default_headers
|
41
35
|
|
42
36
|
if agent_settings.deprecated_for_removal_transport_configuration_options
|
@@ -80,7 +74,7 @@ module Datadog
|
|
80
74
|
end
|
81
75
|
|
82
76
|
def default_adapter
|
83
|
-
|
77
|
+
Ext::Transport::HTTP::ADAPTER
|
84
78
|
end
|
85
79
|
|
86
80
|
def default_hostname(logger: Datadog.logger)
|
@@ -111,9 +105,9 @@ module Datadog
|
|
111
105
|
end
|
112
106
|
|
113
107
|
# Add adapters to registry
|
114
|
-
Builder::REGISTRY.set(Adapters::Net,
|
115
|
-
Builder::REGISTRY.set(Adapters::Test,
|
116
|
-
Builder::REGISTRY.set(Adapters::UnixSocket,
|
108
|
+
Builder::REGISTRY.set(Adapters::Net, Ext::Transport::HTTP::ADAPTER)
|
109
|
+
Builder::REGISTRY.set(Adapters::Test, Ext::Transport::Test::ADAPTER)
|
110
|
+
Builder::REGISTRY.set(Adapters::UnixSocket, Ext::Transport::UnixSocket::ADAPTER)
|
117
111
|
end
|
118
112
|
end
|
119
113
|
end
|
data/lib/ddtrace/utils/time.rb
CHANGED
@@ -7,13 +7,12 @@ module Datadog
|
|
7
7
|
|
8
8
|
module_function
|
9
9
|
|
10
|
-
# Current monotonic time
|
11
|
-
# Falls back to `now` if monotonic clock
|
12
|
-
# is not available.
|
10
|
+
# Current monotonic time
|
13
11
|
#
|
14
|
-
# @
|
15
|
-
|
16
|
-
|
12
|
+
# @param unit [Symbol] unit for the resulting value, same as ::Process#clock_gettime, defaults to :float_second
|
13
|
+
# @return [Numeric] timestamp in the requested unit, since some unspecified starting point
|
14
|
+
def get_time(unit = :float_second)
|
15
|
+
Process.clock_gettime(Process::CLOCK_MONOTONIC, unit)
|
17
16
|
end
|
18
17
|
|
19
18
|
# Current wall time.
|
data/lib/ddtrace/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ddtrace
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.53.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Datadog, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-10-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: msgpack
|
@@ -99,6 +99,7 @@ files:
|
|
99
99
|
- lib/datadog/core/environment/socket.rb
|
100
100
|
- lib/datadog/core/environment/thread_count.rb
|
101
101
|
- lib/datadog/core/environment/variable_helpers.rb
|
102
|
+
- lib/datadog/core/environment/vm_cache.rb
|
102
103
|
- lib/ddtrace.rb
|
103
104
|
- lib/ddtrace/analytics.rb
|
104
105
|
- lib/ddtrace/auto_instrument.rb
|
@@ -130,6 +131,14 @@ files:
|
|
130
131
|
- lib/ddtrace/contrib/action_cable/instrumentation.rb
|
131
132
|
- lib/ddtrace/contrib/action_cable/integration.rb
|
132
133
|
- lib/ddtrace/contrib/action_cable/patcher.rb
|
134
|
+
- lib/ddtrace/contrib/action_mailer/configuration/settings.rb
|
135
|
+
- lib/ddtrace/contrib/action_mailer/event.rb
|
136
|
+
- lib/ddtrace/contrib/action_mailer/events.rb
|
137
|
+
- lib/ddtrace/contrib/action_mailer/events/deliver.rb
|
138
|
+
- lib/ddtrace/contrib/action_mailer/events/process.rb
|
139
|
+
- lib/ddtrace/contrib/action_mailer/ext.rb
|
140
|
+
- lib/ddtrace/contrib/action_mailer/integration.rb
|
141
|
+
- lib/ddtrace/contrib/action_mailer/patcher.rb
|
133
142
|
- lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb
|
134
143
|
- lib/ddtrace/contrib/action_pack/action_controller/patcher.rb
|
135
144
|
- lib/ddtrace/contrib/action_pack/configuration/settings.rb
|
@@ -148,6 +157,19 @@ files:
|
|
148
157
|
- lib/ddtrace/contrib/action_view/integration.rb
|
149
158
|
- lib/ddtrace/contrib/action_view/patcher.rb
|
150
159
|
- lib/ddtrace/contrib/action_view/utils.rb
|
160
|
+
- lib/ddtrace/contrib/active_job/configuration/settings.rb
|
161
|
+
- lib/ddtrace/contrib/active_job/event.rb
|
162
|
+
- lib/ddtrace/contrib/active_job/events.rb
|
163
|
+
- lib/ddtrace/contrib/active_job/events/discard.rb
|
164
|
+
- lib/ddtrace/contrib/active_job/events/enqueue.rb
|
165
|
+
- lib/ddtrace/contrib/active_job/events/enqueue_at.rb
|
166
|
+
- lib/ddtrace/contrib/active_job/events/enqueue_retry.rb
|
167
|
+
- lib/ddtrace/contrib/active_job/events/perform.rb
|
168
|
+
- lib/ddtrace/contrib/active_job/events/retry_stopped.rb
|
169
|
+
- lib/ddtrace/contrib/active_job/ext.rb
|
170
|
+
- lib/ddtrace/contrib/active_job/integration.rb
|
171
|
+
- lib/ddtrace/contrib/active_job/log_injection.rb
|
172
|
+
- lib/ddtrace/contrib/active_job/patcher.rb
|
151
173
|
- lib/ddtrace/contrib/active_model_serializers/configuration/settings.rb
|
152
174
|
- lib/ddtrace/contrib/active_model_serializers/event.rb
|
153
175
|
- lib/ddtrace/contrib/active_model_serializers/events.rb
|
@@ -392,6 +414,9 @@ files:
|
|
392
414
|
- lib/ddtrace/contrib/sidekiq/ext.rb
|
393
415
|
- lib/ddtrace/contrib/sidekiq/integration.rb
|
394
416
|
- lib/ddtrace/contrib/sidekiq/patcher.rb
|
417
|
+
- lib/ddtrace/contrib/sidekiq/server_internal_tracer/heartbeat.rb
|
418
|
+
- lib/ddtrace/contrib/sidekiq/server_internal_tracer/job_fetch.rb
|
419
|
+
- lib/ddtrace/contrib/sidekiq/server_internal_tracer/scheduled_push.rb
|
395
420
|
- lib/ddtrace/contrib/sidekiq/server_tracer.rb
|
396
421
|
- lib/ddtrace/contrib/sidekiq/tracing.rb
|
397
422
|
- lib/ddtrace/contrib/sinatra/configuration/settings.rb
|