lib/opentelemetry/instrumentation/rack/middlewares/tracer_middleware.rb in opentelemetry-instrumentation-rack-0.23.5 vs lib/opentelemetry/instrumentation/rack/middlewares/tracer_middleware.rb in opentelemetry-instrumentation-rack-0.24.0
- old
+ new
@@ -75,9 +75,11 @@
request_span_name = create_request_span_name(env['REQUEST_URI'] || original_env['PATH_INFO'], env)
request_span_kind = frontend_context.nil? ? :server : :internal
tracer.in_span(request_span_name,
attributes: request_span_attributes(env: env),
kind: request_span_kind) do |request_span|
+ request_start_time = OpenTelemetry::Instrumentation::Rack::Util::QueueTime.get_request_start(env)
+ request_span.add_event('http.proxy.request.started', timestamp: request_start_time) unless request_start_time.nil?
OpenTelemetry::Instrumentation::Rack.with_span(request_span) do
@app.call(env).tap do |status, headers, response|
set_attributes_after_request(request_span, status, headers, response)
config[:response_propagators].each { |propagator| propagator.inject(headers) }
end