datadog 2.12.1 → 2.19.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 +243 -2
- data/ext/datadog_profiling_native_extension/collectors_cpu_and_wall_time_worker.c +63 -56
- data/ext/datadog_profiling_native_extension/collectors_stack.c +263 -76
- data/ext/datadog_profiling_native_extension/collectors_stack.h +20 -3
- data/ext/datadog_profiling_native_extension/collectors_thread_context.c +78 -26
- data/ext/datadog_profiling_native_extension/collectors_thread_context.h +1 -0
- data/ext/datadog_profiling_native_extension/datadog_ruby_common.c +1 -4
- data/ext/datadog_profiling_native_extension/datadog_ruby_common.h +10 -0
- data/ext/datadog_profiling_native_extension/encoded_profile.c +79 -0
- data/ext/datadog_profiling_native_extension/encoded_profile.h +8 -0
- data/ext/datadog_profiling_native_extension/extconf.rb +10 -0
- data/ext/datadog_profiling_native_extension/heap_recorder.c +247 -364
- data/ext/datadog_profiling_native_extension/heap_recorder.h +4 -6
- data/ext/datadog_profiling_native_extension/http_transport.c +60 -94
- data/ext/datadog_profiling_native_extension/libdatadog_helpers.c +22 -0
- data/ext/datadog_profiling_native_extension/libdatadog_helpers.h +8 -5
- data/ext/datadog_profiling_native_extension/private_vm_api_access.c +41 -21
- data/ext/datadog_profiling_native_extension/private_vm_api_access.h +6 -4
- data/ext/datadog_profiling_native_extension/profiling.c +2 -0
- data/ext/datadog_profiling_native_extension/ruby_helpers.c +1 -13
- data/ext/datadog_profiling_native_extension/ruby_helpers.h +3 -11
- data/ext/datadog_profiling_native_extension/stack_recorder.c +173 -76
- data/ext/libdatadog_api/crashtracker.c +11 -12
- data/ext/libdatadog_api/crashtracker.h +5 -0
- data/ext/libdatadog_api/datadog_ruby_common.c +1 -4
- data/ext/libdatadog_api/datadog_ruby_common.h +10 -0
- data/ext/libdatadog_api/extconf.rb +2 -2
- data/ext/libdatadog_api/init.c +15 -0
- data/ext/libdatadog_api/library_config.c +164 -0
- data/ext/libdatadog_api/library_config.h +25 -0
- data/ext/libdatadog_api/macos_development.md +3 -3
- data/ext/libdatadog_api/process_discovery.c +112 -0
- data/ext/libdatadog_api/process_discovery.h +5 -0
- data/ext/libdatadog_extconf_helpers.rb +2 -2
- data/lib/datadog/appsec/actions_handler/serializable_backtrace.rb +89 -0
- data/lib/datadog/appsec/actions_handler.rb +24 -2
- data/lib/datadog/appsec/anonymizer.rb +16 -0
- data/lib/datadog/appsec/api_security/lru_cache.rb +56 -0
- data/lib/datadog/appsec/api_security/route_extractor.rb +71 -0
- data/lib/datadog/appsec/api_security/sampler.rb +59 -0
- data/lib/datadog/appsec/api_security.rb +23 -0
- data/lib/datadog/appsec/assets/waf_rules/README.md +50 -5
- data/lib/datadog/appsec/assets/waf_rules/recommended.json +257 -85
- data/lib/datadog/appsec/assets/waf_rules/strict.json +10 -78
- data/lib/datadog/appsec/autoload.rb +1 -1
- data/lib/datadog/appsec/component.rb +46 -61
- data/lib/datadog/appsec/compressed_json.rb +40 -0
- data/lib/datadog/appsec/configuration/settings.rb +153 -30
- data/lib/datadog/appsec/context.rb +7 -7
- data/lib/datadog/appsec/contrib/active_record/instrumentation.rb +10 -12
- data/lib/datadog/appsec/contrib/active_record/integration.rb +2 -2
- data/lib/datadog/appsec/contrib/active_record/patcher.rb +22 -22
- data/lib/datadog/appsec/contrib/auto_instrument.rb +1 -1
- data/lib/datadog/appsec/contrib/devise/configuration.rb +7 -31
- data/lib/datadog/appsec/contrib/devise/data_extractor.rb +78 -0
- data/lib/datadog/appsec/contrib/devise/ext.rb +22 -0
- data/lib/datadog/appsec/contrib/devise/integration.rb +1 -2
- data/lib/datadog/appsec/contrib/devise/patcher.rb +34 -23
- data/lib/datadog/appsec/contrib/devise/patches/signin_tracking_patch.rb +102 -0
- data/lib/datadog/appsec/contrib/devise/patches/signup_tracking_patch.rb +69 -0
- data/lib/datadog/appsec/contrib/devise/{patcher/rememberable_patch.rb → patches/skip_signin_tracking_patch.rb} +2 -2
- data/lib/datadog/appsec/contrib/devise/tracking_middleware.rb +106 -0
- data/lib/datadog/appsec/contrib/excon/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/excon/ssrf_detection_middleware.rb +9 -10
- data/lib/datadog/appsec/contrib/faraday/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/faraday/ssrf_detection_middleware.rb +8 -9
- data/lib/datadog/appsec/contrib/graphql/gateway/watcher.rb +8 -9
- data/lib/datadog/appsec/contrib/graphql/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rack/ext.rb +34 -0
- data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +49 -32
- data/lib/datadog/appsec/contrib/rack/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rack/request_middleware.rb +42 -30
- data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +11 -13
- data/lib/datadog/appsec/contrib/rails/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rails/patcher.rb +21 -21
- data/lib/datadog/appsec/contrib/rest_client/integration.rb +1 -1
- data/lib/datadog/appsec/contrib/rest_client/request_ssrf_detection_patch.rb +10 -11
- data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +17 -23
- data/lib/datadog/appsec/contrib/sinatra/integration.rb +1 -1
- data/lib/datadog/appsec/event.rb +96 -135
- data/lib/datadog/appsec/ext.rb +4 -2
- data/lib/datadog/appsec/instrumentation/gateway/argument.rb +7 -2
- data/lib/datadog/appsec/instrumentation/gateway/middleware.rb +24 -0
- data/lib/datadog/appsec/instrumentation/gateway.rb +17 -22
- data/lib/datadog/appsec/metrics/telemetry.rb +1 -1
- data/lib/datadog/appsec/monitor/gateway/watcher.rb +49 -14
- data/lib/datadog/appsec/processor/rule_loader.rb +30 -33
- data/lib/datadog/appsec/remote.rb +31 -59
- data/lib/datadog/appsec/response.rb +6 -6
- data/lib/datadog/appsec/security_engine/engine.rb +194 -0
- data/lib/datadog/appsec/security_engine/runner.rb +13 -14
- data/lib/datadog/appsec/security_event.rb +39 -0
- data/lib/datadog/appsec/utils.rb +0 -2
- data/lib/datadog/appsec.rb +5 -8
- data/lib/datadog/core/buffer/random.rb +18 -2
- data/lib/datadog/core/configuration/agent_settings.rb +52 -0
- data/lib/datadog/core/configuration/agent_settings_resolver.rb +4 -46
- data/lib/datadog/core/configuration/agentless_settings_resolver.rb +176 -0
- data/lib/datadog/core/configuration/components.rb +48 -31
- data/lib/datadog/core/configuration/components_state.rb +23 -0
- data/lib/datadog/core/configuration/ext.rb +4 -0
- data/lib/datadog/core/configuration/option.rb +81 -45
- data/lib/datadog/core/configuration/option_definition.rb +4 -4
- data/lib/datadog/core/configuration/options.rb +3 -3
- data/lib/datadog/core/configuration/settings.rb +109 -44
- data/lib/datadog/core/configuration/stable_config.rb +22 -0
- data/lib/datadog/core/configuration.rb +40 -16
- data/lib/datadog/core/crashtracking/component.rb +3 -10
- data/lib/datadog/core/crashtracking/tag_builder.rb +4 -22
- data/lib/datadog/core/diagnostics/environment_logger.rb +1 -1
- data/lib/datadog/core/encoding.rb +1 -1
- data/lib/datadog/core/environment/agent_info.rb +4 -3
- 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/git.rb +1 -0
- data/lib/datadog/core/environment/identity.rb +3 -3
- data/lib/datadog/core/environment/platform.rb +3 -3
- data/lib/datadog/core/environment/variable_helpers.rb +1 -1
- data/lib/datadog/core/error.rb +11 -9
- data/lib/datadog/core/logger.rb +2 -2
- data/lib/datadog/core/metrics/client.rb +20 -21
- data/lib/datadog/core/metrics/logging.rb +5 -5
- data/lib/datadog/core/process_discovery/tracer_memfd.rb +15 -0
- data/lib/datadog/core/process_discovery.rb +36 -0
- data/lib/datadog/core/rate_limiter.rb +4 -2
- data/lib/datadog/core/remote/client.rb +40 -32
- data/lib/datadog/core/remote/component.rb +6 -9
- 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/configuration/repository.rb +14 -1
- data/lib/datadog/core/remote/negotiation.rb +9 -9
- data/lib/datadog/core/remote/transport/config.rb +4 -3
- data/lib/datadog/core/remote/transport/http/client.rb +5 -4
- data/lib/datadog/core/remote/transport/http/config.rb +27 -37
- data/lib/datadog/core/remote/transport/http/negotiation.rb +7 -33
- data/lib/datadog/core/remote/transport/http.rb +22 -57
- data/lib/datadog/core/remote/transport/negotiation.rb +4 -3
- data/lib/datadog/core/runtime/metrics.rb +12 -5
- data/lib/datadog/core/tag_builder.rb +56 -0
- data/lib/datadog/core/telemetry/component.rb +81 -52
- data/lib/datadog/core/telemetry/emitter.rb +23 -11
- data/lib/datadog/core/telemetry/event/app_client_configuration_change.rb +66 -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 +287 -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 -472
- data/lib/datadog/core/telemetry/http/adapters/net.rb +12 -97
- data/lib/datadog/core/telemetry/logger.rb +5 -4
- data/lib/datadog/core/telemetry/logging.rb +11 -5
- data/lib/datadog/core/telemetry/metric.rb +8 -8
- data/lib/datadog/core/telemetry/request.rb +4 -4
- data/lib/datadog/core/telemetry/transport/http/api.rb +43 -0
- data/lib/datadog/core/telemetry/transport/http/client.rb +49 -0
- data/lib/datadog/core/telemetry/transport/http/telemetry.rb +92 -0
- data/lib/datadog/core/telemetry/transport/http.rb +63 -0
- data/lib/datadog/core/telemetry/transport/telemetry.rb +51 -0
- data/lib/datadog/core/telemetry/worker.rb +90 -24
- data/lib/datadog/core/transport/http/adapters/net.rb +17 -2
- data/lib/datadog/core/transport/http/adapters/test.rb +2 -1
- data/lib/datadog/core/transport/http/api/instance.rb +17 -0
- data/lib/datadog/core/transport/http/api/spec.rb +17 -0
- data/lib/datadog/core/transport/http/builder.rb +19 -17
- data/lib/datadog/core/transport/http/env.rb +8 -0
- data/lib/datadog/core/transport/http.rb +39 -2
- 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 +20 -0
- data/lib/datadog/core/utils/truncation.rb +21 -0
- data/lib/datadog/core/utils.rb +7 -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 +29 -12
- data/lib/datadog/core/workers/interval_loop.rb +12 -1
- data/lib/datadog/core/workers/runtime_metrics.rb +2 -2
- data/lib/datadog/core.rb +8 -0
- data/lib/datadog/di/boot.rb +34 -0
- data/lib/datadog/di/component.rb +0 -2
- data/lib/datadog/di/instrumenter.rb +48 -5
- data/lib/datadog/di/probe_notification_builder.rb +38 -43
- data/lib/datadog/di/probe_notifier_worker.rb +25 -17
- data/lib/datadog/di/remote.rb +2 -0
- data/lib/datadog/di/serializer.rb +10 -2
- data/lib/datadog/di/transport/diagnostics.rb +4 -3
- data/lib/datadog/di/transport/http/api.rb +2 -12
- data/lib/datadog/di/transport/http/client.rb +4 -3
- data/lib/datadog/di/transport/http/diagnostics.rb +7 -34
- data/lib/datadog/di/transport/http/input.rb +18 -35
- data/lib/datadog/di/transport/http.rb +14 -62
- data/lib/datadog/di/transport/input.rb +14 -5
- data/lib/datadog/di/utils.rb +5 -0
- data/lib/datadog/di.rb +0 -33
- data/lib/datadog/error_tracking/collector.rb +87 -0
- data/lib/datadog/error_tracking/component.rb +167 -0
- data/lib/datadog/error_tracking/configuration/settings.rb +63 -0
- data/lib/datadog/error_tracking/configuration.rb +11 -0
- data/lib/datadog/error_tracking/ext.rb +18 -0
- data/lib/datadog/error_tracking/extensions.rb +16 -0
- data/lib/datadog/error_tracking/filters.rb +77 -0
- data/lib/datadog/error_tracking.rb +18 -0
- data/lib/datadog/kit/appsec/events/v2.rb +195 -0
- data/lib/datadog/kit/appsec/events.rb +12 -0
- data/lib/datadog/kit/identity.rb +5 -1
- data/lib/datadog/opentelemetry/api/baggage.rb +90 -0
- data/lib/datadog/opentelemetry/api/baggage.rbs +26 -0
- data/lib/datadog/opentelemetry/api/context.rb +16 -2
- data/lib/datadog/opentelemetry/sdk/trace/span.rb +1 -1
- data/lib/datadog/opentelemetry.rb +2 -1
- data/lib/datadog/profiling/collectors/code_provenance.rb +18 -9
- data/lib/datadog/profiling/collectors/cpu_and_wall_time_worker.rb +6 -0
- data/lib/datadog/profiling/collectors/idle_sampling_helper.rb +1 -0
- data/lib/datadog/profiling/collectors/info.rb +44 -0
- data/lib/datadog/profiling/collectors/thread_context.rb +17 -2
- data/lib/datadog/profiling/component.rb +8 -9
- data/lib/datadog/profiling/encoded_profile.rb +11 -0
- data/lib/datadog/profiling/exporter.rb +12 -7
- data/lib/datadog/profiling/ext.rb +0 -14
- data/lib/datadog/profiling/flush.rb +5 -8
- data/lib/datadog/profiling/http_transport.rb +7 -61
- data/lib/datadog/profiling/profiler.rb +2 -0
- data/lib/datadog/profiling/scheduler.rb +10 -2
- data/lib/datadog/profiling/sequence_tracker.rb +44 -0
- data/lib/datadog/profiling/stack_recorder.rb +9 -9
- data/lib/datadog/profiling/tag_builder.rb +7 -41
- data/lib/datadog/profiling/tasks/setup.rb +2 -0
- data/lib/datadog/profiling.rb +7 -2
- data/lib/datadog/single_step_instrument.rb +9 -0
- data/lib/datadog/tracing/analytics.rb +1 -1
- data/lib/datadog/tracing/component.rb +15 -12
- data/lib/datadog/tracing/configuration/ext.rb +7 -1
- data/lib/datadog/tracing/configuration/settings.rb +18 -2
- data/lib/datadog/tracing/context_provider.rb +1 -1
- data/lib/datadog/tracing/contrib/action_pack/action_controller/instrumentation.rb +15 -0
- data/lib/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rb +19 -12
- data/lib/datadog/tracing/contrib/action_pack/ext.rb +2 -0
- data/lib/datadog/tracing/contrib/active_record/integration.rb +1 -1
- data/lib/datadog/tracing/contrib/active_support/cache/events/cache.rb +11 -2
- 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/active_support/configuration/settings.rb +13 -0
- 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/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/ethon/easy_patch.rb +4 -5
- data/lib/datadog/tracing/contrib/excon/middleware.rb +5 -3
- data/lib/datadog/tracing/contrib/ext.rb +1 -0
- data/lib/datadog/tracing/contrib/faraday/middleware.rb +5 -3
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/client.rb +7 -1
- data/lib/datadog/tracing/contrib/grpc/distributed/propagation.rb +3 -0
- data/lib/datadog/tracing/contrib/http/circuit_breaker.rb +0 -15
- data/lib/datadog/tracing/contrib/http/distributed/propagation.rb +4 -1
- data/lib/datadog/tracing/contrib/http/instrumentation.rb +6 -10
- data/lib/datadog/tracing/contrib/httpclient/instrumentation.rb +6 -16
- data/lib/datadog/tracing/contrib/httprb/instrumentation.rb +7 -15
- data/lib/datadog/tracing/contrib/karafka/configuration/settings.rb +27 -0
- data/lib/datadog/tracing/contrib/karafka/distributed/propagation.rb +48 -0
- data/lib/datadog/tracing/contrib/karafka/ext.rb +27 -0
- data/lib/datadog/tracing/contrib/karafka/integration.rb +45 -0
- data/lib/datadog/tracing/contrib/karafka/monitor.rb +66 -0
- data/lib/datadog/tracing/contrib/karafka/patcher.rb +71 -0
- data/lib/datadog/tracing/contrib/karafka.rb +37 -0
- data/lib/datadog/tracing/contrib/lograge/patcher.rb +4 -2
- data/lib/datadog/tracing/contrib/mongodb/configuration/settings.rb +8 -0
- data/lib/datadog/tracing/contrib/mongodb/ext.rb +1 -0
- data/lib/datadog/tracing/contrib/mongodb/subscribers.rb +18 -1
- data/lib/datadog/tracing/contrib/mysql2/instrumentation.rb +16 -6
- data/lib/datadog/tracing/contrib/opensearch/configuration/settings.rb +17 -0
- data/lib/datadog/tracing/contrib/opensearch/ext.rb +9 -0
- data/lib/datadog/tracing/contrib/opensearch/patcher.rb +5 -1
- data/lib/datadog/tracing/contrib/patcher.rb +5 -2
- data/lib/datadog/tracing/contrib/rack/request_queue.rb +1 -1
- data/lib/datadog/tracing/contrib/rails/patcher.rb +4 -1
- data/lib/datadog/tracing/contrib/rails/runner.rb +61 -40
- data/lib/datadog/tracing/contrib/rest_client/request_patch.rb +5 -3
- data/lib/datadog/tracing/contrib/sidekiq/client_tracer.rb +6 -1
- data/lib/datadog/tracing/contrib/sidekiq/distributed/propagation.rb +3 -0
- data/lib/datadog/tracing/contrib/sidekiq/ext.rb +1 -0
- data/lib/datadog/tracing/contrib/sidekiq/server_tracer.rb +5 -2
- data/lib/datadog/tracing/contrib/support.rb +28 -0
- data/lib/datadog/tracing/contrib.rb +1 -0
- data/lib/datadog/tracing/correlation.rb +9 -2
- data/lib/datadog/tracing/diagnostics/environment_logger.rb +3 -1
- data/lib/datadog/tracing/distributed/b3_multi.rb +1 -1
- data/lib/datadog/tracing/distributed/b3_single.rb +1 -1
- data/lib/datadog/tracing/distributed/baggage.rb +131 -0
- data/lib/datadog/tracing/distributed/datadog.rb +4 -2
- data/lib/datadog/tracing/distributed/propagation.rb +25 -4
- data/lib/datadog/tracing/distributed/propagation_policy.rb +42 -0
- data/lib/datadog/tracing/metadata/errors.rb +4 -4
- data/lib/datadog/tracing/metadata/ext.rb +5 -0
- data/lib/datadog/tracing/metadata/metastruct.rb +36 -0
- data/lib/datadog/tracing/metadata/metastruct_tagging.rb +42 -0
- data/lib/datadog/tracing/metadata.rb +2 -0
- data/lib/datadog/tracing/sampling/rate_sampler.rb +2 -1
- data/lib/datadog/tracing/sampling/span/rule.rb +0 -1
- data/lib/datadog/tracing/span.rb +10 -1
- data/lib/datadog/tracing/span_event.rb +2 -2
- data/lib/datadog/tracing/span_operation.rb +68 -16
- data/lib/datadog/tracing/sync_writer.rb +2 -3
- data/lib/datadog/tracing/trace_digest.rb +9 -2
- data/lib/datadog/tracing/trace_operation.rb +55 -27
- data/lib/datadog/tracing/trace_segment.rb +6 -4
- data/lib/datadog/tracing/tracer.rb +51 -7
- data/lib/datadog/tracing/transport/http/api.rb +2 -10
- data/lib/datadog/tracing/transport/http/client.rb +5 -4
- data/lib/datadog/tracing/transport/http/traces.rb +13 -41
- data/lib/datadog/tracing/transport/http.rb +11 -44
- data/lib/datadog/tracing/transport/serializable_trace.rb +3 -1
- data/lib/datadog/tracing/transport/trace_formatter.rb +7 -0
- data/lib/datadog/tracing/transport/traces.rb +26 -9
- data/lib/datadog/tracing/utils.rb +1 -1
- data/lib/datadog/tracing/workers/trace_writer.rb +2 -6
- data/lib/datadog/tracing/writer.rb +2 -6
- data/lib/datadog/tracing.rb +16 -3
- data/lib/datadog/version.rb +2 -2
- data/lib/datadog.rb +8 -2
- metadata +88 -23
- data/lib/datadog/appsec/assets/waf_rules/processors.json +0 -92
- data/lib/datadog/appsec/assets/waf_rules/scanners.json +0 -114
- data/lib/datadog/appsec/contrib/devise/event.rb +0 -54
- data/lib/datadog/appsec/contrib/devise/patcher/authenticatable_patch.rb +0 -72
- data/lib/datadog/appsec/contrib/devise/patcher/registration_controller_patch.rb +0 -47
- data/lib/datadog/appsec/contrib/devise/resource.rb +0 -35
- data/lib/datadog/appsec/contrib/devise/tracking.rb +0 -57
- data/lib/datadog/appsec/processor/rule_merger.rb +0 -170
- data/lib/datadog/appsec/processor.rb +0 -107
- data/lib/datadog/appsec/utils/trace_operation.rb +0 -15
- data/lib/datadog/core/telemetry/http/env.rb +0 -20
- data/lib/datadog/core/telemetry/http/ext.rb +0 -28
- data/lib/datadog/core/telemetry/http/response.rb +0 -70
- data/lib/datadog/core/telemetry/http/transport.rb +0 -90
@@ -43,15 +43,17 @@ module Datadog
|
|
43
43
|
# We set the value to a conservative 5 MiB, in case network speed is slow.
|
44
44
|
DEFAULT_MAX_PAYLOAD_SIZE = 5 * 1024 * 1024
|
45
45
|
|
46
|
-
attr_reader :encoder, :max_size
|
46
|
+
attr_reader :encoder, :max_size, :logger
|
47
47
|
|
48
48
|
#
|
49
49
|
# Single traces larger than +max_size+ will be discarded.
|
50
50
|
#
|
51
51
|
# @param encoder [Datadog::Core::Encoding::Encoder]
|
52
|
+
# @param logger [Datadog::Core::Logger]
|
52
53
|
# @param max_size [String] maximum acceptable payload size
|
53
|
-
def initialize(encoder, native_events_supported:, max_size: DEFAULT_MAX_PAYLOAD_SIZE)
|
54
|
+
def initialize(encoder, logger:, native_events_supported:, max_size: DEFAULT_MAX_PAYLOAD_SIZE)
|
54
55
|
@encoder = encoder
|
56
|
+
@logger = logger
|
55
57
|
@native_events_supported = native_events_supported
|
56
58
|
@max_size = max_size
|
57
59
|
end
|
@@ -78,11 +80,16 @@ module Datadog
|
|
78
80
|
private
|
79
81
|
|
80
82
|
def encode_one(trace)
|
81
|
-
encoded = Encoder.encode_trace(
|
83
|
+
encoded = Encoder.encode_trace(
|
84
|
+
encoder,
|
85
|
+
trace,
|
86
|
+
logger: logger,
|
87
|
+
native_events_supported: @native_events_supported
|
88
|
+
)
|
82
89
|
|
83
90
|
if encoded.size > max_size
|
84
91
|
# This single trace is too large, we can't flush it
|
85
|
-
|
92
|
+
logger.debug { "Dropping trace. Payload too large: '#{trace.inspect}'" }
|
86
93
|
Datadog.health_metrics.transport_trace_too_large(1)
|
87
94
|
|
88
95
|
return nil
|
@@ -96,7 +103,7 @@ module Datadog
|
|
96
103
|
module Encoder
|
97
104
|
module_function
|
98
105
|
|
99
|
-
def encode_trace(encoder, trace, native_events_supported:)
|
106
|
+
def encode_trace(encoder, trace, logger:, native_events_supported:)
|
100
107
|
# Format the trace for transport
|
101
108
|
TraceFormatter.format!(trace)
|
102
109
|
|
@@ -106,7 +113,7 @@ module Datadog
|
|
106
113
|
# Encode the trace
|
107
114
|
encoder.encode(serializable_trace).tap do |encoded|
|
108
115
|
# Print the actual serialized trace, since the encoder can change make non-trivial changes
|
109
|
-
|
116
|
+
logger.debug { "Flushing trace: #{encoder.decode(encoded)}" }
|
110
117
|
end
|
111
118
|
end
|
112
119
|
end
|
@@ -117,11 +124,12 @@ module Datadog
|
|
117
124
|
# batches of traces into smaller chunks and handles
|
118
125
|
# API version downgrade handshake.
|
119
126
|
class Transport
|
120
|
-
attr_reader :client, :apis, :default_api, :current_api_id
|
127
|
+
attr_reader :client, :apis, :default_api, :current_api_id, :logger
|
121
128
|
|
122
|
-
def initialize(apis, default_api)
|
129
|
+
def initialize(apis, default_api, logger: Datadog.logger)
|
123
130
|
@apis = apis
|
124
131
|
@default_api = default_api
|
132
|
+
@logger = logger
|
125
133
|
|
126
134
|
change_api!(default_api)
|
127
135
|
end
|
@@ -130,6 +138,7 @@ module Datadog
|
|
130
138
|
encoder = current_api.encoder
|
131
139
|
chunker = Datadog::Tracing::Transport::Traces::Chunker.new(
|
132
140
|
encoder,
|
141
|
+
logger: logger,
|
133
142
|
native_events_supported: native_events_supported?
|
134
143
|
)
|
135
144
|
|
@@ -190,7 +199,7 @@ module Datadog
|
|
190
199
|
raise UnknownApiVersionError, api_id unless apis.key?(api_id)
|
191
200
|
|
192
201
|
@current_api_id = api_id
|
193
|
-
@client = HTTP::Client.new(current_api)
|
202
|
+
@client = HTTP::Client.new(current_api, logger: logger)
|
194
203
|
end
|
195
204
|
|
196
205
|
# Queries the agent for native span events serialization support.
|
@@ -198,6 +207,14 @@ module Datadog
|
|
198
207
|
def native_events_supported?
|
199
208
|
return @native_events_supported if defined?(@native_events_supported)
|
200
209
|
|
210
|
+
# Check for an explicit override
|
211
|
+
option = Datadog.configuration.tracing.native_span_events
|
212
|
+
unless option.nil?
|
213
|
+
@native_events_supported = option
|
214
|
+
return option
|
215
|
+
end
|
216
|
+
|
217
|
+
# Otherwise, check for agent support, to ensure a configuration-less setup.
|
201
218
|
if (res = Datadog.send(:components).agent_info.fetch)
|
202
219
|
@native_events_supported = res.span_events == true
|
203
220
|
else
|
@@ -24,7 +24,7 @@ module Datadog
|
|
24
24
|
|
25
25
|
# While we only generate 63-bit integers due to limitations in other languages, we support
|
26
26
|
# parsing 64-bit integers for distributed tracing since an upstream system may generate one
|
27
|
-
EXTERNAL_MAX_ID = 1 << 64
|
27
|
+
EXTERNAL_MAX_ID = (1 << 64) - 1
|
28
28
|
|
29
29
|
# We use a custom random number generator because we want no interference
|
30
30
|
# with the default one. Using the default prng, we could break code that
|
@@ -26,14 +26,10 @@ module Datadog
|
|
26
26
|
@logger = options[:logger] || Datadog.logger
|
27
27
|
|
28
28
|
transport_options = options.fetch(:transport_options, {})
|
29
|
-
|
30
|
-
if options.key?(:agent_settings)
|
31
|
-
@agent_settings = options[:agent_settings]
|
32
|
-
transport_options = transport_options.merge(agent_settings: @agent_settings)
|
33
|
-
end
|
29
|
+
@agent_settings = options[:agent_settings]
|
34
30
|
|
35
31
|
@transport = options.fetch(:transport) do
|
36
|
-
Datadog::Tracing::Transport::HTTP.default(**transport_options)
|
32
|
+
Datadog::Tracing::Transport::HTTP.default(agent_settings: agent_settings, logger: logger, **transport_options)
|
37
33
|
end
|
38
34
|
end
|
39
35
|
# rubocop:enable Lint/MissingSuper
|
@@ -26,15 +26,11 @@ module Datadog
|
|
26
26
|
@buff_size = options.fetch(:buffer_size, Workers::AsyncTransport::DEFAULT_BUFFER_MAX_SIZE)
|
27
27
|
@flush_interval = options.fetch(:flush_interval, Workers::AsyncTransport::DEFAULT_FLUSH_INTERVAL)
|
28
28
|
transport_options = options.fetch(:transport_options, {})
|
29
|
-
|
30
|
-
if options.key?(:agent_settings)
|
31
|
-
@agent_settings = options[:agent_settings]
|
32
|
-
transport_options = transport_options.merge(agent_settings: @agent_settings)
|
33
|
-
end
|
29
|
+
@agent_settings = options[:agent_settings]
|
34
30
|
|
35
31
|
# transport and buffers
|
36
32
|
@transport = options.fetch(:transport) do
|
37
|
-
Transport::HTTP.default(**transport_options)
|
33
|
+
Transport::HTTP.default(agent_settings: agent_settings, logger: logger, **transport_options)
|
38
34
|
end
|
39
35
|
|
40
36
|
@shutdown_timeout = options.fetch(:shutdown_timeout, Workers::AsyncTransport::DEFAULT_SHUTDOWN_TIMEOUT)
|
data/lib/datadog/tracing.rb
CHANGED
@@ -26,7 +26,6 @@ module Datadog
|
|
26
26
|
id: nil,
|
27
27
|
&block
|
28
28
|
)
|
29
|
-
|
30
29
|
tracer.trace(
|
31
30
|
name,
|
32
31
|
continue_from: continue_from,
|
@@ -82,7 +81,7 @@ module Datadog
|
|
82
81
|
# @public_api
|
83
82
|
def keep!
|
84
83
|
trace = active_trace
|
85
|
-
|
84
|
+
trace.keep! if trace
|
86
85
|
end
|
87
86
|
|
88
87
|
# (see Datadog::Tracing::TraceSegment#reject!)
|
@@ -90,7 +89,7 @@ module Datadog
|
|
90
89
|
# @public_api
|
91
90
|
def reject!
|
92
91
|
trace = active_trace
|
93
|
-
|
92
|
+
trace.reject! if trace
|
94
93
|
end
|
95
94
|
|
96
95
|
# (see Datadog::Tracing::Tracer#active_correlation)
|
@@ -127,6 +126,20 @@ module Datadog
|
|
127
126
|
correlation.to_log_format
|
128
127
|
end
|
129
128
|
|
129
|
+
# Returns the baggage for the current trace.
|
130
|
+
#
|
131
|
+
# If there is no active trace, a new one is created.
|
132
|
+
#
|
133
|
+
# @return [Datadog::Tracing::Distributed::Baggage] The baggage for the current trace.
|
134
|
+
# @public_api
|
135
|
+
def baggage
|
136
|
+
# Baggage should not be dependent on there being an active trace.
|
137
|
+
# So we create a new TraceOperation if there isn't one.
|
138
|
+
active_trace = self.active_trace || tracer.continue_trace!(nil)
|
139
|
+
active_trace.baggage ||= {}
|
140
|
+
active_trace.baggage
|
141
|
+
end
|
142
|
+
|
130
143
|
# Gracefully shuts down the tracer.
|
131
144
|
#
|
132
145
|
# The public tracing API will still respond to method calls as usual
|
data/lib/datadog/version.rb
CHANGED
data/lib/datadog.rb
CHANGED
@@ -7,7 +7,13 @@ require_relative 'datadog/tracing/contrib'
|
|
7
7
|
# Load other products (must follow tracing)
|
8
8
|
require_relative 'datadog/profiling'
|
9
9
|
require_relative 'datadog/appsec'
|
10
|
+
require_relative 'datadog/di'
|
11
|
+
|
10
12
|
# Line probes will not work on Ruby < 2.6 because of lack of :script_compiled
|
11
|
-
# trace point.
|
12
|
-
|
13
|
+
# trace point. Activate DI automatically on supported Ruby versions but
|
14
|
+
# always load its settings so that, for example, turning DI off when
|
15
|
+
# we are on Ruby 2.5 does not produce exceptions.
|
16
|
+
require_relative 'datadog/di/boot' if RUBY_VERSION >= '2.6' && RUBY_ENGINE != 'jruby'
|
17
|
+
|
18
|
+
require_relative 'datadog/error_tracking'
|
13
19
|
require_relative 'datadog/kit'
|
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.19.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-07-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: msgpack
|
@@ -31,6 +31,9 @@ dependencies:
|
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '3.4'
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: 3.4.1
|
34
37
|
type: :runtime
|
35
38
|
prerelease: false
|
36
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -38,34 +41,37 @@ dependencies:
|
|
38
41
|
- - "~>"
|
39
42
|
- !ruby/object:Gem::Version
|
40
43
|
version: '3.4'
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 3.4.1
|
41
47
|
- !ruby/object:Gem::Dependency
|
42
48
|
name: libddwaf
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
44
50
|
requirements:
|
45
51
|
- - "~>"
|
46
52
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1.
|
53
|
+
version: 1.24.1.0.3
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
51
57
|
requirements:
|
52
58
|
- - "~>"
|
53
59
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.
|
60
|
+
version: 1.24.1.0.3
|
55
61
|
- !ruby/object:Gem::Dependency
|
56
62
|
name: libdatadog
|
57
63
|
requirement: !ruby/object:Gem::Requirement
|
58
64
|
requirements:
|
59
65
|
- - "~>"
|
60
66
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
67
|
+
version: 18.1.0.1.0
|
62
68
|
type: :runtime
|
63
69
|
prerelease: false
|
64
70
|
version_requirements: !ruby/object:Gem::Requirement
|
65
71
|
requirements:
|
66
72
|
- - "~>"
|
67
73
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
74
|
+
version: 18.1.0.1.0
|
69
75
|
- !ruby/object:Gem::Dependency
|
70
76
|
name: logger
|
71
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -120,6 +126,8 @@ files:
|
|
120
126
|
- ext/datadog_profiling_native_extension/collectors_thread_context.h
|
121
127
|
- ext/datadog_profiling_native_extension/datadog_ruby_common.c
|
122
128
|
- ext/datadog_profiling_native_extension/datadog_ruby_common.h
|
129
|
+
- ext/datadog_profiling_native_extension/encoded_profile.c
|
130
|
+
- ext/datadog_profiling_native_extension/encoded_profile.h
|
123
131
|
- ext/datadog_profiling_native_extension/extconf.rb
|
124
132
|
- ext/datadog_profiling_native_extension/gvl_profiling_helper.c
|
125
133
|
- ext/datadog_profiling_native_extension/gvl_profiling_helper.h
|
@@ -144,25 +152,36 @@ files:
|
|
144
152
|
- ext/datadog_profiling_native_extension/unsafe_api_calls_check.c
|
145
153
|
- ext/datadog_profiling_native_extension/unsafe_api_calls_check.h
|
146
154
|
- ext/libdatadog_api/crashtracker.c
|
155
|
+
- ext/libdatadog_api/crashtracker.h
|
147
156
|
- ext/libdatadog_api/datadog_ruby_common.c
|
148
157
|
- ext/libdatadog_api/datadog_ruby_common.h
|
149
158
|
- ext/libdatadog_api/extconf.rb
|
159
|
+
- ext/libdatadog_api/init.c
|
160
|
+
- ext/libdatadog_api/library_config.c
|
161
|
+
- ext/libdatadog_api/library_config.h
|
150
162
|
- ext/libdatadog_api/macos_development.md
|
163
|
+
- ext/libdatadog_api/process_discovery.c
|
164
|
+
- ext/libdatadog_api/process_discovery.h
|
151
165
|
- ext/libdatadog_extconf_helpers.rb
|
152
166
|
- lib/datadog.rb
|
153
167
|
- lib/datadog/appsec.rb
|
154
168
|
- lib/datadog/appsec/actions_handler.rb
|
169
|
+
- lib/datadog/appsec/actions_handler/serializable_backtrace.rb
|
170
|
+
- lib/datadog/appsec/anonymizer.rb
|
171
|
+
- lib/datadog/appsec/api_security.rb
|
172
|
+
- lib/datadog/appsec/api_security/lru_cache.rb
|
173
|
+
- lib/datadog/appsec/api_security/route_extractor.rb
|
174
|
+
- lib/datadog/appsec/api_security/sampler.rb
|
155
175
|
- lib/datadog/appsec/assets.rb
|
156
176
|
- lib/datadog/appsec/assets/blocked.html
|
157
177
|
- lib/datadog/appsec/assets/blocked.json
|
158
178
|
- lib/datadog/appsec/assets/blocked.text
|
159
179
|
- lib/datadog/appsec/assets/waf_rules/README.md
|
160
|
-
- lib/datadog/appsec/assets/waf_rules/processors.json
|
161
180
|
- lib/datadog/appsec/assets/waf_rules/recommended.json
|
162
|
-
- lib/datadog/appsec/assets/waf_rules/scanners.json
|
163
181
|
- lib/datadog/appsec/assets/waf_rules/strict.json
|
164
182
|
- lib/datadog/appsec/autoload.rb
|
165
183
|
- lib/datadog/appsec/component.rb
|
184
|
+
- lib/datadog/appsec/compressed_json.rb
|
166
185
|
- lib/datadog/appsec/configuration.rb
|
167
186
|
- lib/datadog/appsec/configuration/settings.rb
|
168
187
|
- lib/datadog/appsec/context.rb
|
@@ -171,15 +190,14 @@ files:
|
|
171
190
|
- lib/datadog/appsec/contrib/active_record/patcher.rb
|
172
191
|
- lib/datadog/appsec/contrib/auto_instrument.rb
|
173
192
|
- lib/datadog/appsec/contrib/devise/configuration.rb
|
174
|
-
- lib/datadog/appsec/contrib/devise/
|
193
|
+
- lib/datadog/appsec/contrib/devise/data_extractor.rb
|
175
194
|
- lib/datadog/appsec/contrib/devise/ext.rb
|
176
195
|
- lib/datadog/appsec/contrib/devise/integration.rb
|
177
196
|
- lib/datadog/appsec/contrib/devise/patcher.rb
|
178
|
-
- lib/datadog/appsec/contrib/devise/
|
179
|
-
- lib/datadog/appsec/contrib/devise/
|
180
|
-
- lib/datadog/appsec/contrib/devise/
|
181
|
-
- lib/datadog/appsec/contrib/devise/
|
182
|
-
- lib/datadog/appsec/contrib/devise/tracking.rb
|
197
|
+
- lib/datadog/appsec/contrib/devise/patches/signin_tracking_patch.rb
|
198
|
+
- lib/datadog/appsec/contrib/devise/patches/signup_tracking_patch.rb
|
199
|
+
- lib/datadog/appsec/contrib/devise/patches/skip_signin_tracking_patch.rb
|
200
|
+
- lib/datadog/appsec/contrib/devise/tracking_middleware.rb
|
183
201
|
- lib/datadog/appsec/contrib/excon/integration.rb
|
184
202
|
- lib/datadog/appsec/contrib/excon/patcher.rb
|
185
203
|
- lib/datadog/appsec/contrib/excon/ssrf_detection_middleware.rb
|
@@ -226,27 +244,27 @@ files:
|
|
226
244
|
- lib/datadog/appsec/instrumentation.rb
|
227
245
|
- lib/datadog/appsec/instrumentation/gateway.rb
|
228
246
|
- lib/datadog/appsec/instrumentation/gateway/argument.rb
|
247
|
+
- lib/datadog/appsec/instrumentation/gateway/middleware.rb
|
229
248
|
- lib/datadog/appsec/metrics.rb
|
230
249
|
- lib/datadog/appsec/metrics/collector.rb
|
231
250
|
- lib/datadog/appsec/metrics/exporter.rb
|
232
251
|
- lib/datadog/appsec/metrics/telemetry.rb
|
233
252
|
- lib/datadog/appsec/monitor.rb
|
234
253
|
- lib/datadog/appsec/monitor/gateway/watcher.rb
|
235
|
-
- lib/datadog/appsec/processor.rb
|
236
254
|
- lib/datadog/appsec/processor/rule_loader.rb
|
237
|
-
- lib/datadog/appsec/processor/rule_merger.rb
|
238
255
|
- lib/datadog/appsec/rate_limiter.rb
|
239
256
|
- lib/datadog/appsec/remote.rb
|
240
257
|
- lib/datadog/appsec/response.rb
|
241
258
|
- lib/datadog/appsec/sample_rate.rb
|
242
259
|
- lib/datadog/appsec/security_engine.rb
|
260
|
+
- lib/datadog/appsec/security_engine/engine.rb
|
243
261
|
- lib/datadog/appsec/security_engine/result.rb
|
244
262
|
- lib/datadog/appsec/security_engine/runner.rb
|
263
|
+
- lib/datadog/appsec/security_event.rb
|
245
264
|
- lib/datadog/appsec/utils.rb
|
246
265
|
- lib/datadog/appsec/utils/http.rb
|
247
266
|
- lib/datadog/appsec/utils/http/media_range.rb
|
248
267
|
- lib/datadog/appsec/utils/http/media_type.rb
|
249
|
-
- lib/datadog/appsec/utils/trace_operation.rb
|
250
268
|
- lib/datadog/auto_instrument.rb
|
251
269
|
- lib/datadog/auto_instrument_base.rb
|
252
270
|
- lib/datadog/core.rb
|
@@ -255,14 +273,18 @@ files:
|
|
255
273
|
- lib/datadog/core/buffer/thread_safe.rb
|
256
274
|
- lib/datadog/core/chunker.rb
|
257
275
|
- lib/datadog/core/configuration.rb
|
276
|
+
- lib/datadog/core/configuration/agent_settings.rb
|
258
277
|
- lib/datadog/core/configuration/agent_settings_resolver.rb
|
278
|
+
- lib/datadog/core/configuration/agentless_settings_resolver.rb
|
259
279
|
- lib/datadog/core/configuration/base.rb
|
260
280
|
- lib/datadog/core/configuration/components.rb
|
281
|
+
- lib/datadog/core/configuration/components_state.rb
|
261
282
|
- lib/datadog/core/configuration/ext.rb
|
262
283
|
- lib/datadog/core/configuration/option.rb
|
263
284
|
- lib/datadog/core/configuration/option_definition.rb
|
264
285
|
- lib/datadog/core/configuration/options.rb
|
265
286
|
- lib/datadog/core/configuration/settings.rb
|
287
|
+
- lib/datadog/core/configuration/stable_config.rb
|
266
288
|
- lib/datadog/core/contrib/rails/utils.rb
|
267
289
|
- lib/datadog/core/crashtracking/component.rb
|
268
290
|
- lib/datadog/core/crashtracking/tag_builder.rb
|
@@ -298,6 +320,8 @@ files:
|
|
298
320
|
- lib/datadog/core/metrics/metric.rb
|
299
321
|
- lib/datadog/core/metrics/options.rb
|
300
322
|
- lib/datadog/core/pin.rb
|
323
|
+
- lib/datadog/core/process_discovery.rb
|
324
|
+
- lib/datadog/core/process_discovery/tracer_memfd.rb
|
301
325
|
- lib/datadog/core/rate_limiter.rb
|
302
326
|
- lib/datadog/core/remote.rb
|
303
327
|
- lib/datadog/core/remote/client.rb
|
@@ -325,21 +349,35 @@ files:
|
|
325
349
|
- lib/datadog/core/runtime/ext.rb
|
326
350
|
- lib/datadog/core/runtime/metrics.rb
|
327
351
|
- lib/datadog/core/semaphore.rb
|
352
|
+
- lib/datadog/core/tag_builder.rb
|
328
353
|
- lib/datadog/core/telemetry/component.rb
|
329
354
|
- lib/datadog/core/telemetry/emitter.rb
|
330
355
|
- lib/datadog/core/telemetry/event.rb
|
356
|
+
- lib/datadog/core/telemetry/event/app_client_configuration_change.rb
|
357
|
+
- lib/datadog/core/telemetry/event/app_closing.rb
|
358
|
+
- lib/datadog/core/telemetry/event/app_dependencies_loaded.rb
|
359
|
+
- lib/datadog/core/telemetry/event/app_heartbeat.rb
|
360
|
+
- lib/datadog/core/telemetry/event/app_integrations_change.rb
|
361
|
+
- lib/datadog/core/telemetry/event/app_started.rb
|
362
|
+
- lib/datadog/core/telemetry/event/base.rb
|
363
|
+
- lib/datadog/core/telemetry/event/distributions.rb
|
364
|
+
- lib/datadog/core/telemetry/event/generate_metrics.rb
|
365
|
+
- lib/datadog/core/telemetry/event/log.rb
|
366
|
+
- lib/datadog/core/telemetry/event/message_batch.rb
|
367
|
+
- lib/datadog/core/telemetry/event/synth_app_client_configuration_change.rb
|
331
368
|
- lib/datadog/core/telemetry/ext.rb
|
332
369
|
- lib/datadog/core/telemetry/http/adapters/net.rb
|
333
|
-
- lib/datadog/core/telemetry/http/env.rb
|
334
|
-
- lib/datadog/core/telemetry/http/ext.rb
|
335
|
-
- lib/datadog/core/telemetry/http/response.rb
|
336
|
-
- lib/datadog/core/telemetry/http/transport.rb
|
337
370
|
- lib/datadog/core/telemetry/logger.rb
|
338
371
|
- lib/datadog/core/telemetry/logging.rb
|
339
372
|
- lib/datadog/core/telemetry/metric.rb
|
340
373
|
- lib/datadog/core/telemetry/metrics_collection.rb
|
341
374
|
- lib/datadog/core/telemetry/metrics_manager.rb
|
342
375
|
- lib/datadog/core/telemetry/request.rb
|
376
|
+
- lib/datadog/core/telemetry/transport/http.rb
|
377
|
+
- lib/datadog/core/telemetry/transport/http/api.rb
|
378
|
+
- lib/datadog/core/telemetry/transport/http/client.rb
|
379
|
+
- lib/datadog/core/telemetry/transport/http/telemetry.rb
|
380
|
+
- lib/datadog/core/telemetry/transport/telemetry.rb
|
343
381
|
- lib/datadog/core/telemetry/worker.rb
|
344
382
|
- lib/datadog/core/transport/ext.rb
|
345
383
|
- lib/datadog/core/transport/http.rb
|
@@ -370,6 +408,7 @@ files:
|
|
370
408
|
- lib/datadog/core/utils/safe_dup.rb
|
371
409
|
- lib/datadog/core/utils/sequence.rb
|
372
410
|
- lib/datadog/core/utils/time.rb
|
411
|
+
- lib/datadog/core/utils/truncation.rb
|
373
412
|
- lib/datadog/core/utils/url.rb
|
374
413
|
- lib/datadog/core/vendor/multipart-post/LICENSE
|
375
414
|
- lib/datadog/core/vendor/multipart-post/multipart.rb
|
@@ -387,6 +426,7 @@ files:
|
|
387
426
|
- lib/datadog/core/workers/runtime_metrics.rb
|
388
427
|
- lib/datadog/di.rb
|
389
428
|
- lib/datadog/di/base.rb
|
429
|
+
- lib/datadog/di/boot.rb
|
390
430
|
- lib/datadog/di/code_tracker.rb
|
391
431
|
- lib/datadog/di/component.rb
|
392
432
|
- lib/datadog/di/configuration.rb
|
@@ -415,11 +455,22 @@ files:
|
|
415
455
|
- lib/datadog/di/transport/http/input.rb
|
416
456
|
- lib/datadog/di/transport/input.rb
|
417
457
|
- lib/datadog/di/utils.rb
|
458
|
+
- lib/datadog/error_tracking.rb
|
459
|
+
- lib/datadog/error_tracking/collector.rb
|
460
|
+
- lib/datadog/error_tracking/component.rb
|
461
|
+
- lib/datadog/error_tracking/configuration.rb
|
462
|
+
- lib/datadog/error_tracking/configuration/settings.rb
|
463
|
+
- lib/datadog/error_tracking/ext.rb
|
464
|
+
- lib/datadog/error_tracking/extensions.rb
|
465
|
+
- lib/datadog/error_tracking/filters.rb
|
418
466
|
- lib/datadog/kit.rb
|
419
467
|
- lib/datadog/kit/appsec/events.rb
|
468
|
+
- lib/datadog/kit/appsec/events/v2.rb
|
420
469
|
- lib/datadog/kit/enable_core_dumps.rb
|
421
470
|
- lib/datadog/kit/identity.rb
|
422
471
|
- lib/datadog/opentelemetry.rb
|
472
|
+
- lib/datadog/opentelemetry/api/baggage.rb
|
473
|
+
- lib/datadog/opentelemetry/api/baggage.rbs
|
423
474
|
- lib/datadog/opentelemetry/api/context.rb
|
424
475
|
- lib/datadog/opentelemetry/api/trace/span.rb
|
425
476
|
- lib/datadog/opentelemetry/sdk/configurator.rb
|
@@ -437,6 +488,7 @@ files:
|
|
437
488
|
- lib/datadog/profiling/collectors/stack.rb
|
438
489
|
- lib/datadog/profiling/collectors/thread_context.rb
|
439
490
|
- lib/datadog/profiling/component.rb
|
491
|
+
- lib/datadog/profiling/encoded_profile.rb
|
440
492
|
- lib/datadog/profiling/exporter.rb
|
441
493
|
- lib/datadog/profiling/ext.rb
|
442
494
|
- lib/datadog/profiling/ext/dir_monkey_patches.rb
|
@@ -447,6 +499,7 @@ files:
|
|
447
499
|
- lib/datadog/profiling/preload.rb
|
448
500
|
- lib/datadog/profiling/profiler.rb
|
449
501
|
- lib/datadog/profiling/scheduler.rb
|
502
|
+
- lib/datadog/profiling/sequence_tracker.rb
|
450
503
|
- lib/datadog/profiling/stack_recorder.rb
|
451
504
|
- lib/datadog/profiling/tag_builder.rb
|
452
505
|
- lib/datadog/profiling/tasks/exec.rb
|
@@ -687,6 +740,13 @@ files:
|
|
687
740
|
- lib/datadog/tracing/contrib/kafka/ext.rb
|
688
741
|
- lib/datadog/tracing/contrib/kafka/integration.rb
|
689
742
|
- lib/datadog/tracing/contrib/kafka/patcher.rb
|
743
|
+
- lib/datadog/tracing/contrib/karafka.rb
|
744
|
+
- lib/datadog/tracing/contrib/karafka/configuration/settings.rb
|
745
|
+
- lib/datadog/tracing/contrib/karafka/distributed/propagation.rb
|
746
|
+
- lib/datadog/tracing/contrib/karafka/ext.rb
|
747
|
+
- lib/datadog/tracing/contrib/karafka/integration.rb
|
748
|
+
- lib/datadog/tracing/contrib/karafka/monitor.rb
|
749
|
+
- lib/datadog/tracing/contrib/karafka/patcher.rb
|
690
750
|
- lib/datadog/tracing/contrib/lograge/configuration/settings.rb
|
691
751
|
- lib/datadog/tracing/contrib/lograge/ext.rb
|
692
752
|
- lib/datadog/tracing/contrib/lograge/instrumentation.rb
|
@@ -849,6 +909,7 @@ files:
|
|
849
909
|
- lib/datadog/tracing/contrib/sucker_punch/instrumentation.rb
|
850
910
|
- lib/datadog/tracing/contrib/sucker_punch/integration.rb
|
851
911
|
- lib/datadog/tracing/contrib/sucker_punch/patcher.rb
|
912
|
+
- lib/datadog/tracing/contrib/support.rb
|
852
913
|
- lib/datadog/tracing/contrib/trilogy/configuration/settings.rb
|
853
914
|
- lib/datadog/tracing/contrib/trilogy/ext.rb
|
854
915
|
- lib/datadog/tracing/contrib/trilogy/instrumentation.rb
|
@@ -863,12 +924,14 @@ files:
|
|
863
924
|
- lib/datadog/tracing/diagnostics/health.rb
|
864
925
|
- lib/datadog/tracing/distributed/b3_multi.rb
|
865
926
|
- lib/datadog/tracing/distributed/b3_single.rb
|
927
|
+
- lib/datadog/tracing/distributed/baggage.rb
|
866
928
|
- lib/datadog/tracing/distributed/datadog.rb
|
867
929
|
- lib/datadog/tracing/distributed/datadog_tags_codec.rb
|
868
930
|
- lib/datadog/tracing/distributed/fetcher.rb
|
869
931
|
- lib/datadog/tracing/distributed/helpers.rb
|
870
932
|
- lib/datadog/tracing/distributed/none.rb
|
871
933
|
- lib/datadog/tracing/distributed/propagation.rb
|
934
|
+
- lib/datadog/tracing/distributed/propagation_policy.rb
|
872
935
|
- lib/datadog/tracing/distributed/trace_context.rb
|
873
936
|
- lib/datadog/tracing/event.rb
|
874
937
|
- lib/datadog/tracing/flush.rb
|
@@ -876,6 +939,8 @@ files:
|
|
876
939
|
- lib/datadog/tracing/metadata/analytics.rb
|
877
940
|
- lib/datadog/tracing/metadata/errors.rb
|
878
941
|
- lib/datadog/tracing/metadata/ext.rb
|
942
|
+
- lib/datadog/tracing/metadata/metastruct.rb
|
943
|
+
- lib/datadog/tracing/metadata/metastruct_tagging.rb
|
879
944
|
- lib/datadog/tracing/metadata/tagging.rb
|
880
945
|
- lib/datadog/tracing/pipeline.rb
|
881
946
|
- lib/datadog/tracing/pipeline/span_filter.rb
|
@@ -930,8 +995,8 @@ licenses:
|
|
930
995
|
- Apache-2.0
|
931
996
|
metadata:
|
932
997
|
allowed_push_host: https://rubygems.org
|
933
|
-
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.
|
934
|
-
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.
|
998
|
+
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.19.0/CHANGELOG.md
|
999
|
+
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.19.0
|
935
1000
|
post_install_message:
|
936
1001
|
rdoc_options: []
|
937
1002
|
require_paths:
|
@@ -1,92 +0,0 @@
|
|
1
|
-
[
|
2
|
-
{
|
3
|
-
"id": "processor-001",
|
4
|
-
"generator": "extract_schema",
|
5
|
-
"conditions": [
|
6
|
-
{
|
7
|
-
"operator": "equals",
|
8
|
-
"parameters": {
|
9
|
-
"inputs": [
|
10
|
-
{
|
11
|
-
"address": "waf.context.processor",
|
12
|
-
"key_path": [
|
13
|
-
"extract-schema"
|
14
|
-
]
|
15
|
-
}
|
16
|
-
],
|
17
|
-
"type": "boolean",
|
18
|
-
"value": true
|
19
|
-
}
|
20
|
-
}
|
21
|
-
],
|
22
|
-
"parameters": {
|
23
|
-
"mappings": [
|
24
|
-
{
|
25
|
-
"inputs": [
|
26
|
-
{
|
27
|
-
"address": "server.request.body"
|
28
|
-
}
|
29
|
-
],
|
30
|
-
"output": "_dd.appsec.s.req.body"
|
31
|
-
},
|
32
|
-
{
|
33
|
-
"inputs": [
|
34
|
-
{
|
35
|
-
"address": "server.request.headers.no_cookies"
|
36
|
-
}
|
37
|
-
],
|
38
|
-
"output": "_dd.appsec.s.req.headers"
|
39
|
-
},
|
40
|
-
{
|
41
|
-
"inputs": [
|
42
|
-
{
|
43
|
-
"address": "server.request.query"
|
44
|
-
}
|
45
|
-
],
|
46
|
-
"output": "_dd.appsec.s.req.query"
|
47
|
-
},
|
48
|
-
{
|
49
|
-
"inputs": [
|
50
|
-
{
|
51
|
-
"address": "server.request.path_params"
|
52
|
-
}
|
53
|
-
],
|
54
|
-
"output": "_dd.appsec.s.req.params"
|
55
|
-
},
|
56
|
-
{
|
57
|
-
"inputs": [
|
58
|
-
{
|
59
|
-
"address": "server.request.cookies"
|
60
|
-
}
|
61
|
-
],
|
62
|
-
"output": "_dd.appsec.s.req.cookies"
|
63
|
-
},
|
64
|
-
{
|
65
|
-
"inputs": [
|
66
|
-
{
|
67
|
-
"address": "server.response.headers.no_cookies"
|
68
|
-
}
|
69
|
-
],
|
70
|
-
"output": "_dd.appsec.s.res.headers"
|
71
|
-
},
|
72
|
-
{
|
73
|
-
"inputs": [
|
74
|
-
{
|
75
|
-
"address": "server.response.body"
|
76
|
-
}
|
77
|
-
],
|
78
|
-
"output": "_dd.appsec.s.res.body"
|
79
|
-
}
|
80
|
-
],
|
81
|
-
"scanners": [
|
82
|
-
{
|
83
|
-
"tags": {
|
84
|
-
"category": "pii"
|
85
|
-
}
|
86
|
-
}
|
87
|
-
]
|
88
|
-
},
|
89
|
-
"evaluate": false,
|
90
|
-
"output": true
|
91
|
-
}
|
92
|
-
]
|