class Rack::Logjam::Rails::Middleware

Attributes

app[R]

Public Class Methods

new( app ) click to toggle source
# File lib/rack/logjam/rails/middleware.rb, line 9
def initialize( app )
  @app = app
end

Public Instance Methods

call( env ) click to toggle source
# File lib/rack/logjam/rails/middleware.rb, line 13
def call( env )
  before env

  app.call( env ).tap do |rack_response|
    after env, *rack_response
  end
end

Protected Instance Methods

after( env, status, headers, response ) click to toggle source
# File lib/rack/logjam/rails/middleware.rb, line 31
def after( env, status, headers, response )
  return unless api_request?( env )

  logger.log_response( env, status, headers, response )
end
api_request?( env ) click to toggle source
# File lib/rack/logjam/rails/middleware.rb, line 37
def api_request?( env )
  path_info( env ) =~ /^\/api\//
end
before( env ) click to toggle source
# File lib/rack/logjam/rails/middleware.rb, line 25
def before( env )
  return unless api_request?( env )

  logger.log_request( env )
end
logger() click to toggle source
# File lib/rack/logjam/rails/middleware.rb, line 45
def logger
  Rack::Logjam::Logger.new
end
path_info( env ) click to toggle source
# File lib/rack/logjam/rails/middleware.rb, line 41
def path_info( env )
  env['PATH_INFO']
end