class Takwimu::Rack

Public Class Methods

new(app, reporter, options = {}) click to toggle source
# File lib/takwimu/rack.rb, line 4
def initialize(app, reporter, options = {})
  @reporter = reporter
  @meters = Array(options.fetch(:meters, [ResourceUsage]))
  @app = build_instrumented_app(app, @meters)
end

Public Instance Methods

call(env) click to toggle source
# File lib/takwimu/rack.rb, line 10
def call(env)
  env[TIMINGS] = {}
  env[GAUGES]  = []

  @app.call(env).tap { @reporter.report env }
end