Hello all,
I am writing an app to stream log files (or any files) on the browser as they grow. The idea is that the rails app should do a 'tail -f' on the file and keep sending the data to the browser. I was thinking if there was any way to achieve this in rails.
Through googling, I came across the 'streaming' support in rails. But, I didn't get it working. Here is what I tried
class LogsController < ApplicationController
def index headers['X-Accel-Buffering'] = 'no' self.status = 200 self.response_body = Streamer.new end
end
class Streamer def each 100000.times do |n| yield "Streaming...#{n} " if (n % 1000 == 0) sleep 1 end end end end
The browser time outs waiting for the data.
Can you please let me know how can I achieve this functionality in rails?
thanks ravi