datadog 2.16.0 → 2.17.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 +29 -1
- data/ext/datadog_profiling_native_extension/encoded_profile.c +22 -12
- data/ext/datadog_profiling_native_extension/encoded_profile.h +1 -0
- data/ext/datadog_profiling_native_extension/http_transport.c +45 -72
- data/ext/datadog_profiling_native_extension/stack_recorder.c +4 -5
- data/ext/libdatadog_api/crashtracker.c +10 -3
- data/ext/libdatadog_api/macos_development.md +3 -3
- data/ext/libdatadog_extconf_helpers.rb +1 -1
- data/lib/datadog/appsec/api_security/lru_cache.rb +49 -0
- data/lib/datadog/appsec/api_security.rb +9 -0
- data/lib/datadog/core/buffer/random.rb +18 -2
- data/lib/datadog/core/configuration/agent_settings_resolver.rb +5 -5
- data/lib/datadog/core/configuration/components.rb +29 -20
- data/lib/datadog/core/configuration/components_state.rb +23 -0
- data/lib/datadog/core/configuration/option.rb +18 -18
- data/lib/datadog/core/configuration/option_definition.rb +4 -4
- data/lib/datadog/core/configuration/options.rb +1 -1
- data/lib/datadog/core/configuration/settings.rb +10 -10
- data/lib/datadog/core/configuration.rb +16 -16
- data/lib/datadog/core/crashtracking/component.rb +2 -1
- data/lib/datadog/core/encoding.rb +1 -1
- data/lib/datadog/core/environment/cgroup.rb +10 -12
- data/lib/datadog/core/environment/container.rb +38 -40
- data/lib/datadog/core/environment/ext.rb +6 -6
- data/lib/datadog/core/environment/identity.rb +3 -3
- data/lib/datadog/core/environment/platform.rb +3 -3
- data/lib/datadog/core/error.rb +11 -9
- data/lib/datadog/core/logger.rb +2 -2
- data/lib/datadog/core/metrics/client.rb +12 -14
- data/lib/datadog/core/metrics/logging.rb +5 -5
- data/lib/datadog/core/rate_limiter.rb +4 -2
- data/lib/datadog/core/remote/client.rb +32 -31
- data/lib/datadog/core/remote/component.rb +3 -3
- data/lib/datadog/core/remote/configuration/digest.rb +7 -7
- data/lib/datadog/core/remote/configuration/path.rb +1 -1
- data/lib/datadog/core/remote/transport/http/client.rb +1 -1
- data/lib/datadog/core/remote/transport/http/config.rb +21 -5
- data/lib/datadog/core/remote/transport/http/negotiation.rb +1 -1
- data/lib/datadog/core/runtime/metrics.rb +3 -3
- data/lib/datadog/core/telemetry/component.rb +39 -24
- data/lib/datadog/core/telemetry/emitter.rb +7 -1
- data/lib/datadog/core/telemetry/event/app_client_configuration_change.rb +65 -0
- data/lib/datadog/core/telemetry/event/app_closing.rb +18 -0
- data/lib/datadog/core/telemetry/event/app_dependencies_loaded.rb +33 -0
- data/lib/datadog/core/telemetry/event/app_heartbeat.rb +18 -0
- data/lib/datadog/core/telemetry/event/app_integrations_change.rb +58 -0
- data/lib/datadog/core/telemetry/event/app_started.rb +179 -0
- data/lib/datadog/core/telemetry/event/base.rb +40 -0
- data/lib/datadog/core/telemetry/event/distributions.rb +18 -0
- data/lib/datadog/core/telemetry/event/generate_metrics.rb +43 -0
- data/lib/datadog/core/telemetry/event/log.rb +76 -0
- data/lib/datadog/core/telemetry/event/message_batch.rb +42 -0
- data/lib/datadog/core/telemetry/event/synth_app_client_configuration_change.rb +43 -0
- data/lib/datadog/core/telemetry/event.rb +17 -475
- data/lib/datadog/core/telemetry/logger.rb +1 -1
- data/lib/datadog/core/telemetry/metric.rb +3 -3
- data/lib/datadog/core/telemetry/transport/http/telemetry.rb +2 -2
- data/lib/datadog/core/telemetry/transport/telemetry.rb +0 -1
- data/lib/datadog/core/telemetry/worker.rb +48 -27
- data/lib/datadog/core/transport/http/adapters/test.rb +2 -1
- data/lib/datadog/core/transport/http/builder.rb +13 -13
- data/lib/datadog/core/utils/at_fork_monkey_patch.rb +6 -6
- data/lib/datadog/core/utils/duration.rb +32 -32
- data/lib/datadog/core/utils/forking.rb +2 -2
- data/lib/datadog/core/utils/network.rb +6 -6
- data/lib/datadog/core/utils/only_once_successful.rb +16 -5
- data/lib/datadog/core/utils/time.rb +10 -2
- data/lib/datadog/core/utils/truncation.rb +21 -0
- data/lib/datadog/core/vendor/multipart-post/multipart/post/composite_read_io.rb +1 -1
- data/lib/datadog/core/vendor/multipart-post/multipart/post/multipartable.rb +8 -8
- data/lib/datadog/core/vendor/multipart-post/multipart/post/parts.rb +7 -7
- data/lib/datadog/core/worker.rb +1 -1
- data/lib/datadog/core/workers/async.rb +9 -10
- data/lib/datadog/error_tracking/component.rb +2 -2
- data/lib/datadog/profiling/collectors/code_provenance.rb +1 -1
- data/lib/datadog/profiling/ext.rb +0 -1
- data/lib/datadog/profiling/flush.rb +1 -1
- data/lib/datadog/profiling/http_transport.rb +1 -6
- data/lib/datadog/profiling/scheduler.rb +8 -1
- data/lib/datadog/profiling/tag_builder.rb +1 -5
- data/lib/datadog/tracing/contrib/active_support/cache/events/cache.rb +4 -1
- data/lib/datadog/tracing/contrib/active_support/cache/instrumentation.rb +33 -0
- data/lib/datadog/tracing/contrib/active_support/cache/patcher.rb +4 -0
- data/lib/datadog/tracing/contrib/active_support/cache/redis.rb +2 -4
- data/lib/datadog/tracing/contrib/aws/instrumentation.rb +10 -0
- data/lib/datadog/tracing/contrib/aws/parsed_context.rb +5 -1
- data/lib/datadog/tracing/contrib/http/instrumentation.rb +1 -5
- data/lib/datadog/tracing/contrib/httpclient/instrumentation.rb +1 -5
- data/lib/datadog/tracing/contrib/httprb/instrumentation.rb +1 -5
- data/lib/datadog/tracing/contrib/patcher.rb +5 -2
- data/lib/datadog/tracing/contrib/support.rb +28 -0
- data/lib/datadog/tracing/metadata/errors.rb +4 -4
- data/lib/datadog/version.rb +1 -1
- metadata +23 -6
@@ -19,12 +19,9 @@ module Datadog
|
|
19
19
|
host: Core::Environment::Socket.hostname,
|
20
20
|
language: Core::Environment::Identity.lang,
|
21
21
|
pid: Process.pid.to_s,
|
22
|
-
# TODO: If profiling is extracted and its version diverges from the datadog gem, this is inaccurate.
|
23
|
-
# Update if this ever occurs.
|
24
22
|
profiler_version: Core::Environment::Identity.gem_datadog_version,
|
25
23
|
runtime_engine: Core::Environment::Identity.lang_engine,
|
26
24
|
runtime_id: Core::Environment::Identity.id,
|
27
|
-
runtime_platform: Core::Environment::Identity.lang_platform,
|
28
25
|
runtime_version: Core::Environment::Identity.lang_version,
|
29
26
|
git_repository_url: Core::Environment::Git.git_repository_url,
|
30
27
|
git_commit_sha: Core::Environment::Git.git_commit_sha,
|
@@ -41,7 +38,6 @@ module Datadog
|
|
41
38
|
FORM_FIELD_TAG_RUNTIME => language, # This is known to be repeated from language, above
|
42
39
|
FORM_FIELD_TAG_RUNTIME_ENGINE => runtime_engine,
|
43
40
|
FORM_FIELD_TAG_RUNTIME_ID => runtime_id,
|
44
|
-
FORM_FIELD_TAG_RUNTIME_PLATFORM => runtime_platform,
|
45
41
|
FORM_FIELD_TAG_RUNTIME_VERSION => runtime_version,
|
46
42
|
}
|
47
43
|
tags[FORM_FIELD_TAG_ENV] = env if env
|
@@ -50,7 +46,7 @@ module Datadog
|
|
50
46
|
tags[TAG_GIT_REPOSITORY_URL] = git_repository_url if git_repository_url
|
51
47
|
tags[TAG_GIT_COMMIT_SHA] = git_commit_sha if git_commit_sha
|
52
48
|
|
53
|
-
# Make sure everything is an utf-8 string, to avoid encoding issues in native code/
|
49
|
+
# Make sure everything is an utf-8 string, to avoid encoding issues in native code/further downstream
|
54
50
|
user_tags.merge(tags).map do |key, value|
|
55
51
|
[Datadog::Core::Utils.utf8_encode(key), Datadog::Core::Utils.utf8_encode(value)]
|
56
52
|
end.to_h
|
@@ -62,7 +62,10 @@ module Datadog
|
|
62
62
|
end
|
63
63
|
|
64
64
|
def on_start(span, event, _id, payload)
|
65
|
-
key
|
65
|
+
# Since Rails 8, `dd_original_keys` contains the denormalized key provided by the user.
|
66
|
+
# In previous versions, the denormalized key is stored in the official `key` attribute.
|
67
|
+
# We fall back to `key`, even in Rails 8, as a defensive measure.
|
68
|
+
key = payload[:dd_original_keys] || payload[:key]
|
66
69
|
store = payload[:store]
|
67
70
|
|
68
71
|
mapping = MAPPING.fetch(event)
|
@@ -184,6 +184,39 @@ module Datadog
|
|
184
184
|
super(operation, key, polyfill_options)
|
185
185
|
end
|
186
186
|
end
|
187
|
+
|
188
|
+
# Save the original, user-supplied cache key, before it gets normalized.
|
189
|
+
#
|
190
|
+
# Normalized keys can include internal implementation detail,
|
191
|
+
# for example FileStore keys include temp directory names, which
|
192
|
+
# changes on every run, making it impossible to group by the cache key afterward.
|
193
|
+
# Also, the user is never exposed to the normalized key, and only sets/gets using the
|
194
|
+
# original key.
|
195
|
+
module PreserveOriginalKey
|
196
|
+
# Stores the original keys in the options hash, as an array of keys.
|
197
|
+
# It's important to keep all the keys for multi-key operations.
|
198
|
+
# For single-key operations, the key is stored as an array of a single element.
|
199
|
+
def normalize_key(key, options)
|
200
|
+
orig_keys = options[:dd_original_keys] || []
|
201
|
+
orig_keys << key
|
202
|
+
options[:dd_original_keys] = orig_keys
|
203
|
+
|
204
|
+
super
|
205
|
+
end
|
206
|
+
|
207
|
+
# Ensure we don't pollute the default Store instance `options` in {PreserveOriginalKey#normalize_key}.
|
208
|
+
# In most cases, `merged_options` returns a new hash,
|
209
|
+
# but we check for cases where it reuses the instance hash.
|
210
|
+
def merged_options(call_options)
|
211
|
+
ret = super
|
212
|
+
|
213
|
+
if ret.equal?(options)
|
214
|
+
ret.dup
|
215
|
+
else
|
216
|
+
ret
|
217
|
+
end
|
218
|
+
end
|
219
|
+
end
|
187
220
|
end
|
188
221
|
end
|
189
222
|
end
|
@@ -22,6 +22,10 @@ module Datadog
|
|
22
22
|
def patch
|
23
23
|
Events.subscribe!
|
24
24
|
|
25
|
+
if Integration.version >= Gem::Version.new('8.0.0')
|
26
|
+
::ActiveSupport::Cache::Store.prepend(Cache::Instrumentation::PreserveOriginalKey)
|
27
|
+
end
|
28
|
+
|
25
29
|
# Backfill the `:store` key in the ActiveSupport event payload for older Rails.
|
26
30
|
if Integration.version < Gem::Version.new('6.1.0')
|
27
31
|
::ActiveSupport::Cache::Store.prepend(Cache::Instrumentation::Store)
|
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require_relative '../../support'
|
3
4
|
require_relative 'patcher'
|
4
5
|
|
5
6
|
module Datadog
|
@@ -34,10 +35,7 @@ module Datadog
|
|
34
35
|
# @see https://github.com/rails/rails/blob/d0dcb8fa6073a0c4d42600c15e82e3bb386b27d3/activesupport/lib/active_support/cache/redis_cache_store.rb#L4
|
35
36
|
def patch_redis_cache_store?(meth)
|
36
37
|
Gem.loaded_specs['redis'] &&
|
37
|
-
|
38
|
-
defined?(::ActiveSupport::Cache::RedisCacheStore) &&
|
39
|
-
# ... to check that we need to call `autoload?` and check if it returns `nil`, meaning it's loaded.
|
40
|
-
::ActiveSupport::Cache.autoload?(:RedisCacheStore).nil? &&
|
38
|
+
Support.fully_loaded?(::ActiveSupport::Cache, :RedisCacheStore) &&
|
41
39
|
::ActiveSupport::Cache::RedisCacheStore.instance_methods(false).include?(meth)
|
42
40
|
end
|
43
41
|
|
@@ -35,6 +35,16 @@ module Datadog
|
|
35
35
|
span.type = Tracing::Metadata::Ext::HTTP::TYPE_OUTBOUND
|
36
36
|
span.name = Ext::SPAN_COMMAND
|
37
37
|
span.resource = context.safely(:resource)
|
38
|
+
|
39
|
+
# Set error on the span if the Response Status Code is in error range
|
40
|
+
if Tracing::Metadata::Ext::HTTP::ERROR_RANGE.cover?(context.safely(:status_code))
|
41
|
+
# At this point we do not have any additional diagnostics
|
42
|
+
# besides the HTTP status code which is recorded in the span tags
|
43
|
+
# later in this method.
|
44
|
+
# Just set the span as errored.
|
45
|
+
span.set_error(nil)
|
46
|
+
end
|
47
|
+
|
38
48
|
aws_service = span.resource.split('.')[0]
|
39
49
|
span.set_tag(Ext::TAG_AWS_SERVICE, aws_service)
|
40
50
|
params = context.safely(:params)
|
@@ -30,7 +30,7 @@ module Datadog
|
|
30
30
|
|
31
31
|
return super(req, body, &block) if Contrib::HTTP.should_skip_tracing?(req)
|
32
32
|
|
33
|
-
Tracing.trace(Ext::SPAN_REQUEST
|
33
|
+
Tracing.trace(Ext::SPAN_REQUEST) do |span, trace|
|
34
34
|
span.service = service_name(host, request_options, client_config)
|
35
35
|
span.type = Tracing::Metadata::Ext::HTTP::TYPE_OUTBOUND
|
36
36
|
span.resource = req.method
|
@@ -112,10 +112,6 @@ module Datadog
|
|
112
112
|
Datadog::Core::Telemetry::Logger.report(e)
|
113
113
|
end
|
114
114
|
|
115
|
-
def annotate_span_with_error!(span, error)
|
116
|
-
span.set_error(error)
|
117
|
-
end
|
118
|
-
|
119
115
|
def set_analytics_sample_rate(span, request_options)
|
120
116
|
return unless analytics_enabled?(request_options)
|
121
117
|
|
@@ -25,7 +25,7 @@ module Datadog
|
|
25
25
|
request_options = datadog_configuration(host)
|
26
26
|
client_config = Datadog.configuration_for(self)
|
27
27
|
|
28
|
-
Tracing.trace(Ext::SPAN_REQUEST
|
28
|
+
Tracing.trace(Ext::SPAN_REQUEST) do |span, trace|
|
29
29
|
begin
|
30
30
|
span.service = service_name(host, request_options, client_config)
|
31
31
|
span.type = Tracing::Metadata::Ext::HTTP::TYPE_OUTBOUND
|
@@ -111,10 +111,6 @@ module Datadog
|
|
111
111
|
Datadog::Core::Telemetry::Logger.report(e)
|
112
112
|
end
|
113
113
|
|
114
|
-
def annotate_span_with_error!(span, error)
|
115
|
-
span.set_error(error)
|
116
|
-
end
|
117
|
-
|
118
114
|
def datadog_configuration(host = :default)
|
119
115
|
Datadog.configuration.tracing[:httpclient, host]
|
120
116
|
end
|
@@ -25,7 +25,7 @@ module Datadog
|
|
25
25
|
request_options = datadog_configuration(host)
|
26
26
|
client_config = Datadog.configuration_for(self)
|
27
27
|
|
28
|
-
Tracing.trace(Ext::SPAN_REQUEST
|
28
|
+
Tracing.trace(Ext::SPAN_REQUEST) do |span, trace|
|
29
29
|
begin
|
30
30
|
span.service = service_name(host, request_options, client_config)
|
31
31
|
span.type = Tracing::Metadata::Ext::HTTP::TYPE_OUTBOUND
|
@@ -121,10 +121,6 @@ module Datadog
|
|
121
121
|
Datadog::Core::Telemetry::Logger.report(e)
|
122
122
|
end
|
123
123
|
|
124
|
-
def annotate_span_with_error!(span, error)
|
125
|
-
span.set_error(error)
|
126
|
-
end
|
127
|
-
|
128
124
|
def datadog_configuration(host = :default)
|
129
125
|
Datadog.configuration.tracing[:httprb, host]
|
130
126
|
end
|
@@ -20,8 +20,11 @@ module Datadog
|
|
20
20
|
# @public_api
|
21
21
|
module CommonMethods
|
22
22
|
attr_accessor \
|
23
|
-
:patch_error_result
|
24
|
-
|
23
|
+
:patch_error_result
|
24
|
+
|
25
|
+
def patch_successful
|
26
|
+
!!@patch_successful
|
27
|
+
end
|
25
28
|
|
26
29
|
def patch_name
|
27
30
|
self.class != Class && self.class != Module ? self.class.name : name
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Datadog
|
4
|
+
module Tracing
|
5
|
+
module Contrib
|
6
|
+
# Miscellaneous support methods to aid in the creation of integrations.
|
7
|
+
module Support
|
8
|
+
module_function
|
9
|
+
|
10
|
+
# Checks if a constant is loaded in a module, handling autoloaded constants correctly.
|
11
|
+
#
|
12
|
+
# This method is particularly useful when you need to check if a constant is fully loaded,
|
13
|
+
# not just defined. It handles the special case of autoloaded constants, which return
|
14
|
+
# non-nil for `defined?` even when they haven't been loaded yet.
|
15
|
+
#
|
16
|
+
# @param base_module [Module] the module to check for the constant
|
17
|
+
# @param constant [Symbol] the name of the constant to check
|
18
|
+
# @return [Boolean] true if the constant has been loaded, false otherwise
|
19
|
+
def fully_loaded?(base_module, constant)
|
20
|
+
# Autoload constants return `constant` for `defined?`, but that doesn't mean they are loaded...
|
21
|
+
base_module.const_defined?(constant) &&
|
22
|
+
# ... to check that we need to call `autoload?`. If it returns `nil`, it's loaded.
|
23
|
+
base_module.autoload?(constant).nil?
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -10,17 +10,17 @@ module Datadog
|
|
10
10
|
# Adds error tagging behavior
|
11
11
|
# @public_api
|
12
12
|
module Errors
|
13
|
-
def set_error(
|
13
|
+
def set_error(error)
|
14
14
|
Datadog::Core.log_deprecation do
|
15
15
|
'Errors.set_error(..) is deprecated. ' \
|
16
16
|
'Use Errors.set_error_tags(..) instead.'
|
17
17
|
end
|
18
|
-
set_error_tags(
|
18
|
+
set_error_tags(error)
|
19
19
|
end
|
20
20
|
|
21
21
|
# Mark the span with the given error.
|
22
|
-
def set_error_tags(
|
23
|
-
e = Core::Error.build_from(
|
22
|
+
def set_error_tags(error)
|
23
|
+
e = Core::Error.build_from(error)
|
24
24
|
|
25
25
|
set_tag(Ext::Errors::TAG_TYPE, e.type) unless e.type.empty?
|
26
26
|
set_tag(Ext::Errors::TAG_MSG, e.message) unless e.message.empty?
|
data/lib/datadog/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: datadog
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.17.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: 2025-
|
11
|
+
date: 2025-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: msgpack
|
@@ -64,14 +64,14 @@ dependencies:
|
|
64
64
|
requirements:
|
65
65
|
- - "~>"
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version:
|
67
|
+
version: 18.1.0.1.0
|
68
68
|
type: :runtime
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version:
|
74
|
+
version: 18.1.0.1.0
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: logger
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -168,6 +168,8 @@ files:
|
|
168
168
|
- lib/datadog/appsec/actions_handler.rb
|
169
169
|
- lib/datadog/appsec/actions_handler/serializable_backtrace.rb
|
170
170
|
- lib/datadog/appsec/anonymizer.rb
|
171
|
+
- lib/datadog/appsec/api_security.rb
|
172
|
+
- lib/datadog/appsec/api_security/lru_cache.rb
|
171
173
|
- lib/datadog/appsec/assets.rb
|
172
174
|
- lib/datadog/appsec/assets/blocked.html
|
173
175
|
- lib/datadog/appsec/assets/blocked.json
|
@@ -276,6 +278,7 @@ files:
|
|
276
278
|
- lib/datadog/core/configuration/agentless_settings_resolver.rb
|
277
279
|
- lib/datadog/core/configuration/base.rb
|
278
280
|
- lib/datadog/core/configuration/components.rb
|
281
|
+
- lib/datadog/core/configuration/components_state.rb
|
279
282
|
- lib/datadog/core/configuration/ext.rb
|
280
283
|
- lib/datadog/core/configuration/option.rb
|
281
284
|
- lib/datadog/core/configuration/option_definition.rb
|
@@ -348,6 +351,18 @@ files:
|
|
348
351
|
- lib/datadog/core/telemetry/component.rb
|
349
352
|
- lib/datadog/core/telemetry/emitter.rb
|
350
353
|
- lib/datadog/core/telemetry/event.rb
|
354
|
+
- lib/datadog/core/telemetry/event/app_client_configuration_change.rb
|
355
|
+
- lib/datadog/core/telemetry/event/app_closing.rb
|
356
|
+
- lib/datadog/core/telemetry/event/app_dependencies_loaded.rb
|
357
|
+
- lib/datadog/core/telemetry/event/app_heartbeat.rb
|
358
|
+
- lib/datadog/core/telemetry/event/app_integrations_change.rb
|
359
|
+
- lib/datadog/core/telemetry/event/app_started.rb
|
360
|
+
- lib/datadog/core/telemetry/event/base.rb
|
361
|
+
- lib/datadog/core/telemetry/event/distributions.rb
|
362
|
+
- lib/datadog/core/telemetry/event/generate_metrics.rb
|
363
|
+
- lib/datadog/core/telemetry/event/log.rb
|
364
|
+
- lib/datadog/core/telemetry/event/message_batch.rb
|
365
|
+
- lib/datadog/core/telemetry/event/synth_app_client_configuration_change.rb
|
351
366
|
- lib/datadog/core/telemetry/ext.rb
|
352
367
|
- lib/datadog/core/telemetry/http/adapters/net.rb
|
353
368
|
- lib/datadog/core/telemetry/logger.rb
|
@@ -391,6 +406,7 @@ files:
|
|
391
406
|
- lib/datadog/core/utils/safe_dup.rb
|
392
407
|
- lib/datadog/core/utils/sequence.rb
|
393
408
|
- lib/datadog/core/utils/time.rb
|
409
|
+
- lib/datadog/core/utils/truncation.rb
|
394
410
|
- lib/datadog/core/utils/url.rb
|
395
411
|
- lib/datadog/core/vendor/multipart-post/LICENSE
|
396
412
|
- lib/datadog/core/vendor/multipart-post/multipart.rb
|
@@ -889,6 +905,7 @@ files:
|
|
889
905
|
- lib/datadog/tracing/contrib/sucker_punch/instrumentation.rb
|
890
906
|
- lib/datadog/tracing/contrib/sucker_punch/integration.rb
|
891
907
|
- lib/datadog/tracing/contrib/sucker_punch/patcher.rb
|
908
|
+
- lib/datadog/tracing/contrib/support.rb
|
892
909
|
- lib/datadog/tracing/contrib/trilogy/configuration/settings.rb
|
893
910
|
- lib/datadog/tracing/contrib/trilogy/ext.rb
|
894
911
|
- lib/datadog/tracing/contrib/trilogy/instrumentation.rb
|
@@ -974,8 +991,8 @@ licenses:
|
|
974
991
|
- Apache-2.0
|
975
992
|
metadata:
|
976
993
|
allowed_push_host: https://rubygems.org
|
977
|
-
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.
|
978
|
-
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.
|
994
|
+
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.17.0/CHANGELOG.md
|
995
|
+
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.17.0
|
979
996
|
post_install_message:
|
980
997
|
rdoc_options: []
|
981
998
|
require_paths:
|