class TwirpRails::LogSubscriber

Public Instance Methods

default_log_writer(event) click to toggle source
# File lib/twirp_rails/log_subscriber.rb, line 13
def default_log_writer(event)
  twirp_call_info = {
    'duration' => event.duration,
    'method' => event.payload[:env][:rpc_method],
    'params' => event.payload[:env][:input].to_h
  }

  if (exception = event.payload[:env][:exception])
    twirp_call_info['exception'] = exception
  end

  Rails.logger.info twirp_call_info
end
instrumenter(event) click to toggle source
# File lib/twirp_rails/log_subscriber.rb, line 5
def instrumenter(event)
  if LogSubscriber.log_writer
    LogSubscriber.log_writer.call(event)
  else
    default_log_writer(event)
  end
end