Class: Lograge::Formatters::RailsLogger
- Inherits:
-
Object
- Object
- Lograge::Formatters::RailsLogger
- Defined in:
- lib/lograge/formatters/rails_logger.rb
Constant Summary collapse
- INTERNAL_PARAMS =
%w(controller action format _method only_path)
Instance Method Summary collapse
- #call(data) ⇒ Object
- #completed(data) ⇒ Object
- #start_processing(data) ⇒ Object
- #started_request_message(data) ⇒ Object
Instance Method Details
#call(data) ⇒ Object
6 7 8 9 10 11 |
# File 'lib/lograge/formatters/rails_logger.rb', line 6 def call(data) lines = start_processing(data) lines << completed(data) lines.join("\n") end |
#completed(data) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/lograge/formatters/rails_logger.rb', line 35 def completed(data) status = data[:status] duration = data[:duration].round if data[:error] "Error #{status} #{data[:error]} after #{duration}ms" else lines = [] additions = [] additions << "ActiveRecord: %.1fms" % data[:db].to_f lines << "Completed #{status} #{Rack::Utils::HTTP_STATUS_CODES[status]} in #{duration}ms" lines << " (#{additions.join(" | ")})" unless additions.blank? lines.join("\n") end end |
#start_processing(data) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/lograge/formatters/rails_logger.rb', line 13 def start_processing(data) params = data[:params].except(*INTERNAL_PARAMS) format = data[:format] format = format.to_s.upcase if format.is_a?(Symbol) lines = [] lines << (data) lines << "Processing by #{data[:controller]}##{data[:action]} as #{format}" lines << " Parameters: #{params.inspect}" unless params.empty? lines end |
#started_request_message(data) ⇒ Object
27 28 29 30 31 32 33 |
# File 'lib/lograge/formatters/rails_logger.rb', line 27 def (data) 'Started %s "%s" for %s at %s' % [ data[:method], data[:path], data[:remote_ip], Time.now.to_default_s ] end |