Sha256: acd29e17064f455238df84cd448ad8e41896f5708fec48866cb4d80c0e181047
Contents?: true
Size: 811 Bytes
Versions: 10
Compression:
Stored size: 811 Bytes
Contents
require 'rack' require 'colorize' module Tres class RackLogger < ::Rack::CommonLogger private def log env, status, header, began_at now = Time.now length = extract_content_length(header) logger = @logger || env['rack.errors'] logger.write Tres::OUTPUT_FORMAT % ( "[%s] %s %s\n" % [ colorized_status(status), env["REQUEST_METHOD"], env["PATH_INFO"] ] ) end def extract_content_length(headers) value = headers['Content-Length'] or return '-' value.to_s == '0' ? '-' : value end def colorized_status status color = :green case status.to_s[0] when '3' color = :yellow when '4' color = :red end status.to_s[0..3].colorize(color) end end end
Version data entries
10 entries across 10 versions & 1 rubygems