datadog 2.20.0 → 2.26.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 +212 -1
- data/README.md +0 -1
- data/ext/LIBDATADOG_DEVELOPMENT.md +3 -0
- data/ext/datadog_profiling_native_extension/collectors_cpu_and_wall_time_worker.c +93 -23
- data/ext/datadog_profiling_native_extension/collectors_discrete_dynamic_sampler.c +1 -1
- data/ext/datadog_profiling_native_extension/collectors_stack.c +21 -5
- data/ext/datadog_profiling_native_extension/crashtracking_runtime_stacks.c +239 -0
- data/ext/datadog_profiling_native_extension/datadog_ruby_common.h +1 -1
- data/ext/datadog_profiling_native_extension/extconf.rb +9 -4
- data/ext/datadog_profiling_native_extension/heap_recorder.c +1 -1
- data/ext/datadog_profiling_native_extension/http_transport.c +1 -0
- data/ext/datadog_profiling_native_extension/private_vm_api_access.c +12 -0
- data/ext/datadog_profiling_native_extension/private_vm_api_access.h +4 -0
- data/ext/datadog_profiling_native_extension/profiling.c +2 -0
- data/ext/libdatadog_api/datadog_ruby_common.h +1 -1
- data/ext/libdatadog_api/ddsketch.c +106 -0
- data/ext/libdatadog_api/feature_flags.c +554 -0
- data/ext/libdatadog_api/feature_flags.h +5 -0
- data/ext/libdatadog_api/init.c +5 -0
- data/ext/libdatadog_api/library_config.c +34 -25
- data/ext/libdatadog_api/process_discovery.c +24 -18
- data/ext/libdatadog_extconf_helpers.rb +1 -1
- data/lib/datadog/ai_guard/api_client.rb +82 -0
- data/lib/datadog/ai_guard/component.rb +42 -0
- data/lib/datadog/ai_guard/configuration/ext.rb +17 -0
- data/lib/datadog/ai_guard/configuration/settings.rb +98 -0
- data/lib/datadog/ai_guard/configuration.rb +11 -0
- data/lib/datadog/ai_guard/evaluation/message.rb +25 -0
- data/lib/datadog/ai_guard/evaluation/no_op_result.rb +34 -0
- data/lib/datadog/ai_guard/evaluation/request.rb +81 -0
- data/lib/datadog/ai_guard/evaluation/result.rb +43 -0
- data/lib/datadog/ai_guard/evaluation/tool_call.rb +18 -0
- data/lib/datadog/ai_guard/evaluation.rb +72 -0
- data/lib/datadog/ai_guard/ext.rb +16 -0
- data/lib/datadog/ai_guard.rb +153 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/grape_route_serializer.rb +26 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/rails_collector.rb +59 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/rails_route_serializer.rb +29 -0
- data/lib/datadog/appsec/api_security/endpoint_collection/sinatra_route_serializer.rb +26 -0
- data/lib/datadog/appsec/api_security/endpoint_collection.rb +10 -0
- data/lib/datadog/appsec/api_security/route_extractor.rb +26 -5
- data/lib/datadog/appsec/api_security/sampler.rb +7 -4
- data/lib/datadog/appsec/assets/blocked.html +8 -0
- data/lib/datadog/appsec/assets/blocked.json +1 -1
- data/lib/datadog/appsec/assets/blocked.text +3 -1
- data/lib/datadog/appsec/assets/waf_rules/README.md +30 -36
- data/lib/datadog/appsec/assets/waf_rules/recommended.json +359 -4
- data/lib/datadog/appsec/assets/waf_rules/strict.json +43 -2
- data/lib/datadog/appsec/assets.rb +1 -1
- data/lib/datadog/appsec/autoload.rb +1 -1
- data/lib/datadog/appsec/compressed_json.rb +1 -1
- data/lib/datadog/appsec/configuration/settings.rb +9 -0
- data/lib/datadog/appsec/context.rb +2 -1
- data/lib/datadog/appsec/contrib/active_record/instrumentation.rb +3 -1
- data/lib/datadog/appsec/contrib/excon/ssrf_detection_middleware.rb +3 -2
- data/lib/datadog/appsec/contrib/faraday/ssrf_detection_middleware.rb +3 -1
- data/lib/datadog/appsec/contrib/graphql/gateway/watcher.rb +3 -1
- data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +9 -4
- data/lib/datadog/appsec/contrib/rack/request_middleware.rb +5 -1
- data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +7 -2
- data/lib/datadog/appsec/contrib/rails/patcher.rb +30 -0
- data/lib/datadog/appsec/contrib/rest_client/request_ssrf_detection_patch.rb +3 -1
- data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +10 -4
- data/lib/datadog/appsec/event.rb +12 -14
- data/lib/datadog/appsec/metrics/collector.rb +19 -3
- data/lib/datadog/appsec/metrics/telemetry_exporter.rb +2 -1
- data/lib/datadog/appsec/monitor/gateway/watcher.rb +4 -4
- data/lib/datadog/appsec/remote.rb +34 -25
- data/lib/datadog/appsec/response.rb +18 -4
- data/lib/datadog/appsec/security_engine/engine.rb +3 -3
- data/lib/datadog/appsec/security_engine/result.rb +29 -9
- data/lib/datadog/appsec/security_engine/runner.rb +19 -9
- data/lib/datadog/appsec/security_event.rb +5 -7
- data/lib/datadog/core/configuration/agent_settings_resolver.rb +4 -4
- data/lib/datadog/core/configuration/components.rb +59 -11
- data/lib/datadog/core/configuration/config_helper.rb +100 -0
- data/lib/datadog/core/configuration/deprecations.rb +36 -0
- data/lib/datadog/core/configuration/ext.rb +0 -1
- data/lib/datadog/core/configuration/option.rb +38 -43
- data/lib/datadog/core/configuration/option_definition.rb +4 -11
- data/lib/datadog/core/configuration/options.rb +9 -10
- data/lib/datadog/core/configuration/settings.rb +38 -9
- data/lib/datadog/core/configuration/stable_config.rb +10 -0
- data/lib/datadog/core/configuration/supported_configurations.rb +373 -0
- data/lib/datadog/core/configuration.rb +2 -2
- data/lib/datadog/core/ddsketch.rb +19 -0
- data/lib/datadog/core/deprecations.rb +2 -2
- data/lib/datadog/core/environment/cgroup.rb +52 -25
- data/lib/datadog/core/environment/container.rb +140 -46
- data/lib/datadog/core/environment/ext.rb +7 -2
- data/lib/datadog/core/environment/git.rb +2 -2
- data/lib/datadog/core/environment/process.rb +87 -0
- data/lib/datadog/core/environment/variable_helpers.rb +3 -3
- data/lib/datadog/core/environment/yjit.rb +2 -1
- data/lib/datadog/core/error.rb +6 -6
- data/lib/datadog/core/feature_flags.rb +61 -0
- data/lib/datadog/core/metrics/client.rb +2 -2
- data/lib/datadog/core/pin.rb +8 -8
- data/lib/datadog/core/process_discovery/tracer_memfd.rb +2 -4
- data/lib/datadog/core/process_discovery.rb +48 -23
- data/lib/datadog/core/rate_limiter.rb +9 -1
- data/lib/datadog/core/remote/client/capabilities.rb +7 -0
- data/lib/datadog/core/remote/client.rb +14 -6
- data/lib/datadog/core/remote/component.rb +10 -10
- data/lib/datadog/core/remote/configuration/content.rb +15 -2
- data/lib/datadog/core/remote/configuration/digest.rb +14 -7
- data/lib/datadog/core/remote/configuration/repository.rb +1 -1
- data/lib/datadog/core/remote/configuration/target.rb +13 -6
- data/lib/datadog/core/remote/transport/config.rb +4 -25
- data/lib/datadog/core/remote/transport/http/config.rb +10 -50
- data/lib/datadog/core/remote/transport/http/negotiation.rb +14 -44
- data/lib/datadog/core/remote/transport/http.rb +15 -24
- data/lib/datadog/core/remote/transport/negotiation.rb +8 -33
- data/lib/datadog/core/remote/worker.rb +25 -37
- data/lib/datadog/core/runtime/ext.rb +0 -1
- data/lib/datadog/core/runtime/metrics.rb +11 -1
- data/lib/datadog/core/semaphore.rb +1 -4
- data/lib/datadog/core/tag_builder.rb +0 -4
- data/lib/datadog/core/tag_normalizer.rb +84 -0
- data/lib/datadog/core/telemetry/component.rb +69 -15
- data/lib/datadog/core/telemetry/emitter.rb +6 -6
- data/lib/datadog/core/telemetry/event/app_endpoints_loaded.rb +30 -0
- data/lib/datadog/core/telemetry/event/app_started.rb +89 -51
- data/lib/datadog/core/telemetry/event/synth_app_client_configuration_change.rb +27 -4
- data/lib/datadog/core/telemetry/event.rb +1 -0
- data/lib/datadog/core/telemetry/logger.rb +2 -2
- data/lib/datadog/core/telemetry/logging.rb +2 -8
- data/lib/datadog/core/telemetry/metrics_manager.rb +9 -0
- data/lib/datadog/core/telemetry/request.rb +17 -3
- data/lib/datadog/core/telemetry/transport/http/telemetry.rb +3 -34
- data/lib/datadog/core/telemetry/transport/http.rb +21 -16
- data/lib/datadog/core/telemetry/transport/telemetry.rb +3 -11
- data/lib/datadog/core/telemetry/worker.rb +88 -32
- data/lib/datadog/core/transport/ext.rb +2 -0
- data/lib/datadog/core/transport/http/api/endpoint.rb +9 -4
- data/lib/datadog/core/transport/http/api/instance.rb +4 -21
- data/lib/datadog/core/transport/http/builder.rb +9 -5
- data/lib/datadog/core/transport/http/client.rb +80 -0
- data/lib/datadog/core/transport/http.rb +22 -19
- data/lib/datadog/core/transport/response.rb +15 -1
- data/lib/datadog/core/transport/transport.rb +90 -0
- data/lib/datadog/core/utils/array.rb +29 -0
- data/lib/datadog/{appsec/api_security → core/utils}/lru_cache.rb +10 -21
- data/lib/datadog/core/utils/network.rb +22 -1
- data/lib/datadog/core/utils/only_once_successful.rb +8 -2
- data/lib/datadog/core/utils/safe_dup.rb +2 -2
- data/lib/datadog/core/utils/sequence.rb +2 -0
- data/lib/datadog/core/utils/time.rb +1 -1
- data/lib/datadog/core/utils.rb +2 -0
- data/lib/datadog/core/workers/async.rb +10 -1
- data/lib/datadog/core/workers/interval_loop.rb +44 -3
- data/lib/datadog/core/workers/polling.rb +2 -0
- data/lib/datadog/core/workers/queue.rb +100 -1
- data/lib/datadog/core.rb +2 -0
- data/lib/datadog/data_streams/configuration/settings.rb +49 -0
- data/lib/datadog/data_streams/configuration.rb +11 -0
- data/lib/datadog/data_streams/ext.rb +11 -0
- data/lib/datadog/data_streams/extensions.rb +16 -0
- data/lib/datadog/data_streams/pathway_context.rb +169 -0
- data/lib/datadog/data_streams/processor.rb +509 -0
- data/lib/datadog/data_streams/transport/http/stats.rb +52 -0
- data/lib/datadog/data_streams/transport/http.rb +40 -0
- data/lib/datadog/data_streams/transport/stats.rb +46 -0
- data/lib/datadog/data_streams.rb +100 -0
- data/lib/datadog/di/boot.rb +7 -3
- data/lib/datadog/di/component.rb +14 -16
- data/lib/datadog/di/context.rb +70 -0
- data/lib/datadog/di/contrib/active_record.rb +30 -5
- data/lib/datadog/di/el/compiler.rb +168 -0
- data/lib/datadog/di/el/evaluator.rb +159 -0
- data/lib/datadog/di/el/expression.rb +42 -0
- data/lib/datadog/di/el.rb +5 -0
- data/lib/datadog/di/error.rb +34 -0
- data/lib/datadog/di/instrumenter.rb +189 -55
- data/lib/datadog/di/logger.rb +2 -2
- data/lib/datadog/di/probe.rb +55 -15
- data/lib/datadog/di/probe_builder.rb +41 -2
- data/lib/datadog/di/probe_file_loader/railtie.rb +1 -1
- data/lib/datadog/di/probe_file_loader.rb +1 -1
- data/lib/datadog/di/probe_manager.rb +50 -35
- data/lib/datadog/di/probe_notification_builder.rb +121 -70
- data/lib/datadog/di/probe_notifier_worker.rb +5 -5
- data/lib/datadog/di/proc_responder.rb +32 -0
- data/lib/datadog/di/remote.rb +89 -84
- data/lib/datadog/di/serializer.rb +151 -7
- data/lib/datadog/di/transport/diagnostics.rb +8 -36
- data/lib/datadog/di/transport/http/diagnostics.rb +1 -33
- data/lib/datadog/di/transport/http/input.rb +1 -33
- data/lib/datadog/di/transport/http.rb +32 -17
- data/lib/datadog/di/transport/input.rb +67 -34
- data/lib/datadog/di.rb +61 -5
- data/lib/datadog/error_tracking/filters.rb +2 -2
- data/lib/datadog/kit/appsec/events/v2.rb +2 -3
- data/lib/datadog/open_feature/component.rb +60 -0
- data/lib/datadog/open_feature/configuration.rb +27 -0
- data/lib/datadog/open_feature/evaluation_engine.rb +70 -0
- data/lib/datadog/open_feature/exposures/batch_builder.rb +32 -0
- data/lib/datadog/open_feature/exposures/buffer.rb +43 -0
- data/lib/datadog/open_feature/exposures/deduplicator.rb +30 -0
- data/lib/datadog/open_feature/exposures/event.rb +60 -0
- data/lib/datadog/open_feature/exposures/reporter.rb +40 -0
- data/lib/datadog/open_feature/exposures/worker.rb +116 -0
- data/lib/datadog/open_feature/ext.rb +14 -0
- data/lib/datadog/open_feature/native_evaluator.rb +38 -0
- data/lib/datadog/open_feature/noop_evaluator.rb +26 -0
- data/lib/datadog/open_feature/provider.rb +141 -0
- data/lib/datadog/open_feature/remote.rb +67 -0
- data/lib/datadog/open_feature/resolution_details.rb +35 -0
- data/lib/datadog/open_feature/transport.rb +70 -0
- data/lib/datadog/open_feature.rb +19 -0
- data/lib/datadog/opentelemetry/api/baggage.rb +1 -1
- data/lib/datadog/opentelemetry/configuration/settings.rb +159 -0
- data/lib/datadog/opentelemetry/metrics.rb +117 -0
- data/lib/datadog/opentelemetry/sdk/configurator.rb +26 -2
- data/lib/datadog/opentelemetry/sdk/metrics_exporter.rb +35 -0
- data/lib/datadog/opentelemetry.rb +3 -0
- data/lib/datadog/profiling/collectors/code_provenance.rb +41 -7
- data/lib/datadog/profiling/collectors/cpu_and_wall_time_worker.rb +3 -2
- data/lib/datadog/profiling/collectors/idle_sampling_helper.rb +1 -1
- data/lib/datadog/profiling/collectors/info.rb +6 -5
- data/lib/datadog/profiling/component.rb +12 -11
- data/lib/datadog/profiling/ext/dir_monkey_patches.rb +18 -0
- data/lib/datadog/profiling/ext.rb +2 -1
- data/lib/datadog/profiling/http_transport.rb +5 -2
- data/lib/datadog/profiling/profiler.rb +4 -0
- data/lib/datadog/profiling/tag_builder.rb +36 -3
- data/lib/datadog/profiling/tasks/exec.rb +2 -2
- data/lib/datadog/profiling.rb +1 -2
- data/lib/datadog/single_step_instrument.rb +1 -1
- data/lib/datadog/tracing/component.rb +6 -17
- data/lib/datadog/tracing/configuration/dynamic.rb +2 -2
- data/lib/datadog/tracing/configuration/ext.rb +9 -3
- data/lib/datadog/tracing/configuration/settings.rb +89 -10
- data/lib/datadog/tracing/contrib/action_pack/action_controller/instrumentation.rb +4 -4
- data/lib/datadog/tracing/contrib/action_pack/utils.rb +1 -2
- data/lib/datadog/tracing/contrib/active_job/log_injection.rb +21 -7
- data/lib/datadog/tracing/contrib/active_job/patcher.rb +5 -1
- data/lib/datadog/tracing/contrib/aws/instrumentation.rb +4 -2
- data/lib/datadog/tracing/contrib/component.rb +2 -2
- data/lib/datadog/tracing/contrib/ethon/easy_patch.rb +4 -1
- data/lib/datadog/tracing/contrib/excon/configuration/settings.rb +11 -3
- data/lib/datadog/tracing/contrib/extensions.rb +10 -2
- data/lib/datadog/tracing/contrib/faraday/configuration/settings.rb +11 -7
- data/lib/datadog/tracing/contrib/grape/configuration/settings.rb +7 -3
- data/lib/datadog/tracing/contrib/graphql/configuration/settings.rb +7 -0
- data/lib/datadog/tracing/contrib/graphql/ext.rb +1 -0
- data/lib/datadog/tracing/contrib/graphql/unified_trace.rb +84 -43
- data/lib/datadog/tracing/contrib/http/configuration/settings.rb +11 -3
- data/lib/datadog/tracing/contrib/httpclient/configuration/settings.rb +11 -3
- data/lib/datadog/tracing/contrib/httprb/configuration/settings.rb +11 -3
- data/lib/datadog/tracing/contrib/kafka/instrumentation/consumer.rb +66 -0
- data/lib/datadog/tracing/contrib/kafka/instrumentation/producer.rb +66 -0
- data/lib/datadog/tracing/contrib/kafka/patcher.rb +14 -0
- data/lib/datadog/tracing/contrib/karafka/framework.rb +30 -0
- data/lib/datadog/tracing/contrib/karafka/monitor.rb +11 -0
- data/lib/datadog/tracing/contrib/karafka/patcher.rb +35 -4
- data/lib/datadog/tracing/contrib/rack/middlewares.rb +59 -27
- data/lib/datadog/tracing/contrib/rack/request_queue.rb +1 -0
- data/lib/datadog/tracing/contrib/rack/route_inference.rb +53 -0
- data/lib/datadog/tracing/contrib/rack/trace_proxy_middleware.rb +7 -1
- data/lib/datadog/tracing/contrib/rails/ext.rb +2 -1
- data/lib/datadog/tracing/contrib/rails/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/rails/middlewares.rb +2 -2
- data/lib/datadog/tracing/contrib/rest_client/request_patch.rb +4 -1
- data/lib/datadog/tracing/contrib/roda/instrumentation.rb +3 -1
- data/lib/datadog/tracing/contrib/sinatra/tracer_middleware.rb +3 -1
- data/lib/datadog/tracing/contrib/span_attribute_schema.rb +1 -1
- data/lib/datadog/tracing/contrib/status_range_matcher.rb +9 -1
- data/lib/datadog/tracing/contrib/utils/quantization/hash.rb +3 -1
- data/lib/datadog/tracing/contrib/waterdrop/configuration/settings.rb +27 -0
- data/lib/datadog/tracing/contrib/waterdrop/distributed/propagation.rb +48 -0
- data/lib/datadog/tracing/contrib/waterdrop/ext.rb +17 -0
- data/lib/datadog/tracing/contrib/waterdrop/integration.rb +43 -0
- data/lib/datadog/tracing/contrib/waterdrop/middleware.rb +46 -0
- data/lib/datadog/tracing/contrib/waterdrop/patcher.rb +49 -0
- data/lib/datadog/tracing/contrib/waterdrop/producer.rb +50 -0
- data/lib/datadog/tracing/contrib/waterdrop.rb +41 -0
- data/lib/datadog/tracing/contrib.rb +1 -0
- data/lib/datadog/tracing/diagnostics/environment_logger.rb +1 -1
- data/lib/datadog/tracing/distributed/baggage.rb +3 -2
- data/lib/datadog/tracing/metadata/ext.rb +9 -1
- data/lib/datadog/tracing/remote.rb +1 -9
- data/lib/datadog/tracing/sampling/priority_sampler.rb +3 -1
- data/lib/datadog/tracing/span.rb +1 -1
- data/lib/datadog/tracing/span_event.rb +2 -2
- data/lib/datadog/tracing/span_operation.rb +20 -9
- data/lib/datadog/tracing/trace_operation.rb +44 -6
- data/lib/datadog/tracing/tracer.rb +42 -16
- data/lib/datadog/tracing/transport/http/client.rb +12 -26
- data/lib/datadog/tracing/transport/http/traces.rb +2 -50
- data/lib/datadog/tracing/transport/http.rb +15 -9
- data/lib/datadog/tracing/transport/io/client.rb +1 -1
- data/lib/datadog/tracing/transport/trace_formatter.rb +11 -0
- data/lib/datadog/tracing/transport/traces.rb +9 -71
- data/lib/datadog/tracing/workers/trace_writer.rb +5 -0
- data/lib/datadog/tracing/writer.rb +1 -0
- data/lib/datadog/version.rb +2 -2
- data/lib/datadog.rb +3 -0
- metadata +110 -24
- data/ext/libdatadog_api/macos_development.md +0 -26
- data/lib/datadog/core/remote/transport/http/api.rb +0 -53
- data/lib/datadog/core/remote/transport/http/client.rb +0 -49
- data/lib/datadog/core/telemetry/transport/http/api.rb +0 -43
- data/lib/datadog/core/telemetry/transport/http/client.rb +0 -49
- data/lib/datadog/core/transport/http/api/spec.rb +0 -36
- data/lib/datadog/di/transport/http/api.rb +0 -42
- data/lib/datadog/di/transport/http/client.rb +0 -47
- data/lib/datadog/opentelemetry/api/baggage.rbs +0 -26
- data/lib/datadog/tracing/transport/http/api.rb +0 -44
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.26.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:
|
|
11
|
+
date: 2026-01-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: msgpack
|
|
@@ -30,48 +30,48 @@ dependencies:
|
|
|
30
30
|
requirements:
|
|
31
31
|
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '3.
|
|
33
|
+
version: '3.5'
|
|
34
34
|
- - ">="
|
|
35
35
|
- !ruby/object:Gem::Version
|
|
36
|
-
version: 3.
|
|
36
|
+
version: 3.5.1
|
|
37
37
|
type: :runtime
|
|
38
38
|
prerelease: false
|
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
|
40
40
|
requirements:
|
|
41
41
|
- - "~>"
|
|
42
42
|
- !ruby/object:Gem::Version
|
|
43
|
-
version: '3.
|
|
43
|
+
version: '3.5'
|
|
44
44
|
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: 3.
|
|
46
|
+
version: 3.5.1
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
48
|
name: libddwaf
|
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
|
50
50
|
requirements:
|
|
51
51
|
- - "~>"
|
|
52
52
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: 1.
|
|
53
|
+
version: 1.30.0.0.0
|
|
54
54
|
type: :runtime
|
|
55
55
|
prerelease: false
|
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
|
57
57
|
requirements:
|
|
58
58
|
- - "~>"
|
|
59
59
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: 1.
|
|
60
|
+
version: 1.30.0.0.0
|
|
61
61
|
- !ruby/object:Gem::Dependency
|
|
62
62
|
name: libdatadog
|
|
63
63
|
requirement: !ruby/object:Gem::Requirement
|
|
64
64
|
requirements:
|
|
65
65
|
- - "~>"
|
|
66
66
|
- !ruby/object:Gem::Version
|
|
67
|
-
version:
|
|
67
|
+
version: 25.0.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: 25.0.0.1.0
|
|
75
75
|
- !ruby/object:Gem::Dependency
|
|
76
76
|
name: logger
|
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -86,6 +86,20 @@ dependencies:
|
|
|
86
86
|
- - ">="
|
|
87
87
|
- !ruby/object:Gem::Version
|
|
88
88
|
version: '0'
|
|
89
|
+
- !ruby/object:Gem::Dependency
|
|
90
|
+
name: cgi
|
|
91
|
+
requirement: !ruby/object:Gem::Requirement
|
|
92
|
+
requirements:
|
|
93
|
+
- - ">="
|
|
94
|
+
- !ruby/object:Gem::Version
|
|
95
|
+
version: '0'
|
|
96
|
+
type: :runtime
|
|
97
|
+
prerelease: false
|
|
98
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
99
|
+
requirements:
|
|
100
|
+
- - ">="
|
|
101
|
+
- !ruby/object:Gem::Version
|
|
102
|
+
version: '0'
|
|
89
103
|
description: |
|
|
90
104
|
datadog is Datadog's client library for Ruby. It includes a suite of tools
|
|
91
105
|
which provide visibility into the performance and security of Ruby applications,
|
|
@@ -107,6 +121,7 @@ files:
|
|
|
107
121
|
- NOTICE
|
|
108
122
|
- README.md
|
|
109
123
|
- bin/ddprofrb
|
|
124
|
+
- ext/LIBDATADOG_DEVELOPMENT.md
|
|
110
125
|
- ext/datadog_profiling_native_extension/NativeExtensionDesign.md
|
|
111
126
|
- ext/datadog_profiling_native_extension/clock_id.h
|
|
112
127
|
- ext/datadog_profiling_native_extension/clock_id_from_pthread.c
|
|
@@ -124,6 +139,7 @@ files:
|
|
|
124
139
|
- ext/datadog_profiling_native_extension/collectors_stack.h
|
|
125
140
|
- ext/datadog_profiling_native_extension/collectors_thread_context.c
|
|
126
141
|
- ext/datadog_profiling_native_extension/collectors_thread_context.h
|
|
142
|
+
- ext/datadog_profiling_native_extension/crashtracking_runtime_stacks.c
|
|
127
143
|
- ext/datadog_profiling_native_extension/datadog_ruby_common.c
|
|
128
144
|
- ext/datadog_profiling_native_extension/datadog_ruby_common.h
|
|
129
145
|
- ext/datadog_profiling_native_extension/encoded_profile.c
|
|
@@ -155,21 +171,40 @@ files:
|
|
|
155
171
|
- ext/libdatadog_api/crashtracker.h
|
|
156
172
|
- ext/libdatadog_api/datadog_ruby_common.c
|
|
157
173
|
- ext/libdatadog_api/datadog_ruby_common.h
|
|
174
|
+
- ext/libdatadog_api/ddsketch.c
|
|
158
175
|
- ext/libdatadog_api/extconf.rb
|
|
176
|
+
- ext/libdatadog_api/feature_flags.c
|
|
177
|
+
- ext/libdatadog_api/feature_flags.h
|
|
159
178
|
- ext/libdatadog_api/init.c
|
|
160
179
|
- ext/libdatadog_api/library_config.c
|
|
161
180
|
- ext/libdatadog_api/library_config.h
|
|
162
|
-
- ext/libdatadog_api/macos_development.md
|
|
163
181
|
- ext/libdatadog_api/process_discovery.c
|
|
164
182
|
- ext/libdatadog_api/process_discovery.h
|
|
165
183
|
- ext/libdatadog_extconf_helpers.rb
|
|
166
184
|
- lib/datadog.rb
|
|
185
|
+
- lib/datadog/ai_guard.rb
|
|
186
|
+
- lib/datadog/ai_guard/api_client.rb
|
|
187
|
+
- lib/datadog/ai_guard/component.rb
|
|
188
|
+
- lib/datadog/ai_guard/configuration.rb
|
|
189
|
+
- lib/datadog/ai_guard/configuration/ext.rb
|
|
190
|
+
- lib/datadog/ai_guard/configuration/settings.rb
|
|
191
|
+
- lib/datadog/ai_guard/evaluation.rb
|
|
192
|
+
- lib/datadog/ai_guard/evaluation/message.rb
|
|
193
|
+
- lib/datadog/ai_guard/evaluation/no_op_result.rb
|
|
194
|
+
- lib/datadog/ai_guard/evaluation/request.rb
|
|
195
|
+
- lib/datadog/ai_guard/evaluation/result.rb
|
|
196
|
+
- lib/datadog/ai_guard/evaluation/tool_call.rb
|
|
197
|
+
- lib/datadog/ai_guard/ext.rb
|
|
167
198
|
- lib/datadog/appsec.rb
|
|
168
199
|
- lib/datadog/appsec/actions_handler.rb
|
|
169
200
|
- lib/datadog/appsec/actions_handler/serializable_backtrace.rb
|
|
170
201
|
- lib/datadog/appsec/anonymizer.rb
|
|
171
202
|
- lib/datadog/appsec/api_security.rb
|
|
172
|
-
- lib/datadog/appsec/api_security/
|
|
203
|
+
- lib/datadog/appsec/api_security/endpoint_collection.rb
|
|
204
|
+
- lib/datadog/appsec/api_security/endpoint_collection/grape_route_serializer.rb
|
|
205
|
+
- lib/datadog/appsec/api_security/endpoint_collection/rails_collector.rb
|
|
206
|
+
- lib/datadog/appsec/api_security/endpoint_collection/rails_route_serializer.rb
|
|
207
|
+
- lib/datadog/appsec/api_security/endpoint_collection/sinatra_route_serializer.rb
|
|
173
208
|
- lib/datadog/appsec/api_security/route_extractor.rb
|
|
174
209
|
- lib/datadog/appsec/api_security/sampler.rb
|
|
175
210
|
- lib/datadog/appsec/assets.rb
|
|
@@ -286,15 +321,19 @@ files:
|
|
|
286
321
|
- lib/datadog/core/configuration/base.rb
|
|
287
322
|
- lib/datadog/core/configuration/components.rb
|
|
288
323
|
- lib/datadog/core/configuration/components_state.rb
|
|
324
|
+
- lib/datadog/core/configuration/config_helper.rb
|
|
325
|
+
- lib/datadog/core/configuration/deprecations.rb
|
|
289
326
|
- lib/datadog/core/configuration/ext.rb
|
|
290
327
|
- lib/datadog/core/configuration/option.rb
|
|
291
328
|
- lib/datadog/core/configuration/option_definition.rb
|
|
292
329
|
- lib/datadog/core/configuration/options.rb
|
|
293
330
|
- lib/datadog/core/configuration/settings.rb
|
|
294
331
|
- lib/datadog/core/configuration/stable_config.rb
|
|
332
|
+
- lib/datadog/core/configuration/supported_configurations.rb
|
|
295
333
|
- lib/datadog/core/contrib/rails/utils.rb
|
|
296
334
|
- lib/datadog/core/crashtracking/component.rb
|
|
297
335
|
- lib/datadog/core/crashtracking/tag_builder.rb
|
|
336
|
+
- lib/datadog/core/ddsketch.rb
|
|
298
337
|
- lib/datadog/core/deprecations.rb
|
|
299
338
|
- lib/datadog/core/diagnostics/environment_logger.rb
|
|
300
339
|
- lib/datadog/core/diagnostics/health.rb
|
|
@@ -309,6 +348,7 @@ files:
|
|
|
309
348
|
- lib/datadog/core/environment/git.rb
|
|
310
349
|
- lib/datadog/core/environment/identity.rb
|
|
311
350
|
- lib/datadog/core/environment/platform.rb
|
|
351
|
+
- lib/datadog/core/environment/process.rb
|
|
312
352
|
- lib/datadog/core/environment/socket.rb
|
|
313
353
|
- lib/datadog/core/environment/thread_count.rb
|
|
314
354
|
- lib/datadog/core/environment/variable_helpers.rb
|
|
@@ -316,6 +356,7 @@ files:
|
|
|
316
356
|
- lib/datadog/core/environment/yjit.rb
|
|
317
357
|
- lib/datadog/core/error.rb
|
|
318
358
|
- lib/datadog/core/extensions.rb
|
|
359
|
+
- lib/datadog/core/feature_flags.rb
|
|
319
360
|
- lib/datadog/core/git/ext.rb
|
|
320
361
|
- lib/datadog/core/header_collection.rb
|
|
321
362
|
- lib/datadog/core/logger.rb
|
|
@@ -347,8 +388,6 @@ files:
|
|
|
347
388
|
- lib/datadog/core/remote/tie/tracing.rb
|
|
348
389
|
- lib/datadog/core/remote/transport/config.rb
|
|
349
390
|
- lib/datadog/core/remote/transport/http.rb
|
|
350
|
-
- lib/datadog/core/remote/transport/http/api.rb
|
|
351
|
-
- lib/datadog/core/remote/transport/http/client.rb
|
|
352
391
|
- lib/datadog/core/remote/transport/http/config.rb
|
|
353
392
|
- lib/datadog/core/remote/transport/http/negotiation.rb
|
|
354
393
|
- lib/datadog/core/remote/transport/negotiation.rb
|
|
@@ -357,12 +396,14 @@ files:
|
|
|
357
396
|
- lib/datadog/core/runtime/metrics.rb
|
|
358
397
|
- lib/datadog/core/semaphore.rb
|
|
359
398
|
- lib/datadog/core/tag_builder.rb
|
|
399
|
+
- lib/datadog/core/tag_normalizer.rb
|
|
360
400
|
- lib/datadog/core/telemetry/component.rb
|
|
361
401
|
- lib/datadog/core/telemetry/emitter.rb
|
|
362
402
|
- lib/datadog/core/telemetry/event.rb
|
|
363
403
|
- lib/datadog/core/telemetry/event/app_client_configuration_change.rb
|
|
364
404
|
- lib/datadog/core/telemetry/event/app_closing.rb
|
|
365
405
|
- lib/datadog/core/telemetry/event/app_dependencies_loaded.rb
|
|
406
|
+
- lib/datadog/core/telemetry/event/app_endpoints_loaded.rb
|
|
366
407
|
- lib/datadog/core/telemetry/event/app_heartbeat.rb
|
|
367
408
|
- lib/datadog/core/telemetry/event/app_integrations_change.rb
|
|
368
409
|
- lib/datadog/core/telemetry/event/app_started.rb
|
|
@@ -381,8 +422,6 @@ files:
|
|
|
381
422
|
- lib/datadog/core/telemetry/metrics_manager.rb
|
|
382
423
|
- lib/datadog/core/telemetry/request.rb
|
|
383
424
|
- lib/datadog/core/telemetry/transport/http.rb
|
|
384
|
-
- lib/datadog/core/telemetry/transport/http/api.rb
|
|
385
|
-
- lib/datadog/core/telemetry/transport/http/client.rb
|
|
386
425
|
- lib/datadog/core/telemetry/transport/http/telemetry.rb
|
|
387
426
|
- lib/datadog/core/telemetry/transport/telemetry.rb
|
|
388
427
|
- lib/datadog/core/telemetry/worker.rb
|
|
@@ -396,19 +435,22 @@ files:
|
|
|
396
435
|
- lib/datadog/core/transport/http/api/fallbacks.rb
|
|
397
436
|
- lib/datadog/core/transport/http/api/instance.rb
|
|
398
437
|
- lib/datadog/core/transport/http/api/map.rb
|
|
399
|
-
- lib/datadog/core/transport/http/api/spec.rb
|
|
400
438
|
- lib/datadog/core/transport/http/builder.rb
|
|
439
|
+
- lib/datadog/core/transport/http/client.rb
|
|
401
440
|
- lib/datadog/core/transport/http/env.rb
|
|
402
441
|
- lib/datadog/core/transport/http/response.rb
|
|
403
442
|
- lib/datadog/core/transport/parcel.rb
|
|
404
443
|
- lib/datadog/core/transport/request.rb
|
|
405
444
|
- lib/datadog/core/transport/response.rb
|
|
445
|
+
- lib/datadog/core/transport/transport.rb
|
|
406
446
|
- lib/datadog/core/utils.rb
|
|
447
|
+
- lib/datadog/core/utils/array.rb
|
|
407
448
|
- lib/datadog/core/utils/at_fork_monkey_patch.rb
|
|
408
449
|
- lib/datadog/core/utils/base64.rb
|
|
409
450
|
- lib/datadog/core/utils/duration.rb
|
|
410
451
|
- lib/datadog/core/utils/forking.rb
|
|
411
452
|
- lib/datadog/core/utils/hash.rb
|
|
453
|
+
- lib/datadog/core/utils/lru_cache.rb
|
|
412
454
|
- lib/datadog/core/utils/network.rb
|
|
413
455
|
- lib/datadog/core/utils/only_once.rb
|
|
414
456
|
- lib/datadog/core/utils/only_once_successful.rb
|
|
@@ -431,6 +473,16 @@ files:
|
|
|
431
473
|
- lib/datadog/core/workers/polling.rb
|
|
432
474
|
- lib/datadog/core/workers/queue.rb
|
|
433
475
|
- lib/datadog/core/workers/runtime_metrics.rb
|
|
476
|
+
- lib/datadog/data_streams.rb
|
|
477
|
+
- lib/datadog/data_streams/configuration.rb
|
|
478
|
+
- lib/datadog/data_streams/configuration/settings.rb
|
|
479
|
+
- lib/datadog/data_streams/ext.rb
|
|
480
|
+
- lib/datadog/data_streams/extensions.rb
|
|
481
|
+
- lib/datadog/data_streams/pathway_context.rb
|
|
482
|
+
- lib/datadog/data_streams/processor.rb
|
|
483
|
+
- lib/datadog/data_streams/transport/http.rb
|
|
484
|
+
- lib/datadog/data_streams/transport/http/stats.rb
|
|
485
|
+
- lib/datadog/data_streams/transport/stats.rb
|
|
434
486
|
- lib/datadog/di.rb
|
|
435
487
|
- lib/datadog/di/base.rb
|
|
436
488
|
- lib/datadog/di/boot.rb
|
|
@@ -438,9 +490,14 @@ files:
|
|
|
438
490
|
- lib/datadog/di/component.rb
|
|
439
491
|
- lib/datadog/di/configuration.rb
|
|
440
492
|
- lib/datadog/di/configuration/settings.rb
|
|
493
|
+
- lib/datadog/di/context.rb
|
|
441
494
|
- lib/datadog/di/contrib.rb
|
|
442
495
|
- lib/datadog/di/contrib/active_record.rb
|
|
443
496
|
- lib/datadog/di/contrib/railtie.rb
|
|
497
|
+
- lib/datadog/di/el.rb
|
|
498
|
+
- lib/datadog/di/el/compiler.rb
|
|
499
|
+
- lib/datadog/di/el/evaluator.rb
|
|
500
|
+
- lib/datadog/di/el/expression.rb
|
|
444
501
|
- lib/datadog/di/error.rb
|
|
445
502
|
- lib/datadog/di/extensions.rb
|
|
446
503
|
- lib/datadog/di/instrumenter.rb
|
|
@@ -453,13 +510,12 @@ files:
|
|
|
453
510
|
- lib/datadog/di/probe_manager.rb
|
|
454
511
|
- lib/datadog/di/probe_notification_builder.rb
|
|
455
512
|
- lib/datadog/di/probe_notifier_worker.rb
|
|
513
|
+
- lib/datadog/di/proc_responder.rb
|
|
456
514
|
- lib/datadog/di/redactor.rb
|
|
457
515
|
- lib/datadog/di/remote.rb
|
|
458
516
|
- lib/datadog/di/serializer.rb
|
|
459
517
|
- lib/datadog/di/transport/diagnostics.rb
|
|
460
518
|
- lib/datadog/di/transport/http.rb
|
|
461
|
-
- lib/datadog/di/transport/http/api.rb
|
|
462
|
-
- lib/datadog/di/transport/http/client.rb
|
|
463
519
|
- lib/datadog/di/transport/http/diagnostics.rb
|
|
464
520
|
- lib/datadog/di/transport/http/input.rb
|
|
465
521
|
- lib/datadog/di/transport/input.rb
|
|
@@ -477,13 +533,32 @@ files:
|
|
|
477
533
|
- lib/datadog/kit/appsec/events/v2.rb
|
|
478
534
|
- lib/datadog/kit/enable_core_dumps.rb
|
|
479
535
|
- lib/datadog/kit/identity.rb
|
|
536
|
+
- lib/datadog/open_feature.rb
|
|
537
|
+
- lib/datadog/open_feature/component.rb
|
|
538
|
+
- lib/datadog/open_feature/configuration.rb
|
|
539
|
+
- lib/datadog/open_feature/evaluation_engine.rb
|
|
540
|
+
- lib/datadog/open_feature/exposures/batch_builder.rb
|
|
541
|
+
- lib/datadog/open_feature/exposures/buffer.rb
|
|
542
|
+
- lib/datadog/open_feature/exposures/deduplicator.rb
|
|
543
|
+
- lib/datadog/open_feature/exposures/event.rb
|
|
544
|
+
- lib/datadog/open_feature/exposures/reporter.rb
|
|
545
|
+
- lib/datadog/open_feature/exposures/worker.rb
|
|
546
|
+
- lib/datadog/open_feature/ext.rb
|
|
547
|
+
- lib/datadog/open_feature/native_evaluator.rb
|
|
548
|
+
- lib/datadog/open_feature/noop_evaluator.rb
|
|
549
|
+
- lib/datadog/open_feature/provider.rb
|
|
550
|
+
- lib/datadog/open_feature/remote.rb
|
|
551
|
+
- lib/datadog/open_feature/resolution_details.rb
|
|
552
|
+
- lib/datadog/open_feature/transport.rb
|
|
480
553
|
- lib/datadog/opentelemetry.rb
|
|
481
554
|
- lib/datadog/opentelemetry/api/baggage.rb
|
|
482
|
-
- lib/datadog/opentelemetry/api/baggage.rbs
|
|
483
555
|
- lib/datadog/opentelemetry/api/context.rb
|
|
484
556
|
- lib/datadog/opentelemetry/api/trace/span.rb
|
|
557
|
+
- lib/datadog/opentelemetry/configuration/settings.rb
|
|
558
|
+
- lib/datadog/opentelemetry/metrics.rb
|
|
485
559
|
- lib/datadog/opentelemetry/sdk/configurator.rb
|
|
486
560
|
- lib/datadog/opentelemetry/sdk/id_generator.rb
|
|
561
|
+
- lib/datadog/opentelemetry/sdk/metrics_exporter.rb
|
|
487
562
|
- lib/datadog/opentelemetry/sdk/propagator.rb
|
|
488
563
|
- lib/datadog/opentelemetry/sdk/span_processor.rb
|
|
489
564
|
- lib/datadog/opentelemetry/sdk/trace/span.rb
|
|
@@ -747,12 +822,15 @@ files:
|
|
|
747
822
|
- lib/datadog/tracing/contrib/kafka/events/produce_operation/send_messages.rb
|
|
748
823
|
- lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
|
|
749
824
|
- lib/datadog/tracing/contrib/kafka/ext.rb
|
|
825
|
+
- lib/datadog/tracing/contrib/kafka/instrumentation/consumer.rb
|
|
826
|
+
- lib/datadog/tracing/contrib/kafka/instrumentation/producer.rb
|
|
750
827
|
- lib/datadog/tracing/contrib/kafka/integration.rb
|
|
751
828
|
- lib/datadog/tracing/contrib/kafka/patcher.rb
|
|
752
829
|
- lib/datadog/tracing/contrib/karafka.rb
|
|
753
830
|
- lib/datadog/tracing/contrib/karafka/configuration/settings.rb
|
|
754
831
|
- lib/datadog/tracing/contrib/karafka/distributed/propagation.rb
|
|
755
832
|
- lib/datadog/tracing/contrib/karafka/ext.rb
|
|
833
|
+
- lib/datadog/tracing/contrib/karafka/framework.rb
|
|
756
834
|
- lib/datadog/tracing/contrib/karafka/integration.rb
|
|
757
835
|
- lib/datadog/tracing/contrib/karafka/monitor.rb
|
|
758
836
|
- lib/datadog/tracing/contrib/karafka/patcher.rb
|
|
@@ -816,6 +894,7 @@ files:
|
|
|
816
894
|
- lib/datadog/tracing/contrib/rack/middlewares.rb
|
|
817
895
|
- lib/datadog/tracing/contrib/rack/patcher.rb
|
|
818
896
|
- lib/datadog/tracing/contrib/rack/request_queue.rb
|
|
897
|
+
- lib/datadog/tracing/contrib/rack/route_inference.rb
|
|
819
898
|
- lib/datadog/tracing/contrib/rack/trace_proxy_middleware.rb
|
|
820
899
|
- lib/datadog/tracing/contrib/rails/auto_instrument_railtie.rb
|
|
821
900
|
- lib/datadog/tracing/contrib/rails/configuration/settings.rb
|
|
@@ -927,6 +1006,14 @@ files:
|
|
|
927
1006
|
- lib/datadog/tracing/contrib/utils/database.rb
|
|
928
1007
|
- lib/datadog/tracing/contrib/utils/quantization/hash.rb
|
|
929
1008
|
- lib/datadog/tracing/contrib/utils/quantization/http.rb
|
|
1009
|
+
- lib/datadog/tracing/contrib/waterdrop.rb
|
|
1010
|
+
- lib/datadog/tracing/contrib/waterdrop/configuration/settings.rb
|
|
1011
|
+
- lib/datadog/tracing/contrib/waterdrop/distributed/propagation.rb
|
|
1012
|
+
- lib/datadog/tracing/contrib/waterdrop/ext.rb
|
|
1013
|
+
- lib/datadog/tracing/contrib/waterdrop/integration.rb
|
|
1014
|
+
- lib/datadog/tracing/contrib/waterdrop/middleware.rb
|
|
1015
|
+
- lib/datadog/tracing/contrib/waterdrop/patcher.rb
|
|
1016
|
+
- lib/datadog/tracing/contrib/waterdrop/producer.rb
|
|
930
1017
|
- lib/datadog/tracing/correlation.rb
|
|
931
1018
|
- lib/datadog/tracing/diagnostics/environment_logger.rb
|
|
932
1019
|
- lib/datadog/tracing/diagnostics/ext.rb
|
|
@@ -981,7 +1068,6 @@ files:
|
|
|
981
1068
|
- lib/datadog/tracing/trace_segment.rb
|
|
982
1069
|
- lib/datadog/tracing/tracer.rb
|
|
983
1070
|
- lib/datadog/tracing/transport/http.rb
|
|
984
|
-
- lib/datadog/tracing/transport/http/api.rb
|
|
985
1071
|
- lib/datadog/tracing/transport/http/client.rb
|
|
986
1072
|
- lib/datadog/tracing/transport/http/statistics.rb
|
|
987
1073
|
- lib/datadog/tracing/transport/http/traces.rb
|
|
@@ -1004,8 +1090,8 @@ licenses:
|
|
|
1004
1090
|
- Apache-2.0
|
|
1005
1091
|
metadata:
|
|
1006
1092
|
allowed_push_host: https://rubygems.org
|
|
1007
|
-
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.
|
|
1008
|
-
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.
|
|
1093
|
+
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.26.0/CHANGELOG.md
|
|
1094
|
+
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.26.0
|
|
1009
1095
|
post_install_message:
|
|
1010
1096
|
rdoc_options: []
|
|
1011
1097
|
require_paths:
|
|
@@ -1017,7 +1103,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
1017
1103
|
version: 2.5.0
|
|
1018
1104
|
- - "<"
|
|
1019
1105
|
- !ruby/object:Gem::Version
|
|
1020
|
-
version: '
|
|
1106
|
+
version: '4.1'
|
|
1021
1107
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1022
1108
|
requirements:
|
|
1023
1109
|
- - ">="
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# Developing on macOS
|
|
2
|
-
|
|
3
|
-
As of this writing (August 2024), the libdatadog builds on rubygems.org only support Linux.
|
|
4
|
-
|
|
5
|
-
We don't officially support using libdatadog for Ruby on other platforms yet, but it is possible to use it for local development on macOS.
|
|
6
|
-
(**Note that you don't need these instructions if you develop inside docker.**)
|
|
7
|
-
|
|
8
|
-
Here's how you can do so:
|
|
9
|
-
|
|
10
|
-
1. [Install rust](https://www.rust-lang.org/tools/install)
|
|
11
|
-
2. Install `cbindgen`: `cargo install cbindgen`
|
|
12
|
-
3. Clone [libdatadog](https://github.com/datadog/libdatadog)
|
|
13
|
-
4. Create a folder for building into based on your ruby platform:
|
|
14
|
-
|
|
15
|
-
```
|
|
16
|
-
export DD_RUBY_PLATFORM=`ruby -e 'puts Gem::Platform.local.to_s'`
|
|
17
|
-
mkdir -p my-libdatadog-build/$DD_RUBY_PLATFORM
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
5. From inside of the libdatadog repo, build libdatadog into this folder: `./build-profiling-ffi.sh my-libdatadog-build/$DD_RUBY_PLATFORM`
|
|
21
|
-
6. Tell Ruby where to find libdatadog: `export LIBDATADOG_VENDOR_OVERRIDE=/full/path/to/my-libdatadog-build/` (Notice no platform here)
|
|
22
|
-
7. From dd-trace-rb, run `bundle exec rake clean compile`
|
|
23
|
-
|
|
24
|
-
If you additionally want to run the profiler test suite, also remember to `export DD_PROFILING_MACOS_TESTING=true` and re-run `rake clean compile`.
|
|
25
|
-
|
|
26
|
-
These instructions can quickly get outdated, so feel free to open an issue if they're not working (and/or ping @ivoanjo).
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative '../../../encoding'
|
|
4
|
-
require_relative '../../../transport/http/api/map'
|
|
5
|
-
require_relative '../../../transport/http/api/instance'
|
|
6
|
-
require_relative '../../../transport/http/api/spec'
|
|
7
|
-
require_relative 'negotiation'
|
|
8
|
-
require_relative 'config'
|
|
9
|
-
|
|
10
|
-
module Datadog
|
|
11
|
-
module Core
|
|
12
|
-
module Remote
|
|
13
|
-
module Transport
|
|
14
|
-
module HTTP
|
|
15
|
-
# Namespace for API components
|
|
16
|
-
module API
|
|
17
|
-
# Default API versions
|
|
18
|
-
ROOT = 'root'
|
|
19
|
-
V7 = 'v0.7'
|
|
20
|
-
|
|
21
|
-
module_function
|
|
22
|
-
|
|
23
|
-
def defaults
|
|
24
|
-
Core::Transport::HTTP::API::Map[
|
|
25
|
-
ROOT => Spec.new do |s|
|
|
26
|
-
s.info = Negotiation::API::Endpoint.new(
|
|
27
|
-
'/info',
|
|
28
|
-
)
|
|
29
|
-
end,
|
|
30
|
-
V7 => Spec.new do |s|
|
|
31
|
-
s.config = Config::API::Endpoint.new(
|
|
32
|
-
'/v0.7/config',
|
|
33
|
-
Core::Encoding::JSONEncoder,
|
|
34
|
-
)
|
|
35
|
-
end,
|
|
36
|
-
]
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
class Instance < Core::Transport::HTTP::API::Instance
|
|
40
|
-
include Config::API::Instance
|
|
41
|
-
include Negotiation::API::Instance
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
class Spec < Core::Transport::HTTP::API::Spec
|
|
45
|
-
include Config::API::Spec
|
|
46
|
-
include Negotiation::API::Spec
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
end
|
|
52
|
-
end
|
|
53
|
-
end
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative '../../../../core/transport/http/env'
|
|
4
|
-
require_relative '../../../../core/transport/http/response'
|
|
5
|
-
|
|
6
|
-
# TODO: Decouple transport/http/client
|
|
7
|
-
#
|
|
8
|
-
# The standard one does `include Transport::HTTP::Statistics` and performs
|
|
9
|
-
# stats updates, which may or may not be desirable in general.
|
|
10
|
-
|
|
11
|
-
module Datadog
|
|
12
|
-
module Core
|
|
13
|
-
module Remote
|
|
14
|
-
module Transport
|
|
15
|
-
module HTTP
|
|
16
|
-
# Routes, encodes, and sends tracer data to the trace agent via HTTP.
|
|
17
|
-
class Client
|
|
18
|
-
attr_reader :api, :logger
|
|
19
|
-
|
|
20
|
-
def initialize(api, logger: Datadog.logger)
|
|
21
|
-
@api = api
|
|
22
|
-
@logger = logger
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
def send_request(request, &block)
|
|
26
|
-
# Build request into env
|
|
27
|
-
env = build_env(request)
|
|
28
|
-
|
|
29
|
-
# Get responses from API
|
|
30
|
-
yield(api, env)
|
|
31
|
-
rescue => e
|
|
32
|
-
message =
|
|
33
|
-
"Internal error during #{self.class.name} request. Cause: #{e.class.name} #{e.message} " \
|
|
34
|
-
"Location: #{Array(e.backtrace).first}"
|
|
35
|
-
|
|
36
|
-
logger.debug(message)
|
|
37
|
-
|
|
38
|
-
Datadog::Core::Transport::InternalErrorResponse.new(e)
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
def build_env(request)
|
|
42
|
-
Datadog::Core::Transport::HTTP::Env.new(request)
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
end
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative '../../../encoding'
|
|
4
|
-
require_relative '../../../transport/http/api/map'
|
|
5
|
-
require_relative '../../../transport/http/api/instance'
|
|
6
|
-
require_relative '../../../transport/http/api/spec'
|
|
7
|
-
require_relative 'telemetry'
|
|
8
|
-
|
|
9
|
-
module Datadog
|
|
10
|
-
module Core
|
|
11
|
-
module Telemetry
|
|
12
|
-
module Transport
|
|
13
|
-
module HTTP
|
|
14
|
-
# Namespace for API components
|
|
15
|
-
module API
|
|
16
|
-
# Default API versions
|
|
17
|
-
AGENT_TELEMETRY = 'agent_telemetry'
|
|
18
|
-
AGENTLESS_TELEMETRY = 'agentless_telemetry'
|
|
19
|
-
|
|
20
|
-
module_function
|
|
21
|
-
|
|
22
|
-
def defaults
|
|
23
|
-
Datadog::Core::Transport::HTTP::API::Map[
|
|
24
|
-
AGENT_TELEMETRY => Telemetry::API::Spec.new do |s|
|
|
25
|
-
s.telemetry = Telemetry::API::Endpoint.new(
|
|
26
|
-
'/telemetry/proxy/api/v2/apmtelemetry',
|
|
27
|
-
Core::Encoding::JSONEncoder,
|
|
28
|
-
)
|
|
29
|
-
end,
|
|
30
|
-
AGENTLESS_TELEMETRY => Telemetry::API::Spec.new do |s|
|
|
31
|
-
s.telemetry = Telemetry::API::Endpoint.new(
|
|
32
|
-
'/api/v2/apmtelemetry',
|
|
33
|
-
Core::Encoding::JSONEncoder,
|
|
34
|
-
)
|
|
35
|
-
end,
|
|
36
|
-
]
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative '../../../transport/http/env'
|
|
4
|
-
require_relative '../../../transport/http/response'
|
|
5
|
-
|
|
6
|
-
# TODO: Decouple transport/http/client
|
|
7
|
-
#
|
|
8
|
-
# The standard one does `include Transport::HTTP::Statistics` and performs
|
|
9
|
-
# stats updates, which may or may not be desirable in general.
|
|
10
|
-
|
|
11
|
-
module Datadog
|
|
12
|
-
module Core
|
|
13
|
-
module Telemetry
|
|
14
|
-
module Transport
|
|
15
|
-
module HTTP
|
|
16
|
-
# Routes, encodes, and sends DI data to the trace agent via HTTP.
|
|
17
|
-
class Client
|
|
18
|
-
attr_reader :api, :logger
|
|
19
|
-
|
|
20
|
-
def initialize(api, logger:)
|
|
21
|
-
@api = api
|
|
22
|
-
@logger = logger
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
def send_request(request, &block)
|
|
26
|
-
# Build request into env
|
|
27
|
-
env = build_env(request)
|
|
28
|
-
|
|
29
|
-
# Get responses from API
|
|
30
|
-
yield(api, env)
|
|
31
|
-
rescue => e
|
|
32
|
-
message =
|
|
33
|
-
"Internal error during #{self.class.name} request. Cause: #{e.class.name} #{e.message} " \
|
|
34
|
-
"Location: #{Array(e.backtrace).first}"
|
|
35
|
-
|
|
36
|
-
logger.debug(message)
|
|
37
|
-
|
|
38
|
-
Datadog::Core::Transport::InternalErrorResponse.new(e)
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
def build_env(request)
|
|
42
|
-
Datadog::Core::Transport::HTTP::Env.new(request)
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
end
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Datadog
|
|
4
|
-
module Core
|
|
5
|
-
module Transport
|
|
6
|
-
module HTTP
|
|
7
|
-
module API
|
|
8
|
-
# Specification for an HTTP API
|
|
9
|
-
# Defines behaviors without specific configuration details.
|
|
10
|
-
class Spec
|
|
11
|
-
# Raised when an endpoint is invoked on an API that did not
|
|
12
|
-
# define that endpoint.
|
|
13
|
-
class EndpointNotDefinedError < StandardError
|
|
14
|
-
attr_reader :spec, :endpoint_name
|
|
15
|
-
|
|
16
|
-
def initialize(endpoint_name, spec)
|
|
17
|
-
@spec = spec
|
|
18
|
-
@endpoint_name = endpoint_name
|
|
19
|
-
|
|
20
|
-
super(message)
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
def message
|
|
24
|
-
"No #{endpoint_name} endpoint is defined for API specification!"
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
def initialize
|
|
29
|
-
yield(self) if block_given?
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
end
|