class Nav::Logger::Middleware::RequestTagger
Public Class Methods
new(app)
click to toggle source
# File lib/nav/logger/middleware/request_tagger.rb, line 6 def initialize(app) @app = app end
Public Instance Methods
call(env)
click to toggle source
# File lib/nav/logger/middleware/request_tagger.rb, line 10 def call(env) setup_request_store store_request_var env @app.call env ensure clear_request_store end
Private Instance Methods
clear_request_store()
click to toggle source
# File lib/nav/logger/middleware/request_tagger.rb, line 28 def clear_request_store RequestStore.end! RequestStore.clear! end
setup_request_store()
click to toggle source
# File lib/nav/logger/middleware/request_tagger.rb, line 19 def setup_request_store RequestStore.begin! end
store_request_var(env)
click to toggle source
# File lib/nav/logger/middleware/request_tagger.rb, line 23 def store_request_var(env) RequestStore[:request_id] = env["HTTP_X_REQUEST_ID"] || SecureRandom.uuid RequestStore[:session_id] = env["HTTP_X_SESSION_ID"] if env.key? "HTTP_X_SESSION_ID" end