Module: JsonTaggedLogger::TagFromHeaders

Defined in:
lib/json_tagged_logger/tag_from_headers.rb

Class Method Summary collapse

Class Method Details

.get(*header_keys, **labeled_header_keys) ⇒ Object



3
4
5
6
7
8
9
10
11
# File 'lib/json_tagged_logger/tag_from_headers.rb', line 3

def self.get(*header_keys, **labeled_header_keys)
  labels = header_keys + labeled_header_keys.keys
  header_keys = header_keys + labeled_header_keys.values

  lambda do |request|
    values = header_keys.map { |hk| request.headers[hk] }
    labels.zip(values).to_h.compact.to_json
  end
end