Class: Dalia::Api::SurveyPlatform::Log

Inherits:
Object
  • Object
show all
Defined in:
lib/dalia_api_survey_platform/log.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(debug_mode = true) ⇒ Log

Returns a new instance of Log.



4
5
6
# File 'lib/dalia_api_survey_platform/log.rb', line 4

def initialize(debug_mode = true)
  @debug_mode = debug_mode
end

Instance Attribute Details

#debug_modeObject (readonly)

Returns the value of attribute debug_mode.



2
3
4
# File 'lib/dalia_api_survey_platform/log.rb', line 2

def debug_mode
  @debug_mode
end

Instance Method Details

#debug(message) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/dalia_api_survey_platform/log.rb', line 8

def debug(message)
  return unless debug_mode

  result = "Dalia::Api::SurveyPlatform [#{Time.now.strftime("%Y-%m-%d %H:%M:%S")}]: #{message}"

  if defined? ::Rails
    ::Rails.logger.info result
  else
    Kernel.puts result
  end
end

#log_options(options) ⇒ Object



20
21
22
23
24
# File 'lib/dalia_api_survey_platform/log.rb', line 20

def log_options(options)
  debug "Options:"
  debug "-----------"
  options.each { |k,v| debug "#{k}: #{v}" }
end

#log_response(response) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/dalia_api_survey_platform/log.rb', line 26

def log_response(response)
  if response.content_type == "application/json"
    body = JSON.pretty_generate(JSON.parse_sym(response.body))
  else
    body = response.body
  end

  debug "Response:"
  debug "-----------"
  debug "response.request: #{response.request.last_uri}"
  debug "response.body: #{body}"
  debug "response.content_type: #{response.content_type}"
  debug "response.code: #{response.code}"
  debug "response.message: #{response.message}"
end