class Gruf::Interceptors::Timer
Utility class that can be used by interceptors to time requests
Public Class Methods
time() { || ... }
click to toggle source
Time a given code block and return a Timer::Result
object
@return [Gruf::Interceptors::Timer::Result]
# File lib/gruf/interceptors/timer.rb, line 75 def self.time start_time = Time.now message = yield end_time = Time.now elapsed = (end_time - start_time) * 1000.0 Result.new(message, elapsed, true) rescue GRPC::BadStatus => e end_time = Time.now elapsed = (end_time - start_time) * 1000.0 Result.new(e, elapsed, false) end