Method: NewRelic::Agent::AuditLogger#log_request

Defined in:
lib/new_relic/agent/audit_logger.rb

#log_request(uri, data, marshaller) ⇒ Object

[View source]

41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/new_relic/agent/audit_logger.rb', line 41

def log_request(uri, data, marshaller)
  return unless enabled? && allowed_endpoint?(uri)

  setup_logger unless setup?
  request_body = if marshaller.class.human_readable?
    marshaller.dump(data, :encoder => @encoder)
  else
    marshaller.prepare(data, :encoder => @encoder).inspect
  end
  @log.info("REQUEST: #{uri}")
  @log.info("REQUEST BODY: #{request_body}")
rescue StandardError, SystemStackError, SystemCallError => e
  ::NewRelic::Agent.logger.warn('Failed writing to audit log', e)
rescue Exception => e
  ::NewRelic::Agent.logger.warn('Failed writing to audit log with exception. Re-raising in case of interrupt.', e)
  raise
end