class Imprint::Middleware

Public Class Methods

logger() click to toggle source
# 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) click to toggle source
# File lib/imprint/middleware.rb, line 16
def self.logger=(logger)
  @logger = logger
end
new(app, opts = {}) click to toggle source
# File lib/imprint/middleware.rb, line 28
def initialize(app, opts = {})
  @app = app
end
set_request_trace_id(rack_env) click to toggle source
# 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

Public Instance Methods

call(env) click to toggle source
# File lib/imprint/middleware.rb, line 32
def call(env)
  ::Imprint::Middleware.set_request_trace_id(env)
  @app.call(env)
end