Class: TimedResult

Inherits:
Object
  • Object
show all
Defined in:
lib/http_api_client/timed_result.rb

Class Method Summary collapse

Class Method Details

.millis_since(start_time) ⇒ Object



20
21
22
# File 'lib/http_api_client/timed_result.rb', line 20

def self.millis_since(start_time)
  (Time.now - start_time) * 1000
end

.time(event, log_data = {}) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/http_api_client/timed_result.rb', line 4

def self.time(event, log_data = {})
  start_time = Time.now
  yield
ensure

  time = millis_since(start_time)

  log_entries = ["event=#{event}"]
  log_entries << "request_id=#{Thread.current[:request_id]}" if Thread.current[:request_id]
  log_entries << "timing=#{time}"
  log_entries.concat(log_data.to_param.split('&'))

  HttpApiClient.logger.info(log_entries.join(", "))

end