Sha256: 74ee9cc198fc3aae56873dd2272be1a58db2bfa52ca17d2066297de61914855b
Contents?: true
Size: 1.05 KB
Versions: 5
Compression:
Stored size: 1.05 KB
Contents
# frozen_string_literal: true require_relative '../../metadata/ext' module Datadog module Tracing module Contrib module Sinatra # Gets and sets trace information from a Rack headers Hash module Headers module_function def response_header_tags(headers, target_headers) target_headers ||= [] {}.tap do |result| target_headers.each do |header| if headers.key?(header) result[Tracing::Metadata::Ext::HTTP::ResponseHeaders.to_tag(header)] = headers[header] else # Try a case-insensitive lookup uppercased_header = header.to_s.upcase matching_header = headers.keys.find { |h| h.upcase == uppercased_header } if matching_header result[Tracing::Metadata::Ext::HTTP::ResponseHeaders.to_tag(header)] = headers[matching_header] end end end end end end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems