Class: Imprint::Middleware
- Inherits:
-
Object
- Object
- Imprint::Middleware
- Defined in:
- lib/imprint/middleware.rb
Class Method Summary collapse
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, opts = {}) ⇒ Middleware
constructor
A new instance of Middleware.
Constructor Details
#initialize(app, opts = {}) ⇒ Middleware
Returns a new instance of Middleware.
28 29 30 |
# File 'lib/imprint/middleware.rb', line 28 def initialize(app, opts = {}) @app = app end |
Class Method Details
.logger ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/imprint/middleware.rb', line 20 def self.logger @logger ||= if defined?(Rails.logger) Rails.logger else Logger.new(STDOUT) end end |
.logger=(logger) ⇒ Object
16 17 18 |
# File 'lib/imprint/middleware.rb', line 16 def self.logger=(logger) @logger = logger end |
.set_request_trace_id(rack_env) ⇒ Object
6 7 8 9 10 11 12 13 14 |
# File 'lib/imprint/middleware.rb', line 6 def self.set_request_trace_id(rack_env) trace_id = rack_env[Imprint::Tracer::TRACER_HEADER] || rack_env[Imprint::Tracer::RAILS_REQUEST_ID] if trace_id.nil? trace_id = Imprint::Tracer.rand_trace_id logger.info("trace_status=initiated trace_id=#{trace_id}") end Imprint::Tracer.set_trace_id(trace_id, rack_env) trace_id end |
Instance Method Details
#call(env) ⇒ Object
32 33 34 35 |
# File 'lib/imprint/middleware.rb', line 32 def call(env) ::Imprint::Middleware.set_request_trace_id(env) @app.call(env) end |