Sha256: 130315e554c1270111a82966b1171c1325f5bd321cb37c63ff7b44ff4ec14010

Contents?: true

Size: 710 Bytes

Versions: 247

Compression:

Stored size: 710 Bytes

Contents

module Rack
  # Sets an "X-Runtime" response header, indicating the response
  # time of the request, in seconds
  #
  # You can put it right before the application to see the processing
  # time, or before all the other middlewares to include time for them,
  # too.
  class Runtime
    def initialize(app, name = nil)
      @app = app
      @header_name = "X-Runtime"
      @header_name << "-#{name}" if name
    end

    def call(env)
      start_time = Time.now
      status, headers, body = @app.call(env)
      request_time = Time.now - start_time

      if !headers.has_key?(@header_name)
        headers[@header_name] = "%0.6f" % request_time
      end

      [status, headers, body]
    end
  end
end

Version data entries

247 entries across 214 versions & 40 rubygems

Version Path
angular-rails4-templates-0.4.1 vendor/ruby/2.1.0/gems/rack-1.5.5/lib/rack/runtime.rb
angular-rails4-templates-0.4.0 vendor/ruby/2.1.0/gems/rack-1.5.5/lib/rack/runtime.rb
angular-rails4-templates-0.3.0 vendor/ruby/2.1.0/gems/rack-1.5.5/lib/rack/runtime.rb
classiccms-0.7.5 vendor/bundle/gems/rack-1.4.1/lib/rack/runtime.rb
classiccms-0.7.4 vendor/bundle/gems/rack-1.4.1/lib/rack/runtime.rb
classiccms-0.7.3 vendor/bundle/gems/rack-1.4.1/lib/rack/runtime.rb
active_mailer-0.0.10 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/runtime.rb
rack-1.4.7 lib/rack/runtime.rb
rack-1.5.5 lib/rack/runtime.rb
rack-1.4.6 lib/rack/runtime.rb
rack-1.5.4 lib/rack/runtime.rb
rack-1.5.3 lib/rack/runtime.rb
judge-2.0.5 vendor/bundle/ruby/2.1.0/gems/rack-1.4.5/lib/rack/runtime.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/runtime.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/runtime.rb
apl-library-0.0.90 vendor/bundle/ruby/1.9.1/gems/rack-1.5.2/lib/rack/runtime.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/1.9.1/gems/rack-1.5.2/lib/rack/runtime.rb
nanumfont-rails-0.1 vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/runtime.rb
rack-1.6.0.beta lib/rack/runtime.rb
scout_realtime-1.0.5 lib/vendor/rack-1.5.2/lib/rack/runtime.rb