datadog 2.46.0 → 2.48.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 +56 -2
- data/LICENSE-3rdparty.csv +1 -0
- data/ext/datadog_profiling_native_extension/collectors_stack.c +143 -86
- data/ext/datadog_profiling_native_extension/collectors_stack.h +9 -1
- data/ext/datadog_profiling_native_extension/collectors_thread_context.c +6 -1
- data/ext/datadog_profiling_native_extension/extconf.rb +7 -13
- data/ext/datadog_profiling_native_extension/native_extension_helpers.rb +3 -3
- data/ext/datadog_profiling_native_extension/private_vm_api_access.c +67 -14
- data/ext/datadog_profiling_native_extension/private_vm_api_access.h +8 -1
- data/ext/datadog_profiling_native_extension/profiling.c +1 -1
- data/ext/libdatadog_api/extconf.rb +9 -7
- data/ext/libdatadog_api/trace_exporter.c +34 -7
- data/ext/libdatadog_extconf_helpers.rb +2 -2
- data/lib/datadog/ai_guard/component.rb +1 -1
- data/lib/datadog/ai_guard/contrib/rack/request_middleware.rb +1 -9
- data/lib/datadog/ai_guard/contrib/rails/patcher.rb +1 -1
- data/lib/datadog/ai_guard/contrib/ruby_llm/message_adapter.rb +1 -1
- data/lib/datadog/ai_guard/contrib/ruby_llm/redaction_change_set.rb +3 -3
- data/lib/datadog/ai_guard/evaluation/client.rb +3 -3
- data/lib/datadog/ai_guard/evaluation.rb +2 -2
- data/lib/datadog/ai_guard/http_client.rb +3 -2
- data/lib/datadog/ai_guard/redaction.rb +1 -1
- data/lib/datadog/appsec/api_security/endpoint_collection/rails_collector.rb +1 -1
- data/lib/datadog/appsec/assets/waf_rules/README.md +3 -3
- data/lib/datadog/appsec/assets/waf_rules/recommended.json +5366 -1517
- data/lib/datadog/appsec/assets/waf_rules/strict.json +2 -2
- data/lib/datadog/appsec/autoload.rb +1 -1
- data/lib/datadog/appsec/component.rb +1 -1
- data/lib/datadog/appsec/compressed_json.rb +1 -1
- data/lib/datadog/appsec/configuration.rb +3 -3
- data/lib/datadog/appsec/context.rb +1 -1
- data/lib/datadog/appsec/contrib/active_record/instrumentation.rb +11 -1
- data/lib/datadog/appsec/contrib/active_record/patcher.rb +12 -4
- data/lib/datadog/appsec/contrib/aws_lambda/gateway/watcher.rb +2 -2
- data/lib/datadog/appsec/contrib/aws_lambda/waf_addresses.rb +1 -1
- data/lib/datadog/appsec/contrib/devise/configuration.rb +1 -1
- data/lib/datadog/appsec/contrib/devise/patches/signin_tracking_patch.rb +1 -1
- data/lib/datadog/appsec/contrib/devise/patches/signup_tracking_patch.rb +1 -1
- data/lib/datadog/appsec/contrib/devise/tracking_middleware.rb +1 -1
- data/lib/datadog/appsec/contrib/excon/ssrf_detection_middleware.rb +1 -1
- data/lib/datadog/appsec/contrib/faraday/ssrf_detection_middleware.rb +1 -1
- data/lib/datadog/appsec/contrib/graphql/gateway/multiplex.rb +7 -7
- data/lib/datadog/appsec/contrib/graphql/gateway/watcher.rb +1 -1
- data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +3 -3
- data/lib/datadog/appsec/contrib/rack/request_middleware.rb +5 -5
- data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +31 -4
- data/lib/datadog/appsec/contrib/rails/patcher.rb +2 -2
- data/lib/datadog/appsec/contrib/rails/patches/render_to_body_patch.rb +8 -7
- data/lib/datadog/appsec/contrib/rest_client/request_ssrf_detection_patch.rb +1 -1
- data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +17 -5
- data/lib/datadog/appsec/contrib/sinatra/patcher.rb +1 -1
- data/lib/datadog/appsec/contrib/sinatra/patches/json_patch.rb +8 -7
- data/lib/datadog/appsec/metrics/collector.rb +5 -5
- data/lib/datadog/appsec/metrics/telemetry_exporter.rb +3 -3
- data/lib/datadog/appsec/monitor/gateway/watcher.rb +2 -2
- data/lib/datadog/appsec/processor/rule_loader.rb +1 -1
- data/lib/datadog/appsec/response.rb +1 -1
- data/lib/datadog/appsec/security_engine/engine.rb +8 -7
- data/lib/datadog/appsec/security_engine/runner.rb +2 -2
- data/lib/datadog/appsec/trace_keeper.rb +1 -1
- data/lib/datadog/appsec.rb +1 -1
- data/lib/datadog/core/configuration/agent_settings_resolver.rb +14 -13
- data/lib/datadog/core/configuration/agentless_settings_resolver.rb +2 -2
- data/lib/datadog/core/configuration/components.rb +12 -11
- data/lib/datadog/core/configuration/components_state.rb +8 -1
- data/lib/datadog/core/configuration/settings.rb +5 -2
- data/lib/datadog/core/configuration/supported_configurations.rb +3 -0
- data/lib/datadog/core/configuration.rb +2 -2
- data/lib/datadog/core/crashtracking/component.rb +1 -1
- data/lib/datadog/core/diagnostics/environment_logger.rb +1 -1
- data/lib/datadog/core/environment/cgroup.rb +2 -2
- data/lib/datadog/core/environment/container.rb +3 -3
- data/lib/datadog/core/metrics/client.rb +6 -6
- data/lib/datadog/core/process_discovery.rb +1 -1
- data/lib/datadog/core/remote/client.rb +44 -3
- data/lib/datadog/core/remote/dispatcher.rb +34 -3
- data/lib/datadog/core/remote/tie/tracing.rb +4 -3
- data/lib/datadog/core/remote/transport/http.rb +2 -2
- data/lib/datadog/core/runtime/metrics.rb +14 -14
- data/lib/datadog/core/semaphore.rb +3 -1
- data/lib/datadog/core/telemetry/event/app_started.rb +9 -9
- data/lib/datadog/core/telemetry/logger.rb +1 -1
- data/lib/datadog/core/telemetry/logging.rb +1 -1
- data/lib/datadog/core/telemetry/request.rb +9 -3
- data/lib/datadog/core/telemetry/transport/http.rb +2 -2
- data/lib/datadog/core/telemetry/worker.rb +1 -1
- data/lib/datadog/core/transport/http/adapters/net.rb +1 -1
- data/lib/datadog/core/transport/http/adapters/unix_socket.rb +1 -1
- data/lib/datadog/core/transport/http/builder.rb +1 -1
- data/lib/datadog/core/transport/http.rb +3 -3
- data/lib/datadog/core/utils/at_fork_monkey_patch.rb +2 -2
- data/lib/datadog/core/workers/async.rb +1 -1
- data/lib/datadog/core/workers/runtime_metrics.rb +2 -2
- data/lib/datadog/data_streams/pathway_context.rb +1 -1
- data/lib/datadog/data_streams/processor.rb +48 -27
- data/lib/datadog/data_streams/transport/http.rb +1 -1
- data/lib/datadog/data_streams.rb +16 -0
- data/lib/datadog/di/capture_expression_evaluator.rb +48 -11
- data/lib/datadog/di/component.rb +73 -2
- data/lib/datadog/di/configuration.rb +19 -0
- data/lib/datadog/di/contrib/active_record.rb +1 -1
- data/lib/datadog/di/el/compiler.rb +4 -4
- data/lib/datadog/di/el/evaluator.rb +247 -43
- data/lib/datadog/di/el/expression.rb +36 -6
- data/lib/datadog/di/error.rb +16 -0
- data/lib/datadog/di/guardrails_telemetry/reason.rb +3 -2
- data/lib/datadog/di/instrumenter.rb +39 -10
- data/lib/datadog/di/probe_notification_builder.rb +58 -10
- data/lib/datadog/di/probe_notifier_worker.rb +1 -1
- data/lib/datadog/di/remote.rb +46 -2
- data/lib/datadog/di/serializer.rb +47 -13
- data/lib/datadog/di.rb +27 -0
- data/lib/datadog/error_tracking/component.rb +1 -1
- data/lib/datadog/error_tracking/configuration.rb +1 -1
- data/lib/datadog/kit/appsec/events/v2.rb +6 -6
- data/lib/datadog/kit/appsec/events.rb +1 -1
- data/lib/datadog/kit/enable_core_dumps.rb +1 -1
- data/lib/datadog/kit/identity.rb +1 -1
- data/lib/datadog/open_feature/activation.rb +26 -1
- data/lib/datadog/open_feature/agentless/configuration_source.rb +94 -15
- data/lib/datadog/open_feature/component.rb +22 -2
- data/lib/datadog/open_feature/configuration/agentless_endpoint.rb +6 -0
- data/lib/datadog/open_feature/configuration.rb +10 -4
- data/lib/datadog/open_feature/evaluation_engine.rb +62 -4
- data/lib/datadog/open_feature/exposures/buffer.rb +4 -0
- data/lib/datadog/open_feature/exposures/reporter.rb +17 -4
- data/lib/datadog/open_feature/exposures/worker.rb +37 -6
- data/lib/datadog/open_feature/flag_evaluation/aggregator.rb +5 -5
- data/lib/datadog/open_feature/flag_evaluation/writer.rb +1 -1
- data/lib/datadog/open_feature/hooks/debug_logging_hook.rb +56 -0
- data/lib/datadog/open_feature/hooks/evaluation_telemetry_opt_out_hook.rb +25 -0
- data/lib/datadog/open_feature/hooks/span_enrichment_hook.rb +2 -2
- data/lib/datadog/open_feature/metrics/flag_eval_metrics.rb +1 -1
- data/lib/datadog/open_feature/native_evaluator.rb +1 -1
- data/lib/datadog/open_feature/noop_evaluator.rb +1 -1
- data/lib/datadog/open_feature/provider.rb +69 -12
- data/lib/datadog/open_feature/remote.rb +8 -1
- data/lib/datadog/open_feature/resolution_details.rb +2 -2
- data/lib/datadog/open_feature/transport.rb +6 -6
- data/lib/datadog/opentelemetry/api/context.rb +3 -3
- data/lib/datadog/opentelemetry/logs.rb +5 -5
- data/lib/datadog/opentelemetry/metrics.rb +3 -3
- data/lib/datadog/opentelemetry/sdk/propagator.rb +3 -3
- data/lib/datadog/opentelemetry/sdk/span_processor.rb +2 -2
- data/lib/datadog/opentelemetry/sdk/trace/span.rb +1 -1
- data/lib/datadog/profiling/collectors/code_provenance.rb +3 -3
- data/lib/datadog/profiling/collectors/cpu_and_wall_time_worker.rb +4 -4
- data/lib/datadog/profiling/collectors/idle_sampling_helper.rb +1 -1
- data/lib/datadog/profiling/collectors/info.rb +37 -6
- data/lib/datadog/profiling/collectors/thread_context.rb +1 -1
- data/lib/datadog/profiling/component.rb +41 -39
- data/lib/datadog/profiling/exporter.rb +4 -6
- data/lib/datadog/profiling/http_transport.rb +3 -3
- data/lib/datadog/profiling/profiler.rb +2 -2
- data/lib/datadog/profiling/scheduler.rb +2 -2
- data/lib/datadog/profiling/tag_builder.rb +1 -1
- data/lib/datadog/symbol_database/extractor.rb +8 -8
- data/lib/datadog/symbol_database/uploader.rb +1 -1
- data/lib/datadog/tracing/buffer.rb +3 -3
- data/lib/datadog/tracing/client_ip.rb +1 -1
- data/lib/datadog/tracing/component.rb +15 -10
- data/lib/datadog/tracing/configuration/dynamic/option.rb +2 -2
- data/lib/datadog/tracing/configuration/ext.rb +2 -0
- data/lib/datadog/tracing/configuration/settings.rb +14 -3
- data/lib/datadog/tracing/context.rb +1 -1
- data/lib/datadog/tracing/context_provider.rb +8 -0
- data/lib/datadog/tracing/contrib/action_cable/instrumentation.rb +2 -2
- data/lib/datadog/tracing/contrib/active_job/data_streams.rb +27 -2
- data/lib/datadog/tracing/contrib/active_record/configuration/resolver.rb +2 -2
- data/lib/datadog/tracing/contrib/active_record/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/active_record/utils.rb +1 -1
- data/lib/datadog/tracing/contrib/active_support/cache/instrumentation.rb +1 -1
- data/lib/datadog/tracing/contrib/active_support/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/active_support/notifications/subscriber.rb +2 -2
- data/lib/datadog/tracing/contrib/active_support/notifications/subscription.rb +2 -2
- data/lib/datadog/tracing/contrib/aws/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/aws/instrumentation.rb +1 -1
- data/lib/datadog/tracing/contrib/dalli/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/dalli/instrumentation.rb +1 -1
- data/lib/datadog/tracing/contrib/delayed_job/plugin.rb +2 -2
- data/lib/datadog/tracing/contrib/elasticsearch/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/elasticsearch/patcher.rb +3 -3
- data/lib/datadog/tracing/contrib/ethon/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/ethon/easy_patch.rb +17 -12
- data/lib/datadog/tracing/contrib/ethon/multi_patch.rb +1 -1
- data/lib/datadog/tracing/contrib/excon/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/excon/middleware.rb +16 -9
- data/lib/datadog/tracing/contrib/faraday/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/faraday/middleware.rb +14 -8
- data/lib/datadog/tracing/contrib/grape/endpoint.rb +4 -4
- data/lib/datadog/tracing/contrib/graphql/patcher.rb +1 -1
- data/lib/datadog/tracing/contrib/graphql/unified_trace.rb +3 -3
- data/lib/datadog/tracing/contrib/grpc/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/client.rb +2 -2
- data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/server.rb +1 -1
- data/lib/datadog/tracing/contrib/grpc.rb +1 -1
- data/lib/datadog/tracing/contrib/hanami/action_tracer.rb +1 -1
- data/lib/datadog/tracing/contrib/hanami/plugin.rb +1 -1
- data/lib/datadog/tracing/contrib/hanami/renderer_policy_tracing.rb +1 -1
- data/lib/datadog/tracing/contrib/hanami/router_tracing.rb +1 -1
- data/lib/datadog/tracing/contrib/http/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/http/instrumentation.rb +21 -6
- data/lib/datadog/tracing/contrib/http.rb +1 -1
- data/lib/datadog/tracing/contrib/httpclient/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/httpclient/instrumentation.rb +14 -8
- data/lib/datadog/tracing/contrib/httprb/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/httprb/instrumentation.rb +14 -8
- data/lib/datadog/tracing/contrib/kafka/instrumentation/consumer.rb +2 -2
- data/lib/datadog/tracing/contrib/kafka/instrumentation/producer.rb +2 -2
- data/lib/datadog/tracing/contrib/karafka/monitor.rb +1 -1
- data/lib/datadog/tracing/contrib/karafka/patcher.rb +1 -1
- data/lib/datadog/tracing/contrib/karafka.rb +1 -1
- data/lib/datadog/tracing/contrib/lograge/patcher.rb +1 -1
- data/lib/datadog/tracing/contrib/mongodb/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/mongodb/parsers.rb +1 -1
- data/lib/datadog/tracing/contrib/mongodb/subscribers.rb +1 -1
- data/lib/datadog/tracing/contrib/mysql2/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/mysql2/instrumentation.rb +3 -3
- data/lib/datadog/tracing/contrib/opensearch/configuration/settings.rb +2 -2
- data/lib/datadog/tracing/contrib/opensearch/patcher.rb +3 -3
- data/lib/datadog/tracing/contrib/pg/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/pg/instrumentation.rb +4 -4
- data/lib/datadog/tracing/contrib/presto/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/presto/instrumentation.rb +4 -4
- data/lib/datadog/tracing/contrib/propagation/sql_comment.rb +1 -1
- data/lib/datadog/tracing/contrib/que/tracer.rb +1 -1
- data/lib/datadog/tracing/contrib/racecar/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/racecar/events/batch.rb +1 -1
- data/lib/datadog/tracing/contrib/racecar/events/message.rb +1 -1
- data/lib/datadog/tracing/contrib/rack/middlewares.rb +3 -3
- data/lib/datadog/tracing/contrib/rack/patcher.rb +1 -1
- data/lib/datadog/tracing/contrib/rails/framework.rb +7 -7
- data/lib/datadog/tracing/contrib/rails/log_injection.rb +1 -1
- data/lib/datadog/tracing/contrib/rails/runner.rb +4 -4
- data/lib/datadog/tracing/contrib/redis/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/redis/quantize.rb +1 -1
- data/lib/datadog/tracing/contrib/redis/tags.rb +1 -1
- data/lib/datadog/tracing/contrib/rest_client/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/rest_client/request_patch.rb +17 -10
- data/lib/datadog/tracing/contrib/sequel/database.rb +1 -1
- data/lib/datadog/tracing/contrib/sequel/dataset.rb +1 -1
- data/lib/datadog/tracing/contrib/shoryuken/tracer.rb +1 -1
- data/lib/datadog/tracing/contrib/sidekiq/client_tracer.rb +2 -2
- data/lib/datadog/tracing/contrib/sidekiq/server_tracer.rb +2 -2
- data/lib/datadog/tracing/contrib/sidekiq.rb +1 -1
- data/lib/datadog/tracing/contrib/sinatra/tracer_middleware.rb +1 -1
- data/lib/datadog/tracing/contrib/status_range_env_parser.rb +1 -1
- data/lib/datadog/tracing/contrib/sucker_punch/instrumentation.rb +1 -1
- data/lib/datadog/tracing/contrib/trilogy/configuration/settings.rb +1 -1
- data/lib/datadog/tracing/contrib/trilogy/instrumentation.rb +3 -3
- data/lib/datadog/tracing/contrib/utils/quantization/http.rb +102 -0
- data/lib/datadog/tracing/contrib/waterdrop/middleware.rb +2 -2
- data/lib/datadog/tracing/contrib/waterdrop.rb +1 -1
- data/lib/datadog/tracing/diagnostics/environment_logger.rb +1 -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 +3 -3
- data/lib/datadog/tracing/distributed/datadog.rb +3 -3
- data/lib/datadog/tracing/distributed/propagation.rb +7 -7
- data/lib/datadog/tracing/distributed/trace_context.rb +1 -1
- data/lib/datadog/tracing/distributed/trace_state/open_telemetry.rb +1 -1
- data/lib/datadog/tracing/otel_thread_context.rb +3 -3
- data/lib/datadog/tracing/pipeline.rb +1 -1
- data/lib/datadog/tracing/remote.rb +50 -19
- data/lib/datadog/tracing/sampling/priority_sampler.rb +1 -1
- data/lib/datadog/tracing/sampling/rule.rb +1 -1
- data/lib/datadog/tracing/sampling/rule_sampler.rb +1 -1
- data/lib/datadog/tracing/sampling/span/rule_parser.rb +2 -2
- data/lib/datadog/tracing/span_operation.rb +1 -1
- data/lib/datadog/tracing/trace_digest.rb +1 -1
- data/lib/datadog/tracing/trace_operation.rb +6 -6
- data/lib/datadog/tracing/tracer.rb +6 -6
- data/lib/datadog/tracing/transport/http/telemetry.rb +1 -1
- data/lib/datadog/tracing/transport/http.rb +2 -2
- data/lib/datadog/tracing/transport/io.rb +1 -1
- data/lib/datadog/tracing/transport/native.rb +3 -3
- data/lib/datadog/tracing/transport/statistics.rb +2 -2
- data/lib/datadog/tracing/transport/telemetry.rb +3 -1
- data/lib/datadog/tracing/transport/trace_formatter.rb +12 -12
- data/lib/datadog/tracing/transport/traces.rb +1 -1
- data/lib/datadog/tracing/utils.rb +1 -1
- data/lib/datadog/tracing/workers.rb +1 -1
- data/lib/datadog/version.rb +1 -1
- metadata +9 -8
- data/lib/datadog/appsec/utils/hash_coercion.rb +0 -23
|
@@ -15,7 +15,7 @@ module Datadog
|
|
|
15
15
|
V4 = Traces::API::Endpoint.new(
|
|
16
16
|
"/v0.4/traces",
|
|
17
17
|
Core::Encoding::MsgpackEncoder,
|
|
18
|
-
service_rates: true
|
|
18
|
+
service_rates: true,
|
|
19
19
|
)
|
|
20
20
|
|
|
21
21
|
V3 = Traces::API::Endpoint.new(
|
|
@@ -35,7 +35,7 @@ module Datadog
|
|
|
35
35
|
Core::Transport::HTTP.build(
|
|
36
36
|
agent_settings: agent_settings,
|
|
37
37
|
logger: logger,
|
|
38
|
-
headers: headers
|
|
38
|
+
headers: headers,
|
|
39
39
|
) do |transport|
|
|
40
40
|
transport.api "v0.4", V4, fallback: "v0.3", default: true
|
|
41
41
|
transport.api "v0.3", V3
|
|
@@ -104,7 +104,7 @@ module Datadog
|
|
|
104
104
|
env: env,
|
|
105
105
|
service: service,
|
|
106
106
|
version: version,
|
|
107
|
-
client_computed_stats: !Datadog.configuration.apm.tracing.enabled
|
|
107
|
+
client_computed_stats: !Datadog.configuration.apm.tracing.enabled,
|
|
108
108
|
)
|
|
109
109
|
@exporter = exporter
|
|
110
110
|
|
|
@@ -208,7 +208,7 @@ module Datadog
|
|
|
208
208
|
@fork_hooks = Core::Utils::AtForkMonkeyPatch.at_fork_blocks(
|
|
209
209
|
before: before_hook,
|
|
210
210
|
parent: parent_hook,
|
|
211
|
-
child: child_hook
|
|
211
|
+
child: child_hook,
|
|
212
212
|
)
|
|
213
213
|
remove_fork_hooks = self.class.send(:fork_hooks_remover, @fork_hooks)
|
|
214
214
|
|
|
@@ -221,7 +221,7 @@ module Datadog
|
|
|
221
221
|
# them through its matching completion stage.
|
|
222
222
|
ObjectSpace.define_finalizer(
|
|
223
223
|
self,
|
|
224
|
-
remove_fork_hooks
|
|
224
|
+
remove_fork_hooks,
|
|
225
225
|
)
|
|
226
226
|
end
|
|
227
227
|
|
|
@@ -25,7 +25,7 @@ module Datadog
|
|
|
25
25
|
|
|
26
26
|
# Send health metrics
|
|
27
27
|
Datadog.health_metrics.send_metrics(
|
|
28
|
-
metrics_for_response(response).values
|
|
28
|
+
metrics_for_response(response).values,
|
|
29
29
|
)
|
|
30
30
|
end
|
|
31
31
|
|
|
@@ -42,7 +42,7 @@ module Datadog
|
|
|
42
42
|
|
|
43
43
|
# Send health metrics
|
|
44
44
|
Datadog.health_metrics.send_metrics(
|
|
45
|
-
metrics_for_exception(exception).values
|
|
45
|
+
metrics_for_exception(exception).values,
|
|
46
46
|
)
|
|
47
47
|
end
|
|
48
48
|
|
|
@@ -21,10 +21,12 @@ module Datadog
|
|
|
21
21
|
chunks_dropped_serialization_error: ["trace_chunks_dropped", ["reason:serialization_error"]],
|
|
22
22
|
chunks_dropped_send_failure: ["trace_chunks_dropped", ["reason:send_failure"]],
|
|
23
23
|
chunks_dropped_payload_too_large: ["trace_chunks_dropped", ["reason:payload_too_large"]],
|
|
24
|
+
chunks_dropped_cancelled: ["trace_chunks_dropped", ["reason:cancelled"]],
|
|
24
25
|
spans_enqueued_for_serialization: ["spans_enqueued_for_serialization", []],
|
|
25
26
|
spans_dropped_serialization_error: ["spans_dropped", ["reason:serialization_error"]],
|
|
26
27
|
spans_dropped_api_error: ["spans_dropped", ["reason:api_error"]],
|
|
27
28
|
spans_dropped_payload_too_large: ["spans_dropped", ["reason:payload_too_large"]],
|
|
29
|
+
spans_dropped_cancelled: ["spans_dropped", ["reason:cancelled"]],
|
|
28
30
|
}.freeze #: Hash[Symbol, [String, Array[String]]]
|
|
29
31
|
|
|
30
32
|
attr_writer :client
|
|
@@ -50,7 +52,7 @@ module Datadog
|
|
|
50
52
|
responses = observations.fetch(:responses_count, 0)
|
|
51
53
|
if responses > 0
|
|
52
54
|
client.inc("tracers", "trace_api.responses", responses,
|
|
53
|
-
tags: @source_tags + ["status_code:#{observations.fetch(:status_code)}"]
|
|
55
|
+
tags: @source_tags + ["status_code:#{observations.fetch(:status_code)}"])
|
|
54
56
|
end
|
|
55
57
|
nil
|
|
56
58
|
rescue
|
|
@@ -101,7 +101,7 @@ module Datadog
|
|
|
101
101
|
|
|
102
102
|
root_span.set_tag(
|
|
103
103
|
Tracing::Metadata::Ext::Sampling::TAG_AGENT_RATE,
|
|
104
|
-
trace.agent_sample_rate
|
|
104
|
+
trace.agent_sample_rate,
|
|
105
105
|
)
|
|
106
106
|
end
|
|
107
107
|
|
|
@@ -110,7 +110,7 @@ module Datadog
|
|
|
110
110
|
|
|
111
111
|
root_span.set_tag(
|
|
112
112
|
Tracing::Metadata::Ext::NET::TAG_HOSTNAME,
|
|
113
|
-
trace.hostname
|
|
113
|
+
trace.hostname,
|
|
114
114
|
)
|
|
115
115
|
end
|
|
116
116
|
|
|
@@ -120,7 +120,7 @@ module Datadog
|
|
|
120
120
|
|
|
121
121
|
root_span.set_tag(
|
|
122
122
|
Tracing::Metadata::Ext::Distributed::TAG_KNUTH_SAMPLING_RATE,
|
|
123
|
-
format("%.6f", (rate * 1e6).round / 1e6).sub(/\.?0+\z/, "")
|
|
123
|
+
format("%.6f", (rate * 1e6).round / 1e6).sub(/\.?0+\z/, ""),
|
|
124
124
|
)
|
|
125
125
|
end
|
|
126
126
|
|
|
@@ -129,7 +129,7 @@ module Datadog
|
|
|
129
129
|
|
|
130
130
|
root_span.set_tag(
|
|
131
131
|
Core::Runtime::Ext::TAG_LANG,
|
|
132
|
-
trace.lang
|
|
132
|
+
trace.lang,
|
|
133
133
|
)
|
|
134
134
|
end
|
|
135
135
|
|
|
@@ -138,7 +138,7 @@ module Datadog
|
|
|
138
138
|
|
|
139
139
|
root_span.set_tag(
|
|
140
140
|
Tracing::Metadata::Ext::Distributed::TAG_ORIGIN,
|
|
141
|
-
trace.origin
|
|
141
|
+
trace.origin,
|
|
142
142
|
)
|
|
143
143
|
end
|
|
144
144
|
|
|
@@ -153,7 +153,7 @@ module Datadog
|
|
|
153
153
|
|
|
154
154
|
root_span.set_tag(
|
|
155
155
|
Tracing::Metadata::Ext::Sampling::TAG_RATE_LIMITER_RATE,
|
|
156
|
-
trace.rate_limiter_rate
|
|
156
|
+
trace.rate_limiter_rate,
|
|
157
157
|
)
|
|
158
158
|
end
|
|
159
159
|
|
|
@@ -162,7 +162,7 @@ module Datadog
|
|
|
162
162
|
|
|
163
163
|
root_span.set_tag(
|
|
164
164
|
Tracing::Metadata::Ext::Sampling::TAG_RULE_SAMPLE_RATE,
|
|
165
|
-
trace.rule_sample_rate
|
|
165
|
+
trace.rule_sample_rate,
|
|
166
166
|
)
|
|
167
167
|
end
|
|
168
168
|
|
|
@@ -171,7 +171,7 @@ module Datadog
|
|
|
171
171
|
|
|
172
172
|
root_span.set_tag(
|
|
173
173
|
Core::Runtime::Ext::TAG_ID,
|
|
174
|
-
trace.runtime_id
|
|
174
|
+
trace.runtime_id,
|
|
175
175
|
)
|
|
176
176
|
end
|
|
177
177
|
|
|
@@ -180,7 +180,7 @@ module Datadog
|
|
|
180
180
|
|
|
181
181
|
root_span.set_tag(
|
|
182
182
|
Tracing::Metadata::Ext::Sampling::TAG_SAMPLE_RATE,
|
|
183
|
-
trace.sample_rate
|
|
183
|
+
trace.sample_rate,
|
|
184
184
|
)
|
|
185
185
|
end
|
|
186
186
|
|
|
@@ -195,7 +195,7 @@ module Datadog
|
|
|
195
195
|
|
|
196
196
|
root_span.set_metric(
|
|
197
197
|
Tracing::Metadata::Ext::Distributed::TAG_SAMPLING_PRIORITY,
|
|
198
|
-
trace.sampling_priority
|
|
198
|
+
trace.sampling_priority,
|
|
199
199
|
)
|
|
200
200
|
end
|
|
201
201
|
|
|
@@ -209,7 +209,7 @@ module Datadog
|
|
|
209
209
|
return if trace.profiling_enabled.nil?
|
|
210
210
|
|
|
211
211
|
root_span.set_tag(
|
|
212
|
-
Tracing::Metadata::Ext::TAG_PROFILING_ENABLED, trace.profiling_enabled ? 1 : 0
|
|
212
|
+
Tracing::Metadata::Ext::TAG_PROFILING_ENABLED, trace.profiling_enabled ? 1 : 0,
|
|
213
213
|
)
|
|
214
214
|
end
|
|
215
215
|
|
|
@@ -236,7 +236,7 @@ module Datadog
|
|
|
236
236
|
|
|
237
237
|
first_span.set_tag(
|
|
238
238
|
Core::Environment::Ext::TAG_PROCESS_TAGS,
|
|
239
|
-
Core::Environment::Process.serialized
|
|
239
|
+
Core::Environment::Process.serialized,
|
|
240
240
|
)
|
|
241
241
|
end
|
|
242
242
|
|
|
@@ -59,7 +59,7 @@ module Datadog
|
|
|
59
59
|
# a fatal exception
|
|
60
60
|
logger.warn(
|
|
61
61
|
"Error during traces flush: dropped #{traces.length} items. " \
|
|
62
|
-
"Cause: #{e.class}: #{e.message} Location: #{Array(e.backtrace).first}"
|
|
62
|
+
"Cause: #{e.class}: #{e.message} Location: #{Array(e.backtrace).first}",
|
|
63
63
|
)
|
|
64
64
|
end
|
|
65
65
|
end
|
data/lib/datadog/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: datadog
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.48.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Datadog, Inc.
|
|
@@ -49,28 +49,28 @@ dependencies:
|
|
|
49
49
|
requirements:
|
|
50
50
|
- - "~>"
|
|
51
51
|
- !ruby/object:Gem::Version
|
|
52
|
-
version: 1.30.0.
|
|
52
|
+
version: 1.30.0.1.0
|
|
53
53
|
type: :runtime
|
|
54
54
|
prerelease: false
|
|
55
55
|
version_requirements: !ruby/object:Gem::Requirement
|
|
56
56
|
requirements:
|
|
57
57
|
- - "~>"
|
|
58
58
|
- !ruby/object:Gem::Version
|
|
59
|
-
version: 1.30.0.
|
|
59
|
+
version: 1.30.0.1.0
|
|
60
60
|
- !ruby/object:Gem::Dependency
|
|
61
61
|
name: libdatadog
|
|
62
62
|
requirement: !ruby/object:Gem::Requirement
|
|
63
63
|
requirements:
|
|
64
64
|
- - "~>"
|
|
65
65
|
- !ruby/object:Gem::Version
|
|
66
|
-
version: 46.
|
|
66
|
+
version: 46.1.0.1.1
|
|
67
67
|
type: :runtime
|
|
68
68
|
prerelease: false
|
|
69
69
|
version_requirements: !ruby/object:Gem::Requirement
|
|
70
70
|
requirements:
|
|
71
71
|
- - "~>"
|
|
72
72
|
- !ruby/object:Gem::Version
|
|
73
|
-
version: 46.
|
|
73
|
+
version: 46.1.0.1.1
|
|
74
74
|
- !ruby/object:Gem::Dependency
|
|
75
75
|
name: logger
|
|
76
76
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -342,7 +342,6 @@ files:
|
|
|
342
342
|
- lib/datadog/appsec/thread_safe_ref.rb
|
|
343
343
|
- lib/datadog/appsec/trace_keeper.rb
|
|
344
344
|
- lib/datadog/appsec/utils.rb
|
|
345
|
-
- lib/datadog/appsec/utils/hash_coercion.rb
|
|
346
345
|
- lib/datadog/appsec/utils/http.rb
|
|
347
346
|
- lib/datadog/appsec/utils/http/body.rb
|
|
348
347
|
- lib/datadog/appsec/utils/http/body_reader.rb
|
|
@@ -611,6 +610,8 @@ files:
|
|
|
611
610
|
- lib/datadog/open_feature/ext.rb
|
|
612
611
|
- lib/datadog/open_feature/flag_evaluation/aggregator.rb
|
|
613
612
|
- lib/datadog/open_feature/flag_evaluation/writer.rb
|
|
613
|
+
- lib/datadog/open_feature/hooks/debug_logging_hook.rb
|
|
614
|
+
- lib/datadog/open_feature/hooks/evaluation_telemetry_opt_out_hook.rb
|
|
614
615
|
- lib/datadog/open_feature/hooks/flag_eval_evp_hook.rb
|
|
615
616
|
- lib/datadog/open_feature/hooks/flag_eval_metrics_hook.rb
|
|
616
617
|
- lib/datadog/open_feature/hooks/span_enrichment_hook.rb
|
|
@@ -1199,8 +1200,8 @@ licenses:
|
|
|
1199
1200
|
- Apache-2.0
|
|
1200
1201
|
metadata:
|
|
1201
1202
|
allowed_push_host: https://rubygems.org
|
|
1202
|
-
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.
|
|
1203
|
-
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.
|
|
1203
|
+
changelog_uri: https://github.com/DataDog/dd-trace-rb/blob/v2.48.0/CHANGELOG.md
|
|
1204
|
+
source_code_uri: https://github.com/DataDog/dd-trace-rb/tree/v2.48.0
|
|
1204
1205
|
post_install_message: 'JRuby support in the datadog gem is deprecated. Details: https://dtdg.co/jruby-deprecation'
|
|
1205
1206
|
rdoc_options: []
|
|
1206
1207
|
require_paths:
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Datadog
|
|
4
|
-
module AppSec
|
|
5
|
-
module Utils
|
|
6
|
-
# A module for coercing arbitrary objects into hashes.
|
|
7
|
-
module HashCoercion
|
|
8
|
-
# A best effort to coerce an object to a hash with methods known to various
|
|
9
|
-
# frameworks with a fallback to standard library.
|
|
10
|
-
#
|
|
11
|
-
# @param object [Object] The object to coerce.
|
|
12
|
-
# @return [Hash, nil] The coerced `Hash` or `nil` if the object is not coercible.
|
|
13
|
-
def self.coerce(object)
|
|
14
|
-
return object.as_json if object.respond_to?(:as_json)
|
|
15
|
-
return object.to_hash if object.respond_to?(:to_hash)
|
|
16
|
-
return object.to_h if object.respond_to?(:to_h)
|
|
17
|
-
|
|
18
|
-
nil
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|