Class: GooglePubsubEnhancer::Middleware::Logger::Duration

Inherits:
Object
  • Object
show all
Defined in:
lib/google_pubsub_enhancer/middleware/logger/duration.rb

Instance Method Summary collapse

Constructor Details

#initialize(app, opts = {}, &substack) ⇒ Duration

Returns a new instance of Duration.



3
4
5
6
7
8
# File 'lib/google_pubsub_enhancer/middleware/logger/duration.rb', line 3

def initialize(app,opts={},&substack)
  @app = app
  @logger = opts[:logger]
  @log_severity = opts[:log_severity]
  @substack = ::Middleware::Builder.new &substack
end

Instance Method Details

#call(env) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/google_pubsub_enhancer/middleware/logger/duration.rb', line 10

def call(env)
  measure_started = Time.now
  @substack.call(env)
  measure_stopped = Time.now
  @logger.send(@log_severity, "duration: #{measure_stopped - measure_started} sec")
  @app.call(env)
end