class Puma::TCPLogger
Constants
- FORMAT
Public Class Methods
new(logger, app, quiet=false)
click to toggle source
# File lib/puma/tcp_logger.rb, line 5 def initialize(logger, app, quiet=false) @logger = logger @app = app @quiet = quiet end
Public Instance Methods
call(env, socket)
click to toggle source
# File lib/puma/tcp_logger.rb, line 26 def call(env, socket) who = env[Const::REMOTE_ADDR] log who, "connected" unless @quiet env['log'] = lambda { |str| log(who, str) } begin @app.call env, socket rescue Object => e log who, "exception: #{e.message} (#{e.class})" else log who, "disconnected" unless @quiet end end
log(who, str)
click to toggle source
# File lib/puma/tcp_logger.rb, line 13 def log(who, str) now = Time.now.strftime("%d/%b/%Y %H:%M:%S") log_str = "#{now} - #{who} - #{str}" case @logger when IO @logger.puts log_str when Events @logger.log log_str end end