From f908b378c5aace724bbeb6b3daa3c41cd5890325 Mon Sep 17 00:00:00 2001 From: Ben Hollis Date: Mon, 9 Jul 2012 00:16:13 -0700 Subject: [PATCH] Fiter out annoying "Could not determine content-length of response body." messages from verbose logging --- .../lib/middleman-core/preview_server.rb | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/middleman-core/lib/middleman-core/preview_server.rb b/middleman-core/lib/middleman-core/preview_server.rb index 3d90d3a9..8a173932 100644 --- a/middleman-core/lib/middleman-core/preview_server.rb +++ b/middleman-core/lib/middleman-core/preview_server.rb @@ -1,3 +1,5 @@ +require "webrick" + module Middleman WINDOWS = !!(RUBY_PLATFORM =~ /(mingw|bccwin|wince|mswin32)/i) unless const_defined?(:WINDOWS) @@ -11,8 +13,6 @@ module Middleman # Start an instance of Middleman::Application # @return [void] def start(options={}) - require "webrick" - app = ::Middleman::Application.server.inst do if options[:environment] set :environment, options[:environment].to_sym @@ -140,8 +140,10 @@ module Middleman :AccessLog => [] } - unless is_logging - http_opts[:Logger] = ::WEBrick::Log::new(nil, 0) + if is_logging + http_opts[:Logger] = FilteredWebrickLog.new + else + http_opts[:Logger] = ::WEBrick::Log.new(nil, 0) end ::WEBrick::HTTPServer.new(http_opts) @@ -171,5 +173,13 @@ module Middleman end end end + + class FilteredWebrickLog < ::WEBrick::Log + def log(level, data) + unless data =~ %r{Could not determine content-length of response body.} + super(level, data) + end + end + end end end