Class: Kraftwerk::Logger::DevLogger

Inherits:
Logger
  • Object
show all
Defined in:
lib/kraftwerk/logger/dev_logger.rb

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ DevLogger

Returns a new instance of DevLogger.



8
9
10
11
12
13
# File 'lib/kraftwerk/logger/dev_logger.rb', line 8

def initialize(*args)
  super
  self.formatter = proc do |severity, datetime, progname, message|
    message + "\n"
  end
end

Instance Method Details

#handle_request_finish(data, meta) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/kraftwerk/logger/dev_logger.rb', line 25

def handle_request_finish(data, meta)
  msg = String.new
  clr = data[:code] < 400 ? :green : :red

  msg << color("[#{data[:code]}] ", clr)
  msg << "[#{data[:duration].round(3)} ms] "
  if !data[:body].nil? && data[:body].length > 0
    msg << json_response(data[:body])
  else
    msg << "[empty response]"
  end

  info(msg + "\n")
end

#handle_request_start(data, meta) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/kraftwerk/logger/dev_logger.rb', line 15

def handle_request_start(data, meta)
  msg = String.new
  msg << "[#{meta[:time]}]\n"
  msg << color("[#{data[:method]}] ", :magenta)
  msg << color(data[:path], :green)
  msg << " "
  msg << (data[:params]&.empty? ? '' : JSON.dump(data[:params]))
  info(msg)
end