ddtrace 1.2.0 → 1.10.1
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 +442 -2
- data/LICENSE-3rdparty.csv +4 -0
- data/README.md +2 -2
- data/ext/ddtrace_profiling_loader/ddtrace_profiling_loader.c +20 -4
- data/ext/ddtrace_profiling_loader/extconf.rb +21 -3
- data/ext/ddtrace_profiling_native_extension/NativeExtensionDesign.md +46 -3
- data/ext/ddtrace_profiling_native_extension/clock_id.h +21 -0
- data/ext/ddtrace_profiling_native_extension/clock_id_from_pthread.c +33 -2
- data/ext/ddtrace_profiling_native_extension/clock_id_noop.c +10 -1
- data/ext/ddtrace_profiling_native_extension/collectors_cpu_and_wall_time_worker.c +821 -0
- data/ext/ddtrace_profiling_native_extension/collectors_dynamic_sampling_rate.c +142 -0
- data/ext/ddtrace_profiling_native_extension/collectors_dynamic_sampling_rate.h +14 -0
- data/ext/ddtrace_profiling_native_extension/collectors_idle_sampling_helper.c +241 -0
- data/ext/ddtrace_profiling_native_extension/collectors_idle_sampling_helper.h +3 -0
- data/ext/ddtrace_profiling_native_extension/collectors_stack.c +186 -85
- data/ext/ddtrace_profiling_native_extension/collectors_stack.h +13 -2
- data/ext/ddtrace_profiling_native_extension/collectors_thread_context.c +978 -0
- data/ext/ddtrace_profiling_native_extension/collectors_thread_context.h +14 -0
- data/ext/ddtrace_profiling_native_extension/extconf.rb +54 -34
- data/ext/ddtrace_profiling_native_extension/helpers.h +17 -0
- data/ext/ddtrace_profiling_native_extension/http_transport.c +127 -121
- data/ext/ddtrace_profiling_native_extension/libdatadog_helpers.h +25 -0
- data/ext/ddtrace_profiling_native_extension/native_extension_helpers.rb +82 -37
- data/ext/ddtrace_profiling_native_extension/private_vm_api_access.c +189 -139
- data/ext/ddtrace_profiling_native_extension/private_vm_api_access.h +15 -6
- data/ext/ddtrace_profiling_native_extension/profiling.c +221 -5
- data/ext/ddtrace_profiling_native_extension/ruby_helpers.c +110 -0
- data/ext/ddtrace_profiling_native_extension/ruby_helpers.h +57 -1
- data/ext/ddtrace_profiling_native_extension/setup_signal_handler.c +115 -0
- data/ext/ddtrace_profiling_native_extension/setup_signal_handler.h +11 -0
- data/ext/ddtrace_profiling_native_extension/stack_recorder.c +489 -45
- data/ext/ddtrace_profiling_native_extension/stack_recorder.h +12 -35
- data/ext/ddtrace_profiling_native_extension/time_helpers.c +17 -0
- data/ext/ddtrace_profiling_native_extension/time_helpers.h +10 -0
- data/lib/datadog/appsec/assets/blocked.html +98 -3
- data/lib/datadog/appsec/assets/blocked.json +1 -0
- data/lib/datadog/appsec/assets/blocked.text +5 -0
- data/lib/datadog/appsec/assets/waf_rules/recommended.json +1722 -636
- data/lib/datadog/appsec/assets/waf_rules/strict.json +366 -74
- data/lib/datadog/appsec/assets.rb +2 -4
- data/lib/datadog/appsec/autoload.rb +5 -10
- data/lib/datadog/appsec/component.rb +41 -0
- data/lib/datadog/appsec/configuration/settings.rb +46 -24
- data/lib/datadog/appsec/configuration.rb +12 -4
- data/lib/datadog/appsec/contrib/auto_instrument.rb +0 -4
- data/lib/datadog/appsec/contrib/configuration/settings.rb +1 -3
- data/lib/datadog/appsec/contrib/integration.rb +0 -2
- data/lib/datadog/appsec/contrib/patcher.rb +0 -2
- data/lib/datadog/appsec/contrib/rack/configuration/settings.rb +2 -4
- data/lib/datadog/appsec/contrib/rack/ext.rb +0 -2
- data/lib/datadog/appsec/contrib/rack/gateway/request.rb +97 -0
- data/lib/datadog/appsec/contrib/rack/gateway/response.rb +30 -0
- data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +117 -110
- data/lib/datadog/appsec/contrib/rack/integration.rb +5 -7
- data/lib/datadog/appsec/contrib/rack/patcher.rb +4 -4
- data/lib/datadog/appsec/contrib/rack/reactive/request.rb +31 -38
- data/lib/datadog/appsec/contrib/rack/reactive/request_body.rb +21 -22
- data/lib/datadog/appsec/contrib/rack/reactive/response.rb +21 -22
- data/lib/datadog/appsec/contrib/rack/request_body_middleware.rb +9 -7
- data/lib/datadog/appsec/contrib/rack/request_middleware.rb +80 -39
- data/lib/datadog/appsec/contrib/rails/configuration/settings.rb +2 -4
- data/lib/datadog/appsec/contrib/rails/ext.rb +0 -2
- data/lib/datadog/appsec/contrib/rails/framework.rb +0 -2
- data/lib/datadog/appsec/contrib/rails/gateway/request.rb +67 -0
- data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +45 -40
- data/lib/datadog/appsec/contrib/rails/integration.rb +5 -7
- data/lib/datadog/appsec/contrib/rails/patcher.rb +17 -16
- data/lib/datadog/appsec/contrib/rails/reactive/action.rb +24 -23
- data/lib/datadog/appsec/contrib/rails/request.rb +3 -2
- data/lib/datadog/appsec/contrib/rails/request_middleware.rb +0 -2
- data/lib/datadog/appsec/contrib/sinatra/configuration/settings.rb +2 -4
- data/lib/datadog/appsec/contrib/sinatra/ext.rb +1 -2
- data/lib/datadog/appsec/contrib/sinatra/framework.rb +0 -2
- data/lib/datadog/appsec/contrib/sinatra/gateway/request.rb +17 -0
- data/lib/datadog/appsec/contrib/sinatra/gateway/route_params.rb +23 -0
- data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +82 -75
- data/lib/datadog/appsec/contrib/sinatra/integration.rb +4 -6
- data/lib/datadog/appsec/contrib/sinatra/patcher.rb +33 -18
- data/lib/datadog/appsec/contrib/sinatra/reactive/routed.rb +21 -20
- data/lib/datadog/appsec/contrib/sinatra/request_middleware.rb +0 -2
- data/lib/datadog/appsec/event.rb +8 -16
- data/lib/datadog/appsec/ext.rb +9 -0
- data/lib/datadog/appsec/extensions.rb +51 -23
- data/lib/datadog/appsec/instrumentation/gateway/argument.rb +24 -0
- data/lib/datadog/appsec/instrumentation/gateway.rb +26 -6
- data/lib/datadog/appsec/instrumentation.rb +9 -0
- data/lib/datadog/appsec/monitor/gateway/watcher.rb +86 -0
- data/lib/datadog/appsec/monitor/reactive/set_user.rb +61 -0
- data/lib/datadog/appsec/monitor.rb +11 -0
- data/lib/datadog/appsec/processor.rb +110 -31
- data/lib/datadog/appsec/rate_limiter.rb +0 -2
- data/lib/datadog/appsec/reactive/address_hash.rb +6 -2
- data/lib/datadog/appsec/reactive/engine.rb +12 -9
- data/lib/datadog/appsec/reactive/operation.rb +22 -5
- data/lib/datadog/appsec/reactive/subscriber.rb +2 -1
- data/lib/datadog/appsec/response.rb +61 -0
- data/lib/datadog/appsec/utils/http/media_range.rb +199 -0
- data/lib/datadog/appsec/utils/http/media_type.rb +85 -0
- data/lib/datadog/appsec/utils/http.rb +9 -0
- data/lib/datadog/appsec/utils.rb +7 -0
- data/lib/datadog/appsec.rb +25 -7
- data/lib/datadog/ci/configuration/components.rb +1 -3
- data/lib/datadog/ci/configuration/settings.rb +1 -3
- data/lib/datadog/ci/contrib/cucumber/configuration/settings.rb +2 -4
- data/lib/datadog/ci/contrib/cucumber/ext.rb +0 -2
- data/lib/datadog/ci/contrib/cucumber/formatter.rb +5 -7
- data/lib/datadog/ci/contrib/cucumber/instrumentation.rb +1 -3
- data/lib/datadog/ci/contrib/cucumber/integration.rb +4 -6
- data/lib/datadog/ci/contrib/cucumber/patcher.rb +2 -4
- data/lib/datadog/ci/contrib/rspec/configuration/settings.rb +2 -4
- data/lib/datadog/ci/contrib/rspec/example.rb +5 -7
- data/lib/datadog/ci/contrib/rspec/ext.rb +0 -2
- data/lib/datadog/ci/contrib/rspec/integration.rb +4 -6
- data/lib/datadog/ci/contrib/rspec/patcher.rb +2 -4
- data/lib/datadog/ci/ext/app_types.rb +0 -2
- data/lib/datadog/ci/ext/environment.rb +77 -41
- data/lib/datadog/ci/ext/settings.rb +0 -2
- data/lib/datadog/ci/ext/test.rb +0 -2
- data/lib/datadog/ci/extensions.rb +4 -6
- data/lib/datadog/ci/flush.rb +2 -4
- data/lib/datadog/ci/test.rb +3 -5
- data/lib/datadog/ci.rb +6 -8
- data/lib/datadog/core/buffer/cruby.rb +1 -3
- data/lib/datadog/core/buffer/random.rb +0 -2
- data/lib/datadog/core/buffer/thread_safe.rb +1 -3
- data/lib/datadog/core/chunker.rb +0 -2
- data/lib/datadog/core/configuration/agent_settings_resolver.rb +8 -28
- data/lib/datadog/core/configuration/base.rb +14 -4
- data/lib/datadog/core/configuration/components.rb +31 -299
- data/lib/datadog/core/configuration/dependency_resolver.rb +0 -2
- data/lib/datadog/core/configuration/ext.rb +24 -0
- data/lib/datadog/core/configuration/option.rb +0 -2
- data/lib/datadog/core/configuration/option_definition.rb +12 -5
- data/lib/datadog/core/configuration/option_definition_set.rb +1 -3
- data/lib/datadog/core/configuration/option_set.rb +0 -2
- data/lib/datadog/core/configuration/options.rb +3 -5
- data/lib/datadog/core/configuration/settings.rb +87 -257
- data/lib/datadog/core/configuration.rb +9 -10
- data/lib/datadog/core/diagnostics/environment_logger.rb +10 -7
- data/lib/datadog/core/diagnostics/health.rb +4 -24
- data/lib/datadog/core/encoding.rb +0 -4
- data/lib/datadog/core/environment/cgroup.rb +1 -5
- data/lib/datadog/core/environment/class_count.rb +0 -2
- data/lib/datadog/core/environment/container.rb +1 -5
- data/lib/datadog/core/environment/ext.rb +1 -3
- data/lib/datadog/core/environment/gc.rb +0 -2
- data/lib/datadog/core/environment/identity.rb +2 -4
- data/lib/datadog/core/environment/platform.rb +1 -3
- data/lib/datadog/core/environment/socket.rb +1 -3
- data/lib/datadog/core/environment/thread_count.rb +0 -2
- data/lib/datadog/core/environment/variable_helpers.rb +58 -12
- data/lib/datadog/core/environment/vm_cache.rb +17 -2
- data/lib/datadog/core/error.rb +1 -3
- data/lib/datadog/core/extensions.rb +1 -3
- data/lib/datadog/core/git/ext.rb +0 -2
- data/lib/datadog/core/header_collection.rb +41 -0
- data/lib/datadog/core/logger.rb +0 -2
- data/lib/datadog/core/metrics/client.rb +10 -11
- data/lib/datadog/core/metrics/ext.rb +0 -4
- data/lib/datadog/core/metrics/helpers.rb +0 -2
- data/lib/datadog/core/metrics/logging.rb +0 -2
- data/lib/datadog/core/metrics/metric.rb +0 -2
- data/lib/datadog/core/metrics/options.rb +3 -5
- data/lib/datadog/core/pin.rb +0 -2
- data/lib/datadog/core/runtime/ext.rb +3 -3
- data/lib/datadog/core/runtime/metrics.rb +27 -13
- data/lib/datadog/core/telemetry/client.rb +77 -0
- data/lib/datadog/core/telemetry/collector.rb +231 -0
- data/lib/datadog/core/telemetry/emitter.rb +46 -0
- data/lib/datadog/core/telemetry/event.rb +67 -0
- data/lib/datadog/core/telemetry/ext.rb +9 -0
- data/lib/datadog/core/telemetry/heartbeat.rb +35 -0
- data/lib/datadog/core/telemetry/http/adapters/net.rb +111 -0
- data/lib/datadog/core/telemetry/http/env.rb +18 -0
- data/lib/datadog/core/telemetry/http/ext.rb +20 -0
- data/lib/datadog/core/telemetry/http/response.rb +64 -0
- data/lib/datadog/core/telemetry/http/transport.rb +51 -0
- data/lib/datadog/core/telemetry/v1/app_event.rb +50 -0
- data/lib/datadog/core/telemetry/v1/application.rb +86 -0
- data/lib/datadog/core/telemetry/v1/configuration.rb +25 -0
- data/lib/datadog/core/telemetry/v1/dependency.rb +36 -0
- data/lib/datadog/core/telemetry/v1/host.rb +51 -0
- data/lib/datadog/core/telemetry/v1/integration.rb +58 -0
- data/lib/datadog/core/telemetry/v1/product.rb +28 -0
- data/lib/datadog/core/telemetry/v1/telemetry_request.rb +100 -0
- data/lib/datadog/core/utils/compression.rb +5 -3
- data/lib/datadog/core/utils/forking.rb +0 -2
- data/lib/datadog/core/utils/network.rb +140 -0
- data/lib/datadog/core/utils/object_set.rb +1 -3
- data/lib/datadog/core/utils/only_once.rb +0 -2
- data/lib/datadog/core/utils/safe_dup.rb +0 -2
- data/lib/datadog/core/utils/sequence.rb +5 -2
- data/lib/datadog/core/utils/string_table.rb +1 -3
- data/lib/datadog/core/utils/time.rb +3 -7
- data/lib/datadog/core/utils.rb +1 -24
- data/lib/datadog/core/vendor/ipaddr.rb +78 -0
- data/lib/datadog/core/vendor/multipart-post/multipart/post/composite_read_io.rb +0 -2
- data/lib/datadog/core/vendor/multipart-post/multipart/post/multipartable.rb +2 -4
- data/lib/datadog/core/vendor/multipart-post/multipart/post/parts.rb +0 -2
- data/lib/datadog/core/vendor/multipart-post/multipart/post/version.rb +0 -2
- data/lib/datadog/core/vendor/multipart-post/multipart/post.rb +0 -2
- data/lib/datadog/core/vendor/multipart-post/multipart.rb +0 -2
- data/lib/datadog/core/vendor/multipart-post/net/http/post/multipart.rb +3 -5
- data/lib/datadog/core/worker.rb +0 -2
- data/lib/datadog/core/workers/async.rb +1 -5
- data/lib/datadog/core/workers/interval_loop.rb +0 -2
- data/lib/datadog/core/workers/polling.rb +2 -4
- data/lib/datadog/core/workers/queue.rb +0 -2
- data/lib/datadog/core/workers/runtime_metrics.rb +4 -6
- data/lib/datadog/core.rb +21 -56
- data/lib/datadog/kit/appsec/events.rb +74 -0
- data/lib/datadog/kit/enable_core_dumps.rb +6 -6
- data/lib/datadog/kit/identity.rb +15 -8
- data/lib/datadog/kit.rb +1 -3
- data/lib/datadog/opentelemetry/api/context.rb +186 -0
- data/lib/datadog/opentelemetry/api/trace/span.rb +14 -0
- data/lib/datadog/opentelemetry/sdk/configurator.rb +37 -0
- data/lib/datadog/opentelemetry/sdk/id_generator.rb +26 -0
- data/lib/datadog/opentelemetry/sdk/propagator.rb +90 -0
- data/lib/datadog/opentelemetry/sdk/span_processor.rb +91 -0
- data/lib/datadog/opentelemetry.rb +47 -0
- data/lib/datadog/opentracer/binary_propagator.rb +0 -2
- data/lib/datadog/opentracer/carrier.rb +0 -2
- data/lib/datadog/opentracer/distributed_headers.rb +7 -11
- data/lib/datadog/opentracer/global_tracer.rb +0 -2
- data/lib/datadog/opentracer/propagator.rb +0 -2
- data/lib/datadog/opentracer/rack_propagator.rb +10 -11
- data/lib/datadog/opentracer/scope.rb +0 -2
- data/lib/datadog/opentracer/scope_manager.rb +0 -2
- data/lib/datadog/opentracer/span.rb +1 -3
- data/lib/datadog/opentracer/span_context.rb +0 -2
- data/lib/datadog/opentracer/span_context_factory.rb +0 -2
- data/lib/datadog/opentracer/text_map_propagator.rb +13 -14
- data/lib/datadog/opentracer/thread_local_scope.rb +0 -2
- data/lib/datadog/opentracer/thread_local_scope_manager.rb +1 -3
- data/lib/datadog/opentracer/tracer.rb +23 -23
- data/lib/datadog/opentracer.rb +16 -18
- data/lib/datadog/profiling/backtrace_location.rb +0 -2
- data/lib/datadog/profiling/buffer.rb +3 -5
- data/lib/datadog/profiling/collectors/code_provenance.rb +0 -2
- data/lib/datadog/profiling/collectors/cpu_and_wall_time_worker.rb +96 -0
- data/lib/datadog/profiling/collectors/dynamic_sampling_rate.rb +12 -0
- data/lib/datadog/profiling/collectors/idle_sampling_helper.rb +66 -0
- data/lib/datadog/profiling/collectors/old_stack.rb +16 -13
- data/lib/datadog/profiling/collectors/stack.rb +3 -10
- data/lib/datadog/profiling/collectors/thread_context.rb +46 -0
- data/lib/datadog/profiling/component.rb +161 -0
- data/lib/datadog/profiling/encoding/profile.rb +1 -3
- data/lib/datadog/profiling/event.rb +0 -2
- data/lib/datadog/profiling/events/stack.rb +1 -3
- data/lib/datadog/profiling/exporter.rb +23 -14
- data/lib/datadog/profiling/ext/forking.rb +36 -39
- data/lib/datadog/profiling/ext.rb +1 -2
- data/lib/datadog/profiling/flush.rb +0 -5
- data/lib/datadog/profiling/http_transport.rb +5 -6
- data/lib/datadog/profiling/load_native_extension.rb +0 -2
- data/lib/datadog/profiling/native_extension.rb +0 -2
- data/lib/datadog/profiling/old_recorder.rb +8 -7
- data/lib/datadog/profiling/pprof/builder.rb +4 -6
- data/lib/datadog/profiling/pprof/converter.rb +1 -3
- data/lib/datadog/profiling/pprof/message_set.rb +1 -3
- data/lib/datadog/profiling/pprof/payload.rb +0 -2
- data/lib/datadog/profiling/pprof/pprof_pb.rb +0 -2
- data/lib/datadog/profiling/pprof/stack_sample.rb +4 -6
- data/lib/datadog/profiling/pprof/string_table.rb +1 -3
- data/lib/datadog/profiling/pprof/template.rb +5 -7
- data/lib/datadog/profiling/preload.rb +1 -3
- data/lib/datadog/profiling/profiler.rb +7 -2
- data/lib/datadog/profiling/scheduler.rb +8 -12
- data/lib/datadog/profiling/stack_recorder.rb +49 -8
- data/lib/datadog/profiling/tag_builder.rb +5 -2
- data/lib/datadog/profiling/tasks/exec.rb +0 -2
- data/lib/datadog/profiling/tasks/help.rb +0 -2
- data/lib/datadog/profiling/tasks/setup.rb +2 -11
- data/lib/datadog/profiling/trace_identifiers/ddtrace.rb +2 -4
- data/lib/datadog/profiling/trace_identifiers/helper.rb +1 -3
- data/lib/datadog/profiling.rb +67 -27
- data/lib/datadog/tracing/analytics.rb +1 -3
- data/lib/datadog/tracing/buffer.rb +5 -9
- data/lib/datadog/tracing/client_ip.rb +61 -0
- data/lib/datadog/tracing/component.rb +176 -0
- data/lib/datadog/tracing/configuration/ext.rb +49 -6
- data/lib/datadog/tracing/configuration/settings.rb +451 -0
- data/lib/datadog/tracing/context.rb +1 -3
- data/lib/datadog/tracing/context_provider.rb +2 -4
- data/lib/datadog/tracing/contrib/action_cable/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/action_cable/event.rb +4 -7
- data/lib/datadog/tracing/contrib/action_cable/events/broadcast.rb +4 -6
- data/lib/datadog/tracing/contrib/action_cable/events/perform_action.rb +3 -5
- data/lib/datadog/tracing/contrib/action_cable/events/transmit.rb +4 -6
- data/lib/datadog/tracing/contrib/action_cable/events.rb +4 -6
- data/lib/datadog/tracing/contrib/action_cable/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/action_cable/instrumentation.rb +3 -6
- data/lib/datadog/tracing/contrib/action_cable/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/action_cable/patcher.rb +4 -6
- data/lib/datadog/tracing/contrib/action_mailer/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/action_mailer/event.rb +3 -5
- data/lib/datadog/tracing/contrib/action_mailer/events/deliver.rb +3 -5
- data/lib/datadog/tracing/contrib/action_mailer/events/process.rb +3 -5
- data/lib/datadog/tracing/contrib/action_mailer/events.rb +2 -4
- data/lib/datadog/tracing/contrib/action_mailer/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/action_mailer/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/action_mailer/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/action_pack/action_controller/instrumentation.rb +6 -8
- data/lib/datadog/tracing/contrib/action_pack/action_controller/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/action_pack/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/action_pack/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/action_pack/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/action_pack/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/action_pack/utils.rb +1 -3
- data/lib/datadog/tracing/contrib/action_view/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/action_view/event.rb +1 -3
- data/lib/datadog/tracing/contrib/action_view/events/render_partial.rb +5 -7
- data/lib/datadog/tracing/contrib/action_view/events/render_template.rb +5 -7
- data/lib/datadog/tracing/contrib/action_view/events.rb +2 -4
- data/lib/datadog/tracing/contrib/action_view/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/action_view/instrumentation/partial_renderer.rb +2 -4
- data/lib/datadog/tracing/contrib/action_view/instrumentation/template_renderer.rb +2 -4
- data/lib/datadog/tracing/contrib/action_view/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/action_view/patcher.rb +7 -9
- data/lib/datadog/tracing/contrib/action_view/utils.rb +1 -3
- data/lib/datadog/tracing/contrib/active_job/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/active_job/event.rb +3 -5
- data/lib/datadog/tracing/contrib/active_job/events/discard.rb +4 -6
- data/lib/datadog/tracing/contrib/active_job/events/enqueue.rb +4 -6
- data/lib/datadog/tracing/contrib/active_job/events/enqueue_at.rb +4 -6
- data/lib/datadog/tracing/contrib/active_job/events/enqueue_retry.rb +4 -6
- data/lib/datadog/tracing/contrib/active_job/events/perform.rb +4 -6
- data/lib/datadog/tracing/contrib/active_job/events/retry_stopped.rb +4 -6
- data/lib/datadog/tracing/contrib/active_job/events.rb +6 -8
- data/lib/datadog/tracing/contrib/active_job/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/active_job/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/active_job/log_injection.rb +0 -4
- data/lib/datadog/tracing/contrib/active_job/patcher.rb +4 -6
- data/lib/datadog/tracing/contrib/active_model_serializers/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/active_model_serializers/event.rb +4 -7
- data/lib/datadog/tracing/contrib/active_model_serializers/events/render.rb +3 -5
- data/lib/datadog/tracing/contrib/active_model_serializers/events/serialize.rb +2 -4
- data/lib/datadog/tracing/contrib/active_model_serializers/events.rb +2 -4
- data/lib/datadog/tracing/contrib/active_model_serializers/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/active_model_serializers/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/active_model_serializers/patcher.rb +3 -6
- data/lib/datadog/tracing/contrib/active_record/configuration/makara_resolver.rb +0 -2
- data/lib/datadog/tracing/contrib/active_record/configuration/resolver.rb +2 -4
- data/lib/datadog/tracing/contrib/active_record/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/active_record/event.rb +1 -3
- data/lib/datadog/tracing/contrib/active_record/events/instantiation.rb +4 -6
- data/lib/datadog/tracing/contrib/active_record/events/sql.rb +6 -8
- data/lib/datadog/tracing/contrib/active_record/events.rb +2 -4
- data/lib/datadog/tracing/contrib/active_record/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/active_record/integration.rb +6 -8
- data/lib/datadog/tracing/contrib/active_record/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/active_record/utils.rb +2 -4
- data/lib/datadog/tracing/contrib/active_record/vendor/connection_specification.rb +0 -2
- data/lib/datadog/tracing/contrib/active_support/cache/instrumentation.rb +19 -11
- data/lib/datadog/tracing/contrib/active_support/cache/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/active_support/cache/redis.rb +1 -3
- data/lib/datadog/tracing/contrib/active_support/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/active_support/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/active_support/integration.rb +5 -7
- data/lib/datadog/tracing/contrib/active_support/notifications/event.rb +1 -3
- data/lib/datadog/tracing/contrib/active_support/notifications/subscriber.rb +1 -3
- data/lib/datadog/tracing/contrib/active_support/notifications/subscription.rb +0 -2
- data/lib/datadog/tracing/contrib/active_support/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/analytics.rb +1 -3
- data/lib/datadog/tracing/contrib/auto_instrument.rb +4 -6
- data/lib/datadog/tracing/contrib/aws/configuration/settings.rb +6 -5
- data/lib/datadog/tracing/contrib/aws/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/aws/instrumentation.rb +5 -6
- data/lib/datadog/tracing/contrib/aws/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/aws/parsed_context.rb +0 -2
- data/lib/datadog/tracing/contrib/aws/patcher.rb +5 -7
- data/lib/datadog/tracing/contrib/aws/services.rb +0 -4
- data/lib/datadog/tracing/contrib/concurrent_ruby/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/concurrent_ruby/context_composite_executor_service.rb +0 -2
- data/lib/datadog/tracing/contrib/concurrent_ruby/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/concurrent_ruby/future_patch.rb +1 -3
- data/lib/datadog/tracing/contrib/concurrent_ruby/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/concurrent_ruby/patcher.rb +2 -5
- data/lib/datadog/tracing/contrib/configurable.rb +2 -4
- data/lib/datadog/tracing/contrib/configuration/resolver.rb +0 -2
- data/lib/datadog/tracing/contrib/configuration/resolvers/pattern_resolver.rb +1 -3
- data/lib/datadog/tracing/contrib/configuration/settings.rb +2 -6
- data/lib/datadog/tracing/contrib/dalli/configuration/settings.rb +6 -5
- data/lib/datadog/tracing/contrib/dalli/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/dalli/instrumentation.rb +10 -7
- data/lib/datadog/tracing/contrib/dalli/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/dalli/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/dalli/quantize.rb +1 -3
- data/lib/datadog/tracing/contrib/delayed_job/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/delayed_job/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/delayed_job/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/delayed_job/patcher.rb +8 -4
- data/lib/datadog/tracing/contrib/delayed_job/plugin.rb +11 -6
- data/lib/datadog/tracing/contrib/delayed_job/server_internal_tracer/worker.rb +32 -0
- data/lib/datadog/tracing/contrib/elasticsearch/configuration/settings.rb +7 -5
- data/lib/datadog/tracing/contrib/elasticsearch/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/elasticsearch/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/elasticsearch/patcher.rb +10 -9
- data/lib/datadog/tracing/contrib/elasticsearch/quantize.rb +1 -5
- data/lib/datadog/tracing/contrib/ethon/configuration/settings.rb +8 -5
- data/lib/datadog/tracing/contrib/ethon/easy_patch.rb +6 -9
- data/lib/datadog/tracing/contrib/ethon/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/ethon/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/ethon/multi_patch.rb +5 -6
- data/lib/datadog/tracing/contrib/ethon/patcher.rb +3 -6
- data/lib/datadog/tracing/contrib/excon/configuration/settings.rb +7 -5
- data/lib/datadog/tracing/contrib/excon/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/excon/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/excon/middleware.rb +8 -9
- data/lib/datadog/tracing/contrib/excon/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/ext.rb +30 -0
- data/lib/datadog/tracing/contrib/extensions.rb +5 -5
- data/lib/datadog/tracing/contrib/faraday/configuration/settings.rb +7 -5
- data/lib/datadog/tracing/contrib/faraday/connection.rb +0 -2
- data/lib/datadog/tracing/contrib/faraday/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/faraday/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/faraday/middleware.rb +8 -10
- data/lib/datadog/tracing/contrib/faraday/patcher.rb +5 -7
- data/lib/datadog/tracing/contrib/faraday/rack_builder.rb +0 -2
- data/lib/datadog/tracing/contrib/grape/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/grape/endpoint.rb +4 -9
- data/lib/datadog/tracing/contrib/grape/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/grape/instrumentation.rb +0 -2
- data/lib/datadog/tracing/contrib/grape/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/grape/patcher.rb +4 -6
- data/lib/datadog/tracing/contrib/graphql/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/graphql/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/graphql/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/graphql/patcher.rb +2 -5
- data/lib/datadog/tracing/contrib/grpc/configuration/settings.rb +9 -6
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/client.rb +20 -7
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/server.rb +17 -19
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor.rb +3 -6
- data/lib/datadog/tracing/contrib/grpc/distributed/fetcher.rb +26 -0
- data/lib/datadog/tracing/contrib/grpc/distributed/propagation.rb +42 -0
- data/lib/datadog/tracing/contrib/grpc/ext.rb +4 -2
- data/lib/datadog/tracing/contrib/grpc/integration.rb +11 -6
- data/lib/datadog/tracing/contrib/grpc/intercept_with_datadog.rb +0 -2
- data/lib/datadog/tracing/contrib/grpc/patcher.rb +3 -8
- data/lib/datadog/tracing/contrib/hanami/action_tracer.rb +45 -0
- data/lib/datadog/tracing/contrib/hanami/configuration/settings.rb +20 -0
- data/lib/datadog/tracing/contrib/hanami/ext.rb +22 -0
- data/lib/datadog/tracing/contrib/hanami/integration.rb +42 -0
- data/lib/datadog/tracing/contrib/hanami/patcher.rb +31 -0
- data/lib/datadog/tracing/contrib/hanami/plugin.rb +21 -0
- data/lib/datadog/tracing/contrib/hanami/renderer_policy_tracing.rb +39 -0
- data/lib/datadog/tracing/contrib/hanami/router_tracing.rb +42 -0
- data/lib/datadog/tracing/contrib/http/circuit_breaker.rb +1 -4
- data/lib/datadog/tracing/contrib/http/configuration/settings.rb +13 -5
- data/lib/datadog/tracing/contrib/http/distributed/fetcher.rb +38 -0
- data/lib/datadog/tracing/contrib/http/distributed/propagation.rb +37 -0
- data/lib/datadog/tracing/contrib/http/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/http/instrumentation.rb +8 -12
- data/lib/datadog/tracing/contrib/http/integration.rb +6 -8
- data/lib/datadog/tracing/contrib/http/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/http_annotation_helper.rb +0 -2
- data/lib/datadog/tracing/contrib/httpclient/configuration/settings.rb +13 -5
- data/lib/datadog/tracing/contrib/httpclient/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/httpclient/instrumentation.rb +9 -11
- data/lib/datadog/tracing/contrib/httpclient/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/httpclient/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/httprb/configuration/settings.rb +13 -5
- data/lib/datadog/tracing/contrib/httprb/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/httprb/instrumentation.rb +9 -11
- data/lib/datadog/tracing/contrib/httprb/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/httprb/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/kafka/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/kafka/consumer_event.rb +1 -2
- data/lib/datadog/tracing/contrib/kafka/consumer_group_event.rb +0 -2
- data/lib/datadog/tracing/contrib/kafka/event.rb +4 -5
- data/lib/datadog/tracing/contrib/kafka/events/connection/request.rb +2 -4
- data/lib/datadog/tracing/contrib/kafka/events/consumer/process_batch.rb +3 -5
- data/lib/datadog/tracing/contrib/kafka/events/consumer/process_message.rb +3 -5
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/heartbeat.rb +4 -6
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/join_group.rb +4 -6
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/leave_group.rb +4 -6
- data/lib/datadog/tracing/contrib/kafka/events/consumer_group/sync_group.rb +4 -6
- data/lib/datadog/tracing/contrib/kafka/events/produce_operation/send_messages.rb +3 -4
- data/lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb +3 -4
- data/lib/datadog/tracing/contrib/kafka/events.rb +9 -11
- data/lib/datadog/tracing/contrib/kafka/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/kafka/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/kafka/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/lograge/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/lograge/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/lograge/instrumentation.rb +1 -4
- data/lib/datadog/tracing/contrib/lograge/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/lograge/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/mongodb/configuration/settings.rb +7 -5
- data/lib/datadog/tracing/contrib/mongodb/ext.rb +8 -2
- data/lib/datadog/tracing/contrib/mongodb/instrumentation.rb +3 -5
- data/lib/datadog/tracing/contrib/mongodb/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/mongodb/parsers.rb +1 -3
- data/lib/datadog/tracing/contrib/mongodb/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/mongodb/subscribers.rb +10 -6
- data/lib/datadog/tracing/contrib/mysql2/configuration/settings.rb +17 -4
- data/lib/datadog/tracing/contrib/mysql2/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/mysql2/instrumentation.rb +20 -7
- data/lib/datadog/tracing/contrib/mysql2/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/mysql2/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/patchable.rb +0 -2
- data/lib/datadog/tracing/contrib/patcher.rb +16 -6
- data/lib/datadog/tracing/contrib/pg/configuration/settings.rb +17 -4
- data/lib/datadog/tracing/contrib/pg/ext.rb +3 -3
- data/lib/datadog/tracing/contrib/pg/instrumentation.rb +78 -41
- data/lib/datadog/tracing/contrib/pg/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/pg/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/presto/configuration/settings.rb +6 -5
- data/lib/datadog/tracing/contrib/presto/ext.rb +2 -2
- data/lib/datadog/tracing/contrib/presto/instrumentation.rb +5 -5
- data/lib/datadog/tracing/contrib/presto/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/presto/patcher.rb +4 -6
- data/lib/datadog/tracing/contrib/propagation/sql_comment/comment.rb +41 -0
- data/lib/datadog/tracing/contrib/propagation/sql_comment/ext.rb +31 -0
- data/lib/datadog/tracing/contrib/propagation/sql_comment/mode.rb +26 -0
- data/lib/datadog/tracing/contrib/propagation/sql_comment.rb +45 -0
- data/lib/datadog/tracing/contrib/qless/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/qless/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/qless/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/qless/patcher.rb +1 -5
- data/lib/datadog/tracing/contrib/qless/qless_job.rb +5 -5
- data/lib/datadog/tracing/contrib/qless/tracer_cleaner.rb +0 -4
- data/lib/datadog/tracing/contrib/que/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/que/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/que/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/que/patcher.rb +1 -3
- data/lib/datadog/tracing/contrib/que/tracer.rb +5 -3
- data/lib/datadog/tracing/contrib/racecar/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/racecar/event.rb +5 -7
- data/lib/datadog/tracing/contrib/racecar/events/batch.rb +6 -5
- data/lib/datadog/tracing/contrib/racecar/events/consume.rb +2 -4
- data/lib/datadog/tracing/contrib/racecar/events/message.rb +6 -5
- data/lib/datadog/tracing/contrib/racecar/events.rb +3 -5
- data/lib/datadog/tracing/contrib/racecar/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/racecar/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/racecar/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/rack/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/rack/ext.rb +5 -2
- data/lib/datadog/tracing/contrib/rack/header_collection.rb +35 -0
- data/lib/datadog/tracing/contrib/rack/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/rack/middlewares.rb +170 -78
- data/lib/datadog/tracing/contrib/rack/patcher.rb +12 -4
- data/lib/datadog/tracing/contrib/rack/request_queue.rb +0 -2
- data/lib/datadog/tracing/contrib/rails/auto_instrument_railtie.rb +1 -3
- data/lib/datadog/tracing/contrib/rails/configuration/settings.rb +1 -3
- data/lib/datadog/tracing/contrib/rails/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/rails/framework.rb +16 -23
- data/lib/datadog/tracing/contrib/rails/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/rails/log_injection.rb +0 -4
- data/lib/datadog/tracing/contrib/rails/middlewares.rb +1 -4
- data/lib/datadog/tracing/contrib/rails/patcher.rb +7 -10
- data/lib/datadog/tracing/contrib/rails/railtie.rb +3 -5
- data/lib/datadog/tracing/contrib/rails/utils.rb +1 -3
- data/lib/datadog/tracing/contrib/rake/configuration/settings.rb +16 -3
- data/lib/datadog/tracing/contrib/rake/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/rake/instrumentation.rb +12 -9
- data/lib/datadog/tracing/contrib/rake/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/rake/patcher.rb +3 -6
- data/lib/datadog/tracing/contrib/redis/configuration/resolver.rb +1 -3
- data/lib/datadog/tracing/contrib/redis/configuration/settings.rb +6 -5
- data/lib/datadog/tracing/contrib/redis/ext.rb +3 -2
- data/lib/datadog/tracing/contrib/redis/instrumentation.rb +36 -28
- data/lib/datadog/tracing/contrib/redis/integration.rb +37 -6
- data/lib/datadog/tracing/contrib/redis/patcher.rb +56 -14
- data/lib/datadog/tracing/contrib/redis/quantize.rb +11 -10
- data/lib/datadog/tracing/contrib/redis/tags.rb +12 -12
- data/lib/datadog/tracing/contrib/redis/trace_middleware.rb +70 -0
- data/lib/datadog/tracing/contrib/redis/vendor/resolver.rb +0 -2
- data/lib/datadog/tracing/contrib/registerable.rb +0 -2
- data/lib/datadog/tracing/contrib/registry.rb +0 -2
- data/lib/datadog/tracing/contrib/resque/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/resque/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/resque/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/resque/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/resque/resque_job.rb +7 -6
- data/lib/datadog/tracing/contrib/rest_client/configuration/settings.rb +8 -5
- data/lib/datadog/tracing/contrib/rest_client/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/rest_client/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/rest_client/patcher.rb +2 -5
- data/lib/datadog/tracing/contrib/rest_client/request_patch.rb +6 -7
- data/lib/datadog/tracing/contrib/semantic_logger/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/semantic_logger/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/semantic_logger/instrumentation.rb +1 -4
- data/lib/datadog/tracing/contrib/semantic_logger/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/semantic_logger/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/sequel/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/sequel/database.rb +4 -7
- data/lib/datadog/tracing/contrib/sequel/dataset.rb +4 -7
- data/lib/datadog/tracing/contrib/sequel/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/sequel/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/sequel/patcher.rb +3 -5
- data/lib/datadog/tracing/contrib/sequel/utils.rb +2 -4
- data/lib/datadog/tracing/contrib/shoryuken/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/shoryuken/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/shoryuken/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/shoryuken/patcher.rb +1 -3
- data/lib/datadog/tracing/contrib/shoryuken/tracer.rb +5 -3
- data/lib/datadog/tracing/contrib/sidekiq/client_tracer.rb +11 -7
- data/lib/datadog/tracing/contrib/sidekiq/configuration/settings.rb +3 -5
- data/lib/datadog/tracing/contrib/sidekiq/ext.rb +6 -2
- data/lib/datadog/tracing/contrib/sidekiq/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/sidekiq/patcher.rb +14 -9
- data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/heartbeat.rb +23 -3
- data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/job_fetch.rb +2 -2
- data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/{scheduled_push.rb → redis_info.rb} +7 -8
- data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/scheduled_poller.rb +55 -0
- data/lib/datadog/tracing/contrib/sidekiq/server_tracer.rb +12 -8
- data/lib/datadog/tracing/contrib/sidekiq/tracing.rb +2 -4
- data/lib/datadog/tracing/contrib/sinatra/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/sinatra/env.rb +14 -27
- data/lib/datadog/tracing/contrib/sinatra/ext.rb +7 -5
- data/lib/datadog/tracing/contrib/sinatra/framework.rb +0 -4
- data/lib/datadog/tracing/contrib/sinatra/headers.rb +1 -3
- data/lib/datadog/tracing/contrib/sinatra/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/sinatra/patcher.rb +6 -9
- data/lib/datadog/tracing/contrib/sinatra/tracer.rb +15 -90
- data/lib/datadog/tracing/contrib/sinatra/tracer_middleware.rb +20 -18
- data/lib/datadog/tracing/contrib/sneakers/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/sneakers/ext.rb +1 -2
- data/lib/datadog/tracing/contrib/sneakers/integration.rb +4 -6
- data/lib/datadog/tracing/contrib/sneakers/patcher.rb +2 -4
- data/lib/datadog/tracing/contrib/sneakers/tracer.rb +7 -5
- data/lib/datadog/tracing/contrib/status_code_matcher.rb +2 -4
- data/lib/datadog/tracing/contrib/stripe/configuration/settings.rb +33 -0
- data/lib/datadog/tracing/contrib/stripe/ext.rb +26 -0
- data/lib/datadog/tracing/contrib/stripe/integration.rb +43 -0
- data/lib/datadog/tracing/contrib/stripe/patcher.rb +28 -0
- data/lib/datadog/tracing/contrib/stripe/request.rb +67 -0
- data/lib/datadog/tracing/contrib/sucker_punch/configuration/settings.rb +2 -4
- data/lib/datadog/tracing/contrib/sucker_punch/exception_handler.rb +0 -2
- data/lib/datadog/tracing/contrib/sucker_punch/ext.rb +0 -2
- data/lib/datadog/tracing/contrib/sucker_punch/instrumentation.rb +3 -6
- data/lib/datadog/tracing/contrib/sucker_punch/integration.rb +3 -5
- data/lib/datadog/tracing/contrib/sucker_punch/patcher.rb +4 -8
- data/lib/datadog/tracing/contrib/utils/database.rb +0 -2
- data/lib/datadog/tracing/contrib/utils/quantization/hash.rb +0 -2
- data/lib/datadog/tracing/contrib/utils/quantization/http.rb +92 -14
- data/lib/datadog/tracing/contrib.rb +50 -50
- data/lib/datadog/tracing/correlation.rb +16 -4
- data/lib/datadog/{core → tracing}/diagnostics/ext.rb +1 -8
- data/lib/datadog/tracing/diagnostics/health.rb +38 -0
- data/lib/datadog/tracing/distributed/b3_multi.rb +72 -0
- data/lib/datadog/tracing/distributed/b3_single.rb +68 -0
- data/lib/datadog/tracing/distributed/datadog.rb +200 -0
- data/lib/datadog/tracing/distributed/datadog_tags_codec.rb +84 -0
- data/lib/datadog/tracing/distributed/fetcher.rb +21 -0
- data/lib/datadog/tracing/distributed/headers/ext.rb +19 -16
- data/lib/datadog/tracing/distributed/helpers.rb +27 -40
- data/lib/datadog/tracing/distributed/none.rb +18 -0
- data/lib/datadog/tracing/distributed/propagation.rb +126 -0
- data/lib/datadog/tracing/distributed/trace_context.rb +373 -0
- data/lib/datadog/tracing/event.rb +1 -3
- data/lib/datadog/tracing/flush.rb +57 -37
- data/lib/datadog/tracing/metadata/analytics.rb +2 -4
- data/lib/datadog/tracing/metadata/errors.rb +2 -4
- data/lib/datadog/tracing/metadata/ext.rb +18 -12
- data/lib/datadog/tracing/metadata/tagging.rb +17 -4
- data/lib/datadog/tracing/metadata.rb +3 -5
- data/lib/datadog/tracing/pipeline/span_filter.rb +10 -8
- data/lib/datadog/tracing/pipeline/span_processor.rb +0 -2
- data/lib/datadog/tracing/pipeline.rb +3 -5
- data/lib/datadog/tracing/propagation/http.rb +3 -100
- data/lib/datadog/tracing/runtime/metrics.rb +1 -3
- data/lib/datadog/tracing/sampling/all_sampler.rb +1 -3
- data/lib/datadog/tracing/sampling/ext.rb +30 -1
- data/lib/datadog/tracing/sampling/matcher.rb +0 -2
- data/lib/datadog/tracing/sampling/priority_sampler.rb +62 -11
- data/lib/datadog/tracing/sampling/rate_by_key_sampler.rb +10 -13
- data/lib/datadog/tracing/sampling/rate_by_service_sampler.rb +32 -10
- data/lib/datadog/tracing/sampling/rate_limiter.rb +4 -3
- data/lib/datadog/tracing/sampling/rate_sampler.rb +27 -12
- data/lib/datadog/tracing/sampling/rule.rb +3 -5
- data/lib/datadog/tracing/sampling/rule_sampler.rb +8 -9
- data/lib/datadog/tracing/sampling/sampler.rb +0 -2
- data/lib/datadog/tracing/sampling/span/ext.rb +25 -0
- data/lib/datadog/tracing/sampling/span/matcher.rb +9 -0
- data/lib/datadog/tracing/sampling/span/rule.rb +82 -0
- data/lib/datadog/tracing/sampling/span/rule_parser.rb +104 -0
- data/lib/datadog/tracing/sampling/span/sampler.rb +75 -0
- data/lib/datadog/tracing/span.rb +6 -24
- data/lib/datadog/tracing/span_operation.rb +11 -14
- data/lib/datadog/tracing/sync_writer.rb +5 -7
- data/lib/datadog/tracing/trace_digest.rb +88 -4
- data/lib/datadog/tracing/trace_operation.rb +60 -17
- data/lib/datadog/tracing/trace_segment.rb +20 -10
- data/lib/datadog/tracing/tracer.rb +49 -23
- data/lib/datadog/tracing/utils.rb +81 -0
- data/lib/datadog/tracing/workers/trace_writer.rb +9 -11
- data/lib/datadog/tracing/workers.rb +3 -5
- data/lib/datadog/tracing/writer.rb +12 -7
- data/lib/datadog/tracing.rb +8 -10
- data/lib/ddtrace/auto_instrument.rb +9 -4
- data/lib/ddtrace/auto_instrument_base.rb +0 -2
- data/lib/ddtrace/profiling/preload.rb +0 -2
- data/lib/ddtrace/transport/ext.rb +7 -3
- data/lib/ddtrace/transport/http/adapters/net.rb +3 -4
- data/lib/ddtrace/transport/http/adapters/registry.rb +0 -2
- data/lib/ddtrace/transport/http/adapters/test.rb +1 -3
- data/lib/ddtrace/transport/http/adapters/unix_socket.rb +2 -4
- data/lib/ddtrace/transport/http/api/endpoint.rb +0 -2
- data/lib/ddtrace/transport/http/api/fallbacks.rb +0 -2
- data/lib/ddtrace/transport/http/api/instance.rb +0 -2
- data/lib/ddtrace/transport/http/api/map.rb +1 -3
- data/lib/ddtrace/transport/http/api/spec.rb +0 -2
- data/lib/ddtrace/transport/http/api.rb +4 -6
- data/lib/ddtrace/transport/http/builder.rb +5 -7
- data/lib/ddtrace/transport/http/client.rb +2 -4
- data/lib/ddtrace/transport/http/env.rb +0 -2
- data/lib/ddtrace/transport/http/response.rb +1 -3
- data/lib/ddtrace/transport/http/statistics.rb +1 -3
- data/lib/ddtrace/transport/http/traces.rb +6 -8
- data/lib/ddtrace/transport/http.rb +11 -12
- data/lib/ddtrace/transport/io/client.rb +2 -4
- data/lib/ddtrace/transport/io/response.rb +1 -3
- data/lib/ddtrace/transport/io/traces.rb +3 -7
- data/lib/ddtrace/transport/io.rb +3 -5
- data/lib/ddtrace/transport/parcel.rb +0 -4
- data/lib/ddtrace/transport/request.rb +0 -2
- data/lib/ddtrace/transport/response.rb +0 -2
- data/lib/ddtrace/transport/serializable_trace.rb +9 -5
- data/lib/ddtrace/transport/statistics.rb +2 -4
- data/lib/ddtrace/transport/trace_formatter.rb +21 -12
- data/lib/ddtrace/transport/traces.rb +9 -9
- data/lib/ddtrace/version.rb +2 -4
- data/lib/ddtrace.rb +6 -10
- metadata +131 -50
- data/.editorconfig +0 -22
- data/.gitignore +0 -58
- data/CONTRIBUTING.md +0 -81
- data/ddtrace.gemspec +0 -71
- data/docs/0.x-trace.png +0 -0
- data/docs/1.0-trace.png +0 -0
- data/docs/AutoInstrumentation.md +0 -36
- data/docs/Deprecation.md +0 -8
- data/docs/DevelopmentGuide.md +0 -259
- data/docs/GettingStarted.md +0 -2712
- data/docs/ProfilingDevelopment.md +0 -109
- data/docs/PublicApi.md +0 -14
- data/docs/UpgradeGuide.md +0 -736
- data/ext/ddtrace_profiling_native_extension/collectors_cpu_and_wall_time.c +0 -269
- data/ext/ddtrace_profiling_native_extension/libddprof_helpers.h +0 -13
- data/lib/datadog/appsec/assets/waf_rules/risky.json +0 -1499
- data/lib/datadog/appsec/contrib/rack/request.rb +0 -58
- data/lib/datadog/appsec/contrib/rack/response.rb +0 -24
- data/lib/datadog/profiling/collectors/cpu_and_wall_time.rb +0 -42
- data/lib/datadog/profiling/old_ext.rb +0 -42
- data/lib/datadog/profiling/transport/http/api/endpoint.rb +0 -85
- data/lib/datadog/profiling/transport/http/api/instance.rb +0 -38
- data/lib/datadog/profiling/transport/http/api/spec.rb +0 -42
- data/lib/datadog/profiling/transport/http/api.rb +0 -45
- data/lib/datadog/profiling/transport/http/builder.rb +0 -30
- data/lib/datadog/profiling/transport/http/client.rb +0 -37
- data/lib/datadog/profiling/transport/http/response.rb +0 -21
- data/lib/datadog/profiling/transport/http.rb +0 -112
- data/lib/datadog/tracing/distributed/headers/b3.rb +0 -55
- data/lib/datadog/tracing/distributed/headers/b3_single.rb +0 -67
- data/lib/datadog/tracing/distributed/headers/datadog.rb +0 -52
- data/lib/datadog/tracing/distributed/headers/parser.rb +0 -37
- data/lib/datadog/tracing/distributed/metadata/b3.rb +0 -55
- data/lib/datadog/tracing/distributed/metadata/b3_single.rb +0 -66
- data/lib/datadog/tracing/distributed/metadata/datadog.rb +0 -73
- data/lib/datadog/tracing/distributed/metadata/parser.rb +0 -34
- data/lib/datadog/tracing/propagation/grpc.rb +0 -98
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 005fcbaaa9553287f8652a9f437abd144c2ba2ca0f26c83f67de171646f5aae3
|
|
4
|
+
data.tar.gz: 032c0d3f09ea01779b17ba45a95086ab890b3869208c84b82b548b3cbd41a977
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bc868d2e56e5282771cbc7e9447f1fa7504212d31b5bc94db4db9e5f029a00b0a9f988bcab7111f1889eb1f203fffcd81b73700c69f433be4bdaa2045dbfba72
|
|
7
|
+
data.tar.gz: d2679f725e7991bfa2e34dc6de650e928a59aa02124239d340a396ea40f331ff0a4a2159067df5ade22c1c36daab8e7cbe25db3ddaf55b8c8cb14137e7b2d220
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,286 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [1.10.1] - 2023-03-10
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
* CI: Update TeamCity environment variable support ([#2668][])
|
|
10
|
+
* Core: Fix spurious dependency on AppSec when loading CI with `require 'datadog/ci'` ([#2679][])
|
|
11
|
+
* Core: Allow multiple headers and multiple IPs per header for client IP ([#2665][])
|
|
12
|
+
* AppSec: prevent side-effect on AppSec login event tracking method arguments ([#2663][]) ([@coneill-enhance][])
|
|
13
|
+
|
|
14
|
+
## [1.10.0] - 2023-03-06
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
* Support Ruby 3.2 ([#2601][])
|
|
19
|
+
* Publish init container image (beta) for `dd-trace-rb` injection through K8s admission controller ([#2606][])
|
|
20
|
+
* Tracing: Support 128 bits trace id ([#2543][])
|
|
21
|
+
* Tracing: Add tags to integrations (`que` / `racecar` / `resque`/ `shoryken` / `sneakers` / `qless` / `delayed_job` / `kafka` / `sidekiq` / `dalli` / `presto` / `elasticsearch`) ([#2619][], [#2613][] , [#2608][], [#2590][])
|
|
22
|
+
* Appsec: Introduce `AppSec::Instrumentation::Gateway::Argument` ([#2648][])
|
|
23
|
+
* Appsec: Block request when user ID matches rules ([#2642][])
|
|
24
|
+
* Appsec: Block request base on response addresses matches ([#2605][])
|
|
25
|
+
* Appsec: Allow to set user id denylist ([#2612][])
|
|
26
|
+
* Profiling: Show profiler overhead in flamegraph for CPU Profiling 2.0 ([#2607][])
|
|
27
|
+
* Profiling: Add support for allocation samples to `ThreadContext` ([#2657][])
|
|
28
|
+
* Profiling: Exclude disabled profiling sample value types from output ([#2634][])
|
|
29
|
+
* Profiling: Extend stack collector to record the alloc-samples metric ([#2618][])
|
|
30
|
+
* Profiling: Add `Profiling.allocation_count` API for new profiler ([#2635][])
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
* Tracing: `rack` instrumentation counts time spent in queue as part of the `http_server.queue` span ([#2591][]) ([@agrobbin][])
|
|
35
|
+
* Appsec: Update ruleset to 1.5.2 ([#2662][], [#2659][], [#2598][])
|
|
36
|
+
* Appsec: Update `libddwaf` version to 1.6.2.0.0 ([#2614][])
|
|
37
|
+
* Profiling: Upgrade profiler to use `libdatadog` v2.0.0 ([#2599][])
|
|
38
|
+
* Profiling: Remove support for profiling Ruby 2.2 ([#2592][])
|
|
39
|
+
|
|
40
|
+
### Fixed
|
|
41
|
+
|
|
42
|
+
* Fix broken Ruby VM statistics for Ruby 3.2 ([#2600][])
|
|
43
|
+
* Tracing: Fix 'uninitialized constant GRPC::Interceptor' error with 'gapic-common' gem ([#2649][])
|
|
44
|
+
* Profiling: Fix profiler not adding the "In native code" placeholder ([#2594][])
|
|
45
|
+
* Fix profiler detection for google-protobuf installation ([#2595][])
|
|
46
|
+
|
|
47
|
+
## [1.9.0] - 2023-01-30
|
|
48
|
+
|
|
49
|
+
As of ddtrace 1.9.0, CPU Profiling 2.0 is now in opt-in (that is, disabled by default) public beta. For more details, check the release notes.
|
|
50
|
+
|
|
51
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.9.0
|
|
52
|
+
|
|
53
|
+
### Added
|
|
54
|
+
|
|
55
|
+
* Tracing: Add `Stripe` instrumentation ([#2557][])
|
|
56
|
+
* Tracing: Add configurable response codes considered as errors for `Net/HTTP`, `httprb` and `httpclient` ([#2501][], [#2576][])([@caramcc][])
|
|
57
|
+
* Tracing: Flexible header matching for HTTP propagator ([#2504][])
|
|
58
|
+
* Tracing: `OpenTelemetry` Traces support ([#2496][])
|
|
59
|
+
* Tracing: W3C: Propagate unknown values as-is ([#2485][])
|
|
60
|
+
* Appsec: Add event kit API ([#2512][])
|
|
61
|
+
* Profiling: Allow profiler development on arm64 macOS ([#2573][])
|
|
62
|
+
* Core: Add `profiling_enabled` state to environment logger output ([#2541][])
|
|
63
|
+
* Core: Add 'type' to `OptionDefinition` ([#2493][])
|
|
64
|
+
* Allow `debase-ruby_core_source` 3.2.0 to be used ([#2526][])
|
|
65
|
+
|
|
66
|
+
### Changed
|
|
67
|
+
|
|
68
|
+
* Profiling: Upgrade to `libdatadog` to `1.0.1.1.0` ([#2530][])
|
|
69
|
+
* Appsec: Update appsec rules `1.4.3` ([#2580][])
|
|
70
|
+
* Ci: Update CI Visibility metadata extraction ([#2586][])
|
|
71
|
+
|
|
72
|
+
### Fixed
|
|
73
|
+
|
|
74
|
+
* Profiling: Fix wrong `libdatadog` version being picked during profiler build ([#2531][])
|
|
75
|
+
* Tracing: Support `PG` calls with a block ([#2522][])
|
|
76
|
+
* Ci: Fix error in `teamcity` env vars ([#2562][])
|
|
77
|
+
|
|
78
|
+
## [1.8.0] - 2022-12-14
|
|
79
|
+
|
|
80
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.8.0
|
|
81
|
+
|
|
82
|
+
As of ddtrace 1.8.0, CPU Profiling 2.0 is now in opt-in (that is, disabled by default) public beta. For more details,
|
|
83
|
+
check the release notes.
|
|
84
|
+
|
|
85
|
+
### Added
|
|
86
|
+
|
|
87
|
+
* Core: Profiling: [PROF-6559] Mark Ruby CPU Profiling 2.0 as being in beta ([#2489][])
|
|
88
|
+
* Tracing: Attempt to parse future version of TraceContext ([#2473][])
|
|
89
|
+
* Tracing: Add DD_TRACE_PROPAGATION_STYLE option ([#2466][])
|
|
90
|
+
* Integrations: Tracing: SQL comment propagation full mode with traceparent ([#2464][])
|
|
91
|
+
* Integrations: Tracing: Wire W3C propagator to HTTP & gRPC propagation ([#2458][])
|
|
92
|
+
* Integrations: Tracing: Auto-instrumentation with service_name from environmental variable ([#2455][])
|
|
93
|
+
* Core: Integrations: Tracing: Deprecation notice for B3 propagation configuration ([#2454][])
|
|
94
|
+
* Tracing: Add W3C Trace Context propagator ([#2451][])
|
|
95
|
+
* Integrations: Tracing: Redis 5 Instrumentation ([#2428][])
|
|
96
|
+
|
|
97
|
+
### Changed
|
|
98
|
+
|
|
99
|
+
* Tracing: Changes `error.msg` to `error.message` for UNC ([#2469][])
|
|
100
|
+
* Tracing: Semicolons not allowed in 'origin' ([#2461][])
|
|
101
|
+
* Core: Dev/refactor: Tracing: Dev/internal: Move Utils#next_id and constants to Tracing::Utils ([#2463][])
|
|
102
|
+
* Core: Dev/refactor: Tracing: Dev/internal: Move Tracing config settings from Core to Tracing ([#2459][])
|
|
103
|
+
* Core: Dev/refactor: Tracing: Dev/internal: Move Tracing diagnostic code from Core to Tracing ([#2453][])
|
|
104
|
+
|
|
105
|
+
### Fixed
|
|
106
|
+
|
|
107
|
+
* Integrations: Tracing: Improve redis integration patching ([#2470][])
|
|
108
|
+
* Tracing: Extra testing from W3C spec ([#2460][])
|
|
109
|
+
|
|
110
|
+
## [1.7.0] - 2022-11-29
|
|
111
|
+
|
|
112
|
+
### Added
|
|
113
|
+
* Integrations: Support que 2 ([#2382][]) ([@danhodge][])
|
|
114
|
+
* Tracing: Unified tagging `span.kind` as `server` and `client` ([#2365][])
|
|
115
|
+
* Tracing: Adds `span.kind` tag for `kafka`, `sidekiq`, `racecar`, `que`, `shoryuken`, `sneakers`, and `resque` ([#2420][], [#2419][], [#2413][], [#2394][])
|
|
116
|
+
* Tracing: Adds `span.kind` with values `producer` and `consumer` for `delayed_job` ([#2393][])
|
|
117
|
+
* Tracing: Adds `span.kind` as `client` for `redis` ([#2392][])
|
|
118
|
+
* Appsec: Pass HTTP client IP to WAF ([#2316][])
|
|
119
|
+
* Unified tagging `process_id` ([#2276][])
|
|
120
|
+
|
|
121
|
+
### Changed
|
|
122
|
+
* Allow `debase-ruby_core_source` 0.10.18 to be used ([#2435][])
|
|
123
|
+
* Update AppSec ruleset to v1.4.2 ([#2390][])
|
|
124
|
+
* Refactored clearing of profile data after Ruby app forks ([#2362][], [#2367][])
|
|
125
|
+
* Tracing: Move distributed propagation to Contrib ([#2352][])
|
|
126
|
+
|
|
127
|
+
### Fixed
|
|
128
|
+
* Fix ddtrace installation issue when users have CI=true ([#2378][])
|
|
129
|
+
|
|
130
|
+
## [1.6.1] - 2022-11-16
|
|
131
|
+
|
|
132
|
+
### Changed
|
|
133
|
+
|
|
134
|
+
* Limit `redis` version support to less than 5
|
|
135
|
+
|
|
136
|
+
### Fixed
|
|
137
|
+
|
|
138
|
+
* [redis]: Fix frozen input for `Redis.new(...)`
|
|
139
|
+
|
|
140
|
+
## [1.6.0] - 2022-11-15
|
|
141
|
+
|
|
142
|
+
### Added
|
|
143
|
+
|
|
144
|
+
* Trace level tags propagation in distributed tracing ([#2260][])
|
|
145
|
+
* [hanami]: Hanami 1.x instrumentation ([#2230][])
|
|
146
|
+
* [pg, mysql2]: option `comment_propagation` for SQL comment propagation, default is `disabled` ([#2339][])([#2324][])
|
|
147
|
+
|
|
148
|
+
### Changed
|
|
149
|
+
|
|
150
|
+
* [rack, sinatra]: Squash nested spans and improve patching mechanism.<br> No need to `register Datadog::Tracing::Contrib::Sinatra::Tracer`([#2217][])
|
|
151
|
+
* [rails, rack]: Fix Non-GET request method with rails exception controller ([#2317][])
|
|
152
|
+
* Upgrade to libdatadog 0.9.0.1.0 ([#2302][])
|
|
153
|
+
* Remove legacy profiling transport ([#2062][])
|
|
154
|
+
|
|
155
|
+
### Fixed
|
|
156
|
+
|
|
157
|
+
* [redis]: Fix redis instance configuration, not on `client` ([#2363][])
|
|
158
|
+
```
|
|
159
|
+
# Change your code from
|
|
160
|
+
Datadog.configure_onto(redis.client, service_name: '...')
|
|
161
|
+
# to
|
|
162
|
+
Datadog.configure_onto(redis, service_name: '...')
|
|
163
|
+
```
|
|
164
|
+
* Allow `DD_TAGS` values to have the colon character ([#2292][])
|
|
165
|
+
* Ensure that `TraceSegment` can be reported correctly when they are dropped ([#2335][])
|
|
166
|
+
* Docs: Fixes upgrade guide on configure_onto ([#2307][])
|
|
167
|
+
* Fix environment logger with IO transport ([#2313][])
|
|
168
|
+
|
|
169
|
+
## [1.5.2] - 2022-10-27
|
|
170
|
+
|
|
171
|
+
### Deprecation notice
|
|
172
|
+
|
|
173
|
+
- `DD_TRACE_CLIENT_IP_HEADER_DISABLED` was changed to `DD_TRACE_CLIENT_IP_ENABLED`. Although the former still works we encourage usage of the latter instead.
|
|
174
|
+
|
|
175
|
+
### Changed
|
|
176
|
+
|
|
177
|
+
- `http.client_ip` tag collection is made opt-in for APM. Note that `http.client_ip` is always collected when ASM is enabled as part of the security service provided ([#2321][], [#2331][])
|
|
178
|
+
|
|
179
|
+
### Fixed
|
|
180
|
+
|
|
181
|
+
- Handle REQUEST_URI with base url ([#2328][], [#2330][])
|
|
182
|
+
|
|
183
|
+
## [1.5.1] - 2022-10-19
|
|
184
|
+
|
|
185
|
+
### Changed
|
|
186
|
+
|
|
187
|
+
* Update libddwaf to 1.5.1 ([#2306][])
|
|
188
|
+
* Improve libddwaf extension memory management ([#2306][])
|
|
189
|
+
|
|
190
|
+
### Fixed
|
|
191
|
+
|
|
192
|
+
* Fix `URI::InvalidURIError` ([#2310][], [#2318][]) ([@yujideveloper][])
|
|
193
|
+
* Handle URLs with invalid characters ([#2311][], [#2319][])
|
|
194
|
+
* Fix missing appsec.event tag ([#2306][])
|
|
195
|
+
* Fix missing Rack and Rails request body parsing for AppSec analysis ([#2306][])
|
|
196
|
+
* Fix unneeded AppSec call in a Rack context when AppSec is disabled ([#2306][])
|
|
197
|
+
* Fix spurious AppSec instrumentation ([#2306][])
|
|
198
|
+
|
|
199
|
+
## [1.5.0] - 2022-09-29
|
|
200
|
+
|
|
201
|
+
### Deprecation notice
|
|
202
|
+
|
|
203
|
+
* `c.tracing.instrument :rack, { quantize: { base: ... } }` will change its default from `:exclude` to `:show` in a future version. Voluntarily moving to `:show` is recommended.
|
|
204
|
+
* `c.tracing.instrument :rack, { quantize: { query: { show: ... } }` will change its default to `:all` in a future version, together with `quantize.query.obfuscate` changing to `:internal`. Voluntarily moving to these future values is recommended.
|
|
205
|
+
|
|
206
|
+
### Added
|
|
207
|
+
|
|
208
|
+
* Feature: Single Span Sampling ([#2128][])
|
|
209
|
+
* Add query string automatic redaction ([#2283][])
|
|
210
|
+
* Use full URL in `http.url` tag ([#2265][])
|
|
211
|
+
* Add `http.useragent` tag ([#2252][])
|
|
212
|
+
* Add `http.client_ip` tag for Rack-based frameworks ([#2248][])
|
|
213
|
+
* Ci-app: CI: Fetch committer and author in Bitrise ([#2258][])
|
|
214
|
+
|
|
215
|
+
### Changed
|
|
216
|
+
|
|
217
|
+
* Bump allowed version of debase-ruby_core_source to include v0.10.17 ([#2267][])
|
|
218
|
+
|
|
219
|
+
### Fixed
|
|
220
|
+
|
|
221
|
+
* Bug: Fix `service_nam` typo to `service_name` ([#2296][])
|
|
222
|
+
* Bug: Check AppSec Rails for railties instead of rails meta gem ([#2293][]) ([@seuros][])
|
|
223
|
+
* Ci-app: Correctly extract commit message from AppVeyor ([#2257][])
|
|
224
|
+
|
|
225
|
+
## [1.4.2] - 2022-09-27
|
|
226
|
+
|
|
227
|
+
### Fixed
|
|
228
|
+
|
|
229
|
+
OpenTracing context propagation ([#2191][], [#2289][])
|
|
230
|
+
|
|
231
|
+
## [1.4.1] - 2022-09-15
|
|
232
|
+
|
|
233
|
+
### Fixed
|
|
234
|
+
|
|
235
|
+
* Missing distributed traces when trace is dropped by priority sampling ([#2101][], [#2279][])
|
|
236
|
+
* Profiling support when Ruby is compiled without a shared library ([#2250][])
|
|
237
|
+
|
|
238
|
+
## [1.4.0] - 2022-08-25
|
|
239
|
+
|
|
240
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.4.0
|
|
241
|
+
|
|
242
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.3.0...v1.4.0
|
|
243
|
+
|
|
244
|
+
### Added
|
|
245
|
+
|
|
246
|
+
* gRPC: tag `grpc.client.deadline` ([#2200][])
|
|
247
|
+
* Implement telemetry, disable by default ([#2153][])
|
|
248
|
+
|
|
249
|
+
### Changed
|
|
250
|
+
|
|
251
|
+
* Bump `libdatadog` dependency version ([#2229][])
|
|
252
|
+
|
|
253
|
+
### Fixed
|
|
254
|
+
|
|
255
|
+
* Fix CI instrumentation configuration ([#2219][])
|
|
256
|
+
|
|
257
|
+
## [1.3.0] - 2022-08-04
|
|
258
|
+
|
|
259
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.3.0
|
|
260
|
+
|
|
261
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.2.0...v1.3.0
|
|
262
|
+
|
|
263
|
+
### Added
|
|
264
|
+
|
|
265
|
+
* Top-level span being tagged to avoid duplicate computation ([#2138][])
|
|
266
|
+
|
|
267
|
+
### Changed
|
|
268
|
+
|
|
269
|
+
* ActiveSupport: Optionally disable tracing with Rails ([@marcotc][])
|
|
270
|
+
* Rack: Resource overwritten by nested application ([#2180][])
|
|
271
|
+
* Rake: Explicit task instrumentation to prevent memory bloat ([#2174][])
|
|
272
|
+
* Sidekiq and DelayedJob: Add spans to improve tracing ([#2170][])
|
|
273
|
+
* Drop Profiling support for Ruby 2.1 ([#2140][])
|
|
274
|
+
* Migrate `libddprof` dependency to `libdatadog` ([#2061][])
|
|
275
|
+
|
|
276
|
+
### Fixed
|
|
277
|
+
|
|
278
|
+
* Fix OpenTracing propagation with TraceDigest ([#2201][])
|
|
279
|
+
* Fix SpanFilter dropping descendant spans ([#2074][])
|
|
280
|
+
* Redis: Fix Empty pipelined span being dropped ([#757][]) ([@sponomarev][])
|
|
281
|
+
* Fix profiler not restarting on `Process.daemon` ([#2150][])
|
|
282
|
+
* Fix setting service from Rails configuration ([#2118][]) ([@agrobbin][])
|
|
283
|
+
* Some document and development improvement ([@marocchino][]) ([@yukimurasawa][])
|
|
284
|
+
|
|
5
285
|
## [1.2.0] - 2022-07-11
|
|
6
286
|
|
|
7
287
|
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.2.0
|
|
@@ -2043,7 +2323,22 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
|
|
|
2043
2323
|
|
|
2044
2324
|
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
|
2045
2325
|
|
|
2046
|
-
[Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v1.1
|
|
2326
|
+
[Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v1.10.1...master
|
|
2327
|
+
[1.10.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.10.0...v1.10.1
|
|
2328
|
+
[1.10.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.9.0...v1.10.0
|
|
2329
|
+
[1.9.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.8.0...v1.9.0
|
|
2330
|
+
[1.8.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.7.0...v1.8.0
|
|
2331
|
+
[1.7.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.6.1...v1.7.0
|
|
2332
|
+
[1.6.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.6.0...v1.6.1
|
|
2333
|
+
[1.6.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.5.2...v1.6.0
|
|
2334
|
+
[1.5.2]: https://github.com/DataDog/dd-trace-rb/compare/v1.5.1...v1.5.2
|
|
2335
|
+
[1.5.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.5.0...v1.5.1
|
|
2336
|
+
[1.5.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.2...v1.5.0
|
|
2337
|
+
[1.4.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.1...v1.4.2
|
|
2338
|
+
[1.4.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.0...v1.4.1
|
|
2339
|
+
[1.4.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.3.0...v1.4.0
|
|
2340
|
+
[1.3.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.2.0...v1.3.0
|
|
2341
|
+
[1.2.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.1.0...v1.2.0
|
|
2047
2342
|
[1.1.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0...v1.1.0
|
|
2048
2343
|
[1.0.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0.beta2...v1.0.0
|
|
2049
2344
|
[1.0.0.beta2]: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0.beta1...v1.0.0.beta2
|
|
@@ -2354,6 +2649,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
|
|
2354
2649
|
[#753]: https://github.com/DataDog/dd-trace-rb/issues/753
|
|
2355
2650
|
[#754]: https://github.com/DataDog/dd-trace-rb/issues/754
|
|
2356
2651
|
[#756]: https://github.com/DataDog/dd-trace-rb/issues/756
|
|
2652
|
+
[#757]: https://github.com/DataDog/dd-trace-rb/issues/757
|
|
2357
2653
|
[#760]: https://github.com/DataDog/dd-trace-rb/issues/760
|
|
2358
2654
|
[#762]: https://github.com/DataDog/dd-trace-rb/issues/762
|
|
2359
2655
|
[#765]: https://github.com/DataDog/dd-trace-rb/issues/765
|
|
@@ -2892,18 +3188,153 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
|
|
2892
3188
|
[#2028]: https://github.com/DataDog/dd-trace-rb/issues/2028
|
|
2893
3189
|
[#2054]: https://github.com/DataDog/dd-trace-rb/issues/2054
|
|
2894
3190
|
[#2059]: https://github.com/DataDog/dd-trace-rb/issues/2059
|
|
3191
|
+
[#2061]: https://github.com/DataDog/dd-trace-rb/issues/2061
|
|
3192
|
+
[#2062]: https://github.com/DataDog/dd-trace-rb/issues/2062
|
|
2895
3193
|
[#2066]: https://github.com/DataDog/dd-trace-rb/issues/2066
|
|
2896
3194
|
[#2069]: https://github.com/DataDog/dd-trace-rb/issues/2069
|
|
2897
3195
|
[#2070]: https://github.com/DataDog/dd-trace-rb/issues/2070
|
|
3196
|
+
[#2074]: https://github.com/DataDog/dd-trace-rb/issues/2074
|
|
2898
3197
|
[#2076]: https://github.com/DataDog/dd-trace-rb/issues/2076
|
|
2899
3198
|
[#2079]: https://github.com/DataDog/dd-trace-rb/issues/2079
|
|
2900
3199
|
[#2082]: https://github.com/DataDog/dd-trace-rb/issues/2082
|
|
2901
3200
|
[#2096]: https://github.com/DataDog/dd-trace-rb/issues/2096
|
|
2902
3201
|
[#2097]: https://github.com/DataDog/dd-trace-rb/issues/2097
|
|
3202
|
+
[#2101]: https://github.com/DataDog/dd-trace-rb/issues/2101
|
|
2903
3203
|
[#2110]: https://github.com/DataDog/dd-trace-rb/issues/2110
|
|
2904
3204
|
[#2113]: https://github.com/DataDog/dd-trace-rb/issues/2113
|
|
3205
|
+
[#2118]: https://github.com/DataDog/dd-trace-rb/issues/2118
|
|
2905
3206
|
[#2125]: https://github.com/DataDog/dd-trace-rb/issues/2125
|
|
3207
|
+
[#2128]: https://github.com/DataDog/dd-trace-rb/issues/2128
|
|
2906
3208
|
[#2134]: https://github.com/DataDog/dd-trace-rb/issues/2134
|
|
3209
|
+
[#2138]: https://github.com/DataDog/dd-trace-rb/issues/2138
|
|
3210
|
+
[#2140]: https://github.com/DataDog/dd-trace-rb/issues/2140
|
|
3211
|
+
[#2150]: https://github.com/DataDog/dd-trace-rb/issues/2150
|
|
3212
|
+
[#2153]: https://github.com/DataDog/dd-trace-rb/issues/2153
|
|
3213
|
+
[#2158]: https://github.com/DataDog/dd-trace-rb/issues/2158
|
|
3214
|
+
[#2162]: https://github.com/DataDog/dd-trace-rb/issues/2162
|
|
3215
|
+
[#2163]: https://github.com/DataDog/dd-trace-rb/issues/2163
|
|
3216
|
+
[#2170]: https://github.com/DataDog/dd-trace-rb/issues/2170
|
|
3217
|
+
[#2173]: https://github.com/DataDog/dd-trace-rb/issues/2173
|
|
3218
|
+
[#2174]: https://github.com/DataDog/dd-trace-rb/issues/2174
|
|
3219
|
+
[#2180]: https://github.com/DataDog/dd-trace-rb/issues/2180
|
|
3220
|
+
[#2191]: https://github.com/DataDog/dd-trace-rb/issues/2191
|
|
3221
|
+
[#2200]: https://github.com/DataDog/dd-trace-rb/issues/2200
|
|
3222
|
+
[#2201]: https://github.com/DataDog/dd-trace-rb/issues/2201
|
|
3223
|
+
[#2217]: https://github.com/DataDog/dd-trace-rb/issues/2217
|
|
3224
|
+
[#2219]: https://github.com/DataDog/dd-trace-rb/issues/2219
|
|
3225
|
+
[#2229]: https://github.com/DataDog/dd-trace-rb/issues/2229
|
|
3226
|
+
[#2230]: https://github.com/DataDog/dd-trace-rb/issues/2230
|
|
3227
|
+
[#2248]: https://github.com/DataDog/dd-trace-rb/issues/2248
|
|
3228
|
+
[#2250]: https://github.com/DataDog/dd-trace-rb/issues/2250
|
|
3229
|
+
[#2252]: https://github.com/DataDog/dd-trace-rb/issues/2252
|
|
3230
|
+
[#2257]: https://github.com/DataDog/dd-trace-rb/issues/2257
|
|
3231
|
+
[#2258]: https://github.com/DataDog/dd-trace-rb/issues/2258
|
|
3232
|
+
[#2260]: https://github.com/DataDog/dd-trace-rb/issues/2260
|
|
3233
|
+
[#2265]: https://github.com/DataDog/dd-trace-rb/issues/2265
|
|
3234
|
+
[#2267]: https://github.com/DataDog/dd-trace-rb/issues/2267
|
|
3235
|
+
[#2276]: https://github.com/DataDog/dd-trace-rb/issues/2276
|
|
3236
|
+
[#2279]: https://github.com/DataDog/dd-trace-rb/issues/2279
|
|
3237
|
+
[#2283]: https://github.com/DataDog/dd-trace-rb/issues/2283
|
|
3238
|
+
[#2289]: https://github.com/DataDog/dd-trace-rb/issues/2289
|
|
3239
|
+
[#2292]: https://github.com/DataDog/dd-trace-rb/issues/2292
|
|
3240
|
+
[#2293]: https://github.com/DataDog/dd-trace-rb/issues/2293
|
|
3241
|
+
[#2296]: https://github.com/DataDog/dd-trace-rb/issues/2296
|
|
3242
|
+
[#2302]: https://github.com/DataDog/dd-trace-rb/issues/2302
|
|
3243
|
+
[#2306]: https://github.com/DataDog/dd-trace-rb/issues/2306
|
|
3244
|
+
[#2307]: https://github.com/DataDog/dd-trace-rb/issues/2307
|
|
3245
|
+
[#2310]: https://github.com/DataDog/dd-trace-rb/issues/2310
|
|
3246
|
+
[#2311]: https://github.com/DataDog/dd-trace-rb/issues/2311
|
|
3247
|
+
[#2313]: https://github.com/DataDog/dd-trace-rb/issues/2313
|
|
3248
|
+
[#2316]: https://github.com/DataDog/dd-trace-rb/issues/2316
|
|
3249
|
+
[#2317]: https://github.com/DataDog/dd-trace-rb/issues/2317
|
|
3250
|
+
[#2318]: https://github.com/DataDog/dd-trace-rb/issues/2318
|
|
3251
|
+
[#2319]: https://github.com/DataDog/dd-trace-rb/issues/2319
|
|
3252
|
+
[#2321]: https://github.com/DataDog/dd-trace-rb/issues/2321
|
|
3253
|
+
[#2324]: https://github.com/DataDog/dd-trace-rb/issues/2324
|
|
3254
|
+
[#2328]: https://github.com/DataDog/dd-trace-rb/issues/2328
|
|
3255
|
+
[#2330]: https://github.com/DataDog/dd-trace-rb/issues/2330
|
|
3256
|
+
[#2331]: https://github.com/DataDog/dd-trace-rb/issues/2331
|
|
3257
|
+
[#2335]: https://github.com/DataDog/dd-trace-rb/issues/2335
|
|
3258
|
+
[#2339]: https://github.com/DataDog/dd-trace-rb/issues/2339
|
|
3259
|
+
[#2352]: https://github.com/DataDog/dd-trace-rb/issues/2352
|
|
3260
|
+
[#2362]: https://github.com/DataDog/dd-trace-rb/issues/2362
|
|
3261
|
+
[#2363]: https://github.com/DataDog/dd-trace-rb/issues/2363
|
|
3262
|
+
[#2365]: https://github.com/DataDog/dd-trace-rb/issues/2365
|
|
3263
|
+
[#2367]: https://github.com/DataDog/dd-trace-rb/issues/2367
|
|
3264
|
+
[#2378]: https://github.com/DataDog/dd-trace-rb/issues/2378
|
|
3265
|
+
[#2382]: https://github.com/DataDog/dd-trace-rb/issues/2382
|
|
3266
|
+
[#2390]: https://github.com/DataDog/dd-trace-rb/issues/2390
|
|
3267
|
+
[#2392]: https://github.com/DataDog/dd-trace-rb/issues/2392
|
|
3268
|
+
[#2393]: https://github.com/DataDog/dd-trace-rb/issues/2393
|
|
3269
|
+
[#2394]: https://github.com/DataDog/dd-trace-rb/issues/2394
|
|
3270
|
+
[#2413]: https://github.com/DataDog/dd-trace-rb/issues/2413
|
|
3271
|
+
[#2419]: https://github.com/DataDog/dd-trace-rb/issues/2419
|
|
3272
|
+
[#2420]: https://github.com/DataDog/dd-trace-rb/issues/2420
|
|
3273
|
+
[#2428]: https://github.com/DataDog/dd-trace-rb/issues/2428
|
|
3274
|
+
[#2435]: https://github.com/DataDog/dd-trace-rb/issues/2435
|
|
3275
|
+
[#2451]: https://github.com/DataDog/dd-trace-rb/issues/2451
|
|
3276
|
+
[#2453]: https://github.com/DataDog/dd-trace-rb/issues/2453
|
|
3277
|
+
[#2454]: https://github.com/DataDog/dd-trace-rb/issues/2454
|
|
3278
|
+
[#2455]: https://github.com/DataDog/dd-trace-rb/issues/2455
|
|
3279
|
+
[#2458]: https://github.com/DataDog/dd-trace-rb/issues/2458
|
|
3280
|
+
[#2459]: https://github.com/DataDog/dd-trace-rb/issues/2459
|
|
3281
|
+
[#2460]: https://github.com/DataDog/dd-trace-rb/issues/2460
|
|
3282
|
+
[#2461]: https://github.com/DataDog/dd-trace-rb/issues/2461
|
|
3283
|
+
[#2463]: https://github.com/DataDog/dd-trace-rb/issues/2463
|
|
3284
|
+
[#2464]: https://github.com/DataDog/dd-trace-rb/issues/2464
|
|
3285
|
+
[#2466]: https://github.com/DataDog/dd-trace-rb/issues/2466
|
|
3286
|
+
[#2469]: https://github.com/DataDog/dd-trace-rb/issues/2469
|
|
3287
|
+
[#2470]: https://github.com/DataDog/dd-trace-rb/issues/2470
|
|
3288
|
+
[#2473]: https://github.com/DataDog/dd-trace-rb/issues/2473
|
|
3289
|
+
[#2485]: https://github.com/DataDog/dd-trace-rb/issues/2485
|
|
3290
|
+
[#2489]: https://github.com/DataDog/dd-trace-rb/issues/2489
|
|
3291
|
+
[#2493]: https://github.com/DataDog/dd-trace-rb/issues/2493
|
|
3292
|
+
[#2496]: https://github.com/DataDog/dd-trace-rb/issues/2496
|
|
3293
|
+
[#2501]: https://github.com/DataDog/dd-trace-rb/issues/2501
|
|
3294
|
+
[#2504]: https://github.com/DataDog/dd-trace-rb/issues/2504
|
|
3295
|
+
[#2512]: https://github.com/DataDog/dd-trace-rb/issues/2512
|
|
3296
|
+
[#2522]: https://github.com/DataDog/dd-trace-rb/issues/2522
|
|
3297
|
+
[#2526]: https://github.com/DataDog/dd-trace-rb/issues/2526
|
|
3298
|
+
[#2530]: https://github.com/DataDog/dd-trace-rb/issues/2530
|
|
3299
|
+
[#2531]: https://github.com/DataDog/dd-trace-rb/issues/2531
|
|
3300
|
+
[#2541]: https://github.com/DataDog/dd-trace-rb/issues/2541
|
|
3301
|
+
[#2543]: https://github.com/DataDog/dd-trace-rb/issues/2543
|
|
3302
|
+
[#2557]: https://github.com/DataDog/dd-trace-rb/issues/2557
|
|
3303
|
+
[#2562]: https://github.com/DataDog/dd-trace-rb/issues/2562
|
|
3304
|
+
[#2573]: https://github.com/DataDog/dd-trace-rb/issues/2573
|
|
3305
|
+
[#2576]: https://github.com/DataDog/dd-trace-rb/issues/2576
|
|
3306
|
+
[#2580]: https://github.com/DataDog/dd-trace-rb/issues/2580
|
|
3307
|
+
[#2586]: https://github.com/DataDog/dd-trace-rb/issues/2586
|
|
3308
|
+
[#2590]: https://github.com/DataDog/dd-trace-rb/issues/2590
|
|
3309
|
+
[#2591]: https://github.com/DataDog/dd-trace-rb/issues/2591
|
|
3310
|
+
[#2592]: https://github.com/DataDog/dd-trace-rb/issues/2592
|
|
3311
|
+
[#2594]: https://github.com/DataDog/dd-trace-rb/issues/2594
|
|
3312
|
+
[#2595]: https://github.com/DataDog/dd-trace-rb/issues/2595
|
|
3313
|
+
[#2598]: https://github.com/DataDog/dd-trace-rb/issues/2598
|
|
3314
|
+
[#2599]: https://github.com/DataDog/dd-trace-rb/issues/2599
|
|
3315
|
+
[#2600]: https://github.com/DataDog/dd-trace-rb/issues/2600
|
|
3316
|
+
[#2601]: https://github.com/DataDog/dd-trace-rb/issues/2601
|
|
3317
|
+
[#2605]: https://github.com/DataDog/dd-trace-rb/issues/2605
|
|
3318
|
+
[#2606]: https://github.com/DataDog/dd-trace-rb/issues/2606
|
|
3319
|
+
[#2607]: https://github.com/DataDog/dd-trace-rb/issues/2607
|
|
3320
|
+
[#2608]: https://github.com/DataDog/dd-trace-rb/issues/2608
|
|
3321
|
+
[#2612]: https://github.com/DataDog/dd-trace-rb/issues/2612
|
|
3322
|
+
[#2613]: https://github.com/DataDog/dd-trace-rb/issues/2613
|
|
3323
|
+
[#2614]: https://github.com/DataDog/dd-trace-rb/issues/2614
|
|
3324
|
+
[#2618]: https://github.com/DataDog/dd-trace-rb/issues/2618
|
|
3325
|
+
[#2619]: https://github.com/DataDog/dd-trace-rb/issues/2619
|
|
3326
|
+
[#2634]: https://github.com/DataDog/dd-trace-rb/issues/2634
|
|
3327
|
+
[#2635]: https://github.com/DataDog/dd-trace-rb/issues/2635
|
|
3328
|
+
[#2642]: https://github.com/DataDog/dd-trace-rb/issues/2642
|
|
3329
|
+
[#2648]: https://github.com/DataDog/dd-trace-rb/issues/2648
|
|
3330
|
+
[#2649]: https://github.com/DataDog/dd-trace-rb/issues/2649
|
|
3331
|
+
[#2657]: https://github.com/DataDog/dd-trace-rb/issues/2657
|
|
3332
|
+
[#2659]: https://github.com/DataDog/dd-trace-rb/issues/2659
|
|
3333
|
+
[#2662]: https://github.com/DataDog/dd-trace-rb/issues/2662
|
|
3334
|
+
[#2663]: https://github.com/DataDog/dd-trace-rb/issues/2663
|
|
3335
|
+
[#2665]: https://github.com/DataDog/dd-trace-rb/issues/2665
|
|
3336
|
+
[#2668]: https://github.com/DataDog/dd-trace-rb/issues/2668
|
|
3337
|
+
[#2679]: https://github.com/DataDog/dd-trace-rb/issues/2679
|
|
2907
3338
|
[@AdrianLC]: https://github.com/AdrianLC
|
|
2908
3339
|
[@Azure7111]: https://github.com/Azure7111
|
|
2909
3340
|
[@BabyGroot]: https://github.com/BabyGroot
|
|
@@ -2942,13 +3373,16 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
|
|
2942
3373
|
[@brafales]: https://github.com/brafales
|
|
2943
3374
|
[@bzf]: https://github.com/bzf
|
|
2944
3375
|
[@callumj]: https://github.com/callumj
|
|
3376
|
+
[@caramcc]: https://github.com/caramcc
|
|
2945
3377
|
[@carlallen]: https://github.com/carlallen
|
|
2946
3378
|
[@chychkan]: https://github.com/chychkan
|
|
2947
3379
|
[@cjford]: https://github.com/cjford
|
|
2948
3380
|
[@ck3g]: https://github.com/ck3g
|
|
2949
3381
|
[@components]: https://github.com/components
|
|
3382
|
+
[@coneill-enhance]: https://github.com/coneill-enhance
|
|
2950
3383
|
[@cswatt]: https://github.com/cswatt
|
|
2951
3384
|
[@cwoodcox]: https://github.com/cwoodcox
|
|
3385
|
+
[@danhodge]: https://github.com/danhodge
|
|
2952
3386
|
[@dasch]: https://github.com/dasch
|
|
2953
3387
|
[@dim]: https://github.com/dim
|
|
2954
3388
|
[@dirk]: https://github.com/dirk
|
|
@@ -2996,6 +3430,8 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
|
|
2996
3430
|
[@link04]: https://github.com/link04
|
|
2997
3431
|
[@lloeki]: https://github.com/lloeki
|
|
2998
3432
|
[@mantrala]: https://github.com/mantrala
|
|
3433
|
+
[@marcotc]: https://github.com/marcotc
|
|
3434
|
+
[@marocchino]: https://github.com/marocchino
|
|
2999
3435
|
[@masato-hi]: https://github.com/masato-hi
|
|
3000
3436
|
[@matchbookmac]: https://github.com/matchbookmac
|
|
3001
3437
|
[@mberlanda]: https://github.com/mberlanda
|
|
@@ -3023,10 +3459,12 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
|
|
3023
3459
|
[@saturnflyer]: https://github.com/saturnflyer
|
|
3024
3460
|
[@sco11morgan]: https://github.com/sco11morgan
|
|
3025
3461
|
[@senny]: https://github.com/senny
|
|
3462
|
+
[@seuros]: https://github.com/seuros
|
|
3026
3463
|
[@shayonj]: https://github.com/shayonj
|
|
3027
3464
|
[@sinsoku]: https://github.com/sinsoku
|
|
3028
3465
|
[@skcc321]: https://github.com/skcc321
|
|
3029
3466
|
[@soulcutter]: https://github.com/soulcutter
|
|
3467
|
+
[@sponomarev]: https://github.com/sponomarev
|
|
3030
3468
|
[@stefanahman]: https://github.com/stefanahman
|
|
3031
3469
|
[@steveh]: https://github.com/steveh
|
|
3032
3470
|
[@stormsilver]: https://github.com/stormsilver
|
|
@@ -3041,4 +3479,6 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
|
|
3041
3479
|
[@vramaiah]: https://github.com/vramaiah
|
|
3042
3480
|
[@walterking]: https://github.com/walterking
|
|
3043
3481
|
[@y-yagi]: https://github.com/y-yagi
|
|
3044
|
-
[@
|
|
3482
|
+
[@yujideveloper]: https://github.com/yujideveloper
|
|
3483
|
+
[@yukimurasawa]: https://github.com/yukimurasawa
|
|
3484
|
+
[@zachmccormick]: https://github.com/zachmccormick
|
data/LICENSE-3rdparty.csv
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
Component,Origin,License,Copyright
|
|
2
2
|
lib/datadog/core/vendor/multipart-post,https://github.com/socketry/multipart-post,MIT,"Copyright (c) 2007-2013 Nick Sieger."
|
|
3
3
|
lib/datadog/tracing/contrib/active_record/vendor,https://github.com/rails/rails/,MIT,"Copyright (c) 2005-2018 David Heinemeier Hansson"
|
|
4
|
+
lib/datadog/tracing/contrib/utils/quantization/http.rb,https://github.com/ruby/uri,BSD-2-Clause,"Copyright (C) 1993-2013 Yukihiro Matsumoto. All rights reserved."
|
|
4
5
|
ext/ddtrace_profiling_native_extension/private_vm_api_access,https://github.com/ruby/ruby,BSD-2-Clause,"Copyright (C) 1993-2013 Yukihiro Matsumoto. All rights reserved."
|
|
6
|
+
msgpack,https://rubygems.org/gems/msgpack,Apache-2.0,"Copyright (c) 2008-2015 Sadayuki Furuhashi"
|
|
7
|
+
debase-ruby_core_source,https://rubygems.org/gems/debase-ruby_core_source,MIT for gem and BSD-2-Clause for Ruby sources,"Copyright (c) 2012 Gabriel Horner. Files from Ruby sources are Copyright (C) 1993-2013 Yukihiro Matsumoto. All rights reserved."
|
|
8
|
+
lib/datadog/core/vendor/ipaddr,https://github.com/ruby/ipaddr/blob/master/lib/ipaddr.rb,BSD 2-Clause "Simplified" License,"Copyright (c) 2002 Hajimu UMEMOTO <ume@mahoroba.org> Copyright (c) 2007-2017 Akinori MUSHA <knu@iDaemons.org>"
|
data/README.md
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
***Version 1.0.0 has recently been released. Check out our [upgrade guide](https://github.com/DataDog/dd-trace-rb/blob/master/docs/UpgradeGuide.md#from-0x-to-10) for more details.***
|
|
2
|
-
|
|
3
1
|
# Datadog Trace Client
|
|
4
2
|
|
|
5
3
|
[](https://rubygems.org/gems/ddtrace/)
|
|
@@ -12,6 +10,8 @@ databases and microservices so that developers have great visiblity into bottlen
|
|
|
12
10
|
|
|
13
11
|
## Getting started
|
|
14
12
|
|
|
13
|
+
**If you're upgrading from a 0.x version, check out our [upgrade guide](https://github.com/DataDog/dd-trace-rb/blob/master/docs/UpgradeGuide.md#from-0x-to-10).**
|
|
14
|
+
|
|
15
15
|
For a basic product overview, check out our [setup documentation][setup docs].
|
|
16
16
|
|
|
17
17
|
For installation, configuration, and details about using the API, check out our [API documentation][api docs] and [gem documentation][gem docs].
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
// This idea was shamelessly stolen from @lloeki's work in https://github.com/rubyjs/mini_racer/pull/179, big thanks!
|
|
21
21
|
//
|
|
22
22
|
// Extra note: Currently (May 2022), that we know of, the profiling native extension only exposes one potentially
|
|
23
|
-
// problematic symbol: `rust_eh_personality` (coming from
|
|
23
|
+
// problematic symbol: `rust_eh_personality` (coming from libdatadog).
|
|
24
24
|
// Future versions of Rust have been patched not to expose this
|
|
25
25
|
// (see https://github.com/rust-lang/rust/pull/95604#issuecomment-1108563434) so we may want to revisit the need
|
|
26
26
|
// for this loader in the future, and perhaps delete it if we no longer require its services :)
|
|
@@ -29,10 +29,17 @@
|
|
|
29
29
|
#define RTLD_DEEPBIND 0
|
|
30
30
|
#endif
|
|
31
31
|
|
|
32
|
+
// Used to mark function arguments that are deliberately left unused
|
|
33
|
+
#ifdef __GNUC__
|
|
34
|
+
#define DDTRACE_UNUSED __attribute__((unused))
|
|
35
|
+
#else
|
|
36
|
+
#define DDTRACE_UNUSED
|
|
37
|
+
#endif
|
|
38
|
+
|
|
32
39
|
static VALUE ok_symbol = Qnil; // :ok in Ruby
|
|
33
40
|
static VALUE error_symbol = Qnil; // :error in Ruby
|
|
34
41
|
|
|
35
|
-
static VALUE _native_load(VALUE self, VALUE ruby_path, VALUE ruby_init_name);
|
|
42
|
+
static VALUE _native_load(DDTRACE_UNUSED VALUE self, VALUE ruby_path, VALUE ruby_init_name);
|
|
36
43
|
static bool failed_to_load(void *handle, VALUE *failure_details);
|
|
37
44
|
static bool incompatible_library(void *handle, VALUE *failure_details);
|
|
38
45
|
static bool failed_to_initialize(void *handle, char *init_name, VALUE *failure_details);
|
|
@@ -51,7 +58,7 @@ void DDTRACE_EXPORT Init_ddtrace_profiling_loader(void) {
|
|
|
51
58
|
error_symbol = ID2SYM(rb_intern_const("error"));
|
|
52
59
|
}
|
|
53
60
|
|
|
54
|
-
static VALUE _native_load(VALUE self, VALUE ruby_path, VALUE ruby_init_name) {
|
|
61
|
+
static VALUE _native_load(DDTRACE_UNUSED VALUE self, VALUE ruby_path, VALUE ruby_init_name) {
|
|
55
62
|
Check_Type(ruby_path, T_STRING);
|
|
56
63
|
Check_Type(ruby_init_name, T_STRING);
|
|
57
64
|
|
|
@@ -85,7 +92,16 @@ static bool failed_to_load(void *handle, VALUE *failure_details) {
|
|
|
85
92
|
static bool incompatible_library(void *handle, VALUE *failure_details) {
|
|
86
93
|
// The library being loaded may be linked to a different libruby than the current executing Ruby.
|
|
87
94
|
// We check if this is the case by checking if a well-known symbol resolves to a common address.
|
|
88
|
-
|
|
95
|
+
|
|
96
|
+
void *xmalloc_from_library = dlsym(handle, "ruby_xmalloc");
|
|
97
|
+
|
|
98
|
+
if (xmalloc_from_library == NULL) {
|
|
99
|
+
// This happens when ruby is built without a `libruby.so` by using `--disable-shared` at compilation time.
|
|
100
|
+
// In this situation, no conflict between libruby version is possible.
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
if (xmalloc_from_library != &ruby_xmalloc) {
|
|
89
105
|
*failure_details = rb_str_new_cstr("library was compiled and linked to a different Ruby version");
|
|
90
106
|
unload_failed_library(handle);
|
|
91
107
|
return true;
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
# typed: ignore
|
|
2
|
-
|
|
3
1
|
# rubocop:disable Style/StderrPuts
|
|
4
2
|
# rubocop:disable Style/GlobalVars
|
|
5
3
|
|
|
@@ -24,7 +22,17 @@ def add_compiler_flag(flag)
|
|
|
24
22
|
end
|
|
25
23
|
end
|
|
26
24
|
|
|
27
|
-
#
|
|
25
|
+
# Because we can't control what compiler versions our customers use, shipping with -Werror by default is a no-go.
|
|
26
|
+
# But we can enable it in CI, so that we quickly spot any new warnings that just got introduced.
|
|
27
|
+
add_compiler_flag '-Werror' if ENV['DDTRACE_CI'] == 'true'
|
|
28
|
+
|
|
29
|
+
# Older gcc releases may not default to C99 and we need to ask for this. This is also used:
|
|
30
|
+
# * by upstream Ruby -- search for gnu99 in the codebase
|
|
31
|
+
# * by msgpack, another ddtrace dependency
|
|
32
|
+
# (https://github.com/msgpack/msgpack-ruby/blob/18ce08f6d612fe973843c366ac9a0b74c4e50599/ext/msgpack/extconf.rb#L8)
|
|
33
|
+
add_compiler_flag '-std=gnu99'
|
|
34
|
+
|
|
35
|
+
# Gets really noisy when we include the MJIT header, let's omit it (TODO: Use #pragma GCC diagnostic instead?)
|
|
28
36
|
add_compiler_flag '-Wno-unused-function'
|
|
29
37
|
|
|
30
38
|
# Allow defining variables at any point in a function
|
|
@@ -34,6 +42,9 @@ add_compiler_flag '-Wno-declaration-after-statement'
|
|
|
34
42
|
# cause a segfault later. Let's ensure that never happens.
|
|
35
43
|
add_compiler_flag '-Werror-implicit-function-declaration'
|
|
36
44
|
|
|
45
|
+
# Warn on unused parameters to functions. Use `DDTRACE_UNUSED` to mark things as known-to-not-be-used.
|
|
46
|
+
add_compiler_flag '-Wunused-parameter'
|
|
47
|
+
|
|
37
48
|
# The native extension is not intended to expose any symbols/functions for other native libraries to use;
|
|
38
49
|
# the sole exception being `Init_ddtrace_profiling_loader` which needs to be visible for Ruby to call it when
|
|
39
50
|
# it `dlopen`s the library.
|
|
@@ -42,6 +53,13 @@ add_compiler_flag '-Werror-implicit-function-declaration'
|
|
|
42
53
|
# For more details see https://gcc.gnu.org/wiki/Visibility
|
|
43
54
|
add_compiler_flag '-fvisibility=hidden'
|
|
44
55
|
|
|
56
|
+
# Avoid legacy C definitions
|
|
57
|
+
add_compiler_flag '-Wold-style-definition'
|
|
58
|
+
|
|
59
|
+
# Enable all other compiler warnings
|
|
60
|
+
add_compiler_flag '-Wall'
|
|
61
|
+
add_compiler_flag '-Wextra'
|
|
62
|
+
|
|
45
63
|
# Tag the native extension library with the Ruby version and Ruby platform.
|
|
46
64
|
# This makes it easier for development (avoids "oops I forgot to rebuild when I switched my Ruby") and ensures that
|
|
47
65
|
# the wrong library is never loaded.
|