class Protobuf::Rpc::Middleware::Logger::Instrumenter


Completed 200 OK in 142ms (Views: 117.6ms | ActiveRecord: 1.7ms)
Rendered releases/index.html.erb within layouts/application (11.0ms)
Rendered releases/_release.html.erb (0.0ms)
Rendered releases/_release.html.erb (0.0ms)
Rendered releases/_release.html.erb (0.0ms)
Rendered releases/_release.html.erb (0.0ms)
Processing by ReleasesController#index as HTML
Started GET “/” for 127.0.0.1 at 2014-02-12 09:40:29 -0700
time as well as ActiveRecord time, etc.:
TODO: Consider adopting Rails-style logging so we can track serialization
TODO: Replace this with ActiveSupport::Notifications and log subscribers

def elapsed_time

def elapsed_time
  (@start_time && @end_time ? "#{(@end_time - @start_time).round(4)}s" : nil)
end

def flush(env)

def flush(env)
  Protobuf::Logger.info { to_s(env) }
end

def rpc

def rpc
  env.service_name && env.method_name ? "#{env.service_name}##{env.method_name}" : nil
end

def sizes

def sizes
  if env.encoded_response?
    "#{env.encoded_request.size}B/#{env.encoded_response.size}B"
  else
    "#{env.encoded_request.size}B/-"
  end
end

def start

def start
  @start_time = ::Time.now.utc
end

def stop

def stop
  @end_time = ::Time.now.utc
end

def to_s(env)

def to_s(env)
  @env = env
  [
    "[SRV]",
    env.client_host,
    env.worker_id,
    rpc,
    sizes,
    elapsed_time,
    @end_time.try(:iso8601)
  ].compact.join(' - ')
end