From 57809b401530d0db9bb0b59ddeb4ee097ddf451f Mon Sep 17 00:00:00 2001 From: Jack Rothrock Date: Fri, 1 Mar 2024 15:11:29 -0700 Subject: [PATCH] Check for upgrade header --- .../layer_converters/request_queue_time_converter.rb | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/scout_apm/layer_converters/request_queue_time_converter.rb b/lib/scout_apm/layer_converters/request_queue_time_converter.rb index c3c27f7f..933a6726 100644 --- a/lib/scout_apm/layer_converters/request_queue_time_converter.rb +++ b/lib/scout_apm/layer_converters/request_queue_time_converter.rb @@ -4,8 +4,6 @@ class RequestQueueTimeConverter < ConverterBase HEADERS = %w(X-Queue-Start X-Request-Start X-QUEUE-START X-REQUEST-START x-queue-start x-request-start) - WEBSOCKET_HEADERS = %w(SEC_WEBSOCKET_VERSION Sec-WebSocket-Version SEC_WEBSOCKET_PROTOCOL Sec-WebSocket-Protocol SEC_WEBSOCKET_KEY Sec-WebSocket-Key) - def headers request.headers end @@ -17,7 +15,7 @@ def record! return unless headers - # When an application uses TurboStreams, we capture very innaccurate queue times. + # When an application uses Turbo Streams, we capture very innaccurate queue times. return if request_over_websocket? raw_start = locate_timestamp @@ -44,7 +42,7 @@ def record! private def request_over_websocket? - WEBSOCKET_HEADERS.any? { |header| headers[header] } + headers["Upgrade"] == "websocket" end # Looks through the possible headers with this data, and extracts the raw