From 8ee1d1cb70bee8c938966e4e042b4929ced8b1a3 Mon Sep 17 00:00:00 2001 From: Azul Date: Fri, 30 Sep 2016 11:59:20 +0200 Subject: logging: use proper logger This way the logs do not interfere with test output --- lib/nickserver/reel_server.rb | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'lib/nickserver/reel_server.rb') diff --git a/lib/nickserver/reel_server.rb b/lib/nickserver/reel_server.rb index 79265ec..0ff4425 100644 --- a/lib/nickserver/reel_server.rb +++ b/lib/nickserver/reel_server.rb @@ -1,8 +1,11 @@ silence_warnings do require 'reel' end +require 'logger' +require 'nickserver/config' require 'nickserver/adapters/celluloid_http' require 'nickserver/dispatcher' +require 'nickserver/logging_responder' module Nickserver class ReelServer < Reel::Server::HTTP @@ -31,19 +34,20 @@ module Nickserver protected def handle_request(request) - puts "#{request.method} #{request.uri}" - puts " #{params(request)}" + logger.info "#{request.method} #{request.uri}" + logger.debug " #{params(request)}" handler = handler_for(request) handler.respond_to params(request), request.headers rescue StandardError => e - $stderr.puts e - $stderr.puts e.backtrace.join "\n " + logger.error e + logger.error e.backtrace.join "\n " request.respond 500, "{}" end def handler_for(request) # with reel the request is the responder - Dispatcher.new(request) + responder = LoggingResponder.new(request, logger) + Dispatcher.new(responder) end def params(request) @@ -54,5 +58,8 @@ module Nickserver end end + def logger + @logger ||= ::Logger.new Config.log_file + end end end -- cgit v1.2.3