1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/railties/lib/rails/rack/logger.rb
2008-12-18 14:17:43 -08:00

28 lines
695 B
Ruby

module Rails
module Rack
class Logger
EnvironmentLog = "#{File.expand_path(Rails.root)}/log/#{Rails.env}.log"
def initialize(app, log = nil)
@app = app
@path = Pathname.new(log || EnvironmentLog).cleanpath
@cursor = ::File.size(@path)
@last_checked = Time.now.to_f
end
def call(env)
response = @app.call(env)
::File.open(@path, 'r') do |f|
f.seek @cursor
if f.mtime.to_f > @last_checked
contents = f.read
@last_checked = f.mtime.to_f
@cursor += contents.length
print contents
end
end
response
end
end
end
end