diff --git a/sentry-ruby/lib/sentry/interfaces/request.rb b/sentry-ruby/lib/sentry/interfaces/request.rb index 3290b7652..024df1f73 100644 --- a/sentry-ruby/lib/sentry/interfaces/request.rb +++ b/sentry-ruby/lib/sentry/interfaces/request.rb @@ -107,8 +107,11 @@ def filter_and_format_headers(env, send_default_pii) end end + # Regex to detect lowercase chars — match? is allocation-free (no MatchData/String) + LOWERCASE_PATTERN = /[a-z]/.freeze + def is_skippable_header?(key) - key.upcase != key || # lower-case envs aren't real http headers + key.match?(LOWERCASE_PATTERN) || # lower-case envs aren't real http headers key == "HTTP_COOKIE" || # Cookies don't go here, they go somewhere else !(key.start_with?("HTTP_") || CONTENT_HEADERS.include?(key)) end