Sha256: f57f2a499ad2531b060f7775287746f43d5f941b21130d055be572e592a701d0
Contents?: true
Size: 636 Bytes
Versions: 6
Compression:
Stored size: 636 Bytes
Contents
# frozen_string_literal: true require 'rack' require 'securerandom' module Modern class Request < Rack::Request # rubocop:disable Style/MutableConstant LOCAL_REQUEST_STORE = {} # rubocop:enable Style/MutableConstant attr_reader :logger def initialize(env, logger) super(env) env["HTTP_X_REQUEST_ID"] ||= SecureRandom.uuid @logger = logger.child(request_id: request_id) end def request_id env["HTTP_X_REQUEST_ID"] end def local_store LOCAL_REQUEST_STORE[request_id] ||= {} end def cleanup LOCAL_REQUEST_STORE.delete(request_id) end end end
Version data entries
6 entries across 6 versions & 1 rubygems