Начиная с Rails 3.2.12, вместо monkey-patching before_dispatch или call_app, теперь есть метод, который получает запрос и возвращает бит Started GET "/session/new" for 127.0.0.1 at 2012-09-26 14:51:42 -0700
.
Так что вы можете вместо этого переопределить этот метод вваш собственный логгер или патч обезьяны именно этот метод.
# or "class Rails::Rack::Logger < ActiveSupport::LogSubscriber" for monkey patch
class URLLogger < Rails::Rack::Logger
def started_request_message(request)
'Started %s "%s%s%s" for %s at %s' % [
request.request_method,
request.protocol,
request.host_with_port,
request.filtered_path,
request.ip,
Time.now.to_default_s ]
end
end
Если вы подкласс, не забудьте изменить цепочку промежуточного программного обеспечения в config/application.rb
(и убедитесь, что URLLogger загружен до блока конфигурации):
config.middleware.insert_before(Rails::Rack::Logger, URLLogger)
config.middleware.delete(Rails::Rack::Logger)