Object
The default implement of an event sink object used by Server for when certain kinds of events occur in the life of the server.
The methods available are the events that the Server fires.
Create an Events object that prints to stdout and stderr.
# File lib/puma/events.rb, line 16 def initialize(stdout, stderr) @stdout = stdout @stderr = stderr @stdout.sync = true @stderr.sync = true end
Returns an Events object which writes it’s status to 2 StringIO objects.
# File lib/puma/events.rb, line 66 def self.strings Events.new StringIO.new, StringIO.new end
Write str to +@stderr+
# File lib/puma/events.rb, line 34 def error(str) @stderr.puts "ERROR: #{str}" exit 1 end
Write str to +@stdout+
# File lib/puma/events.rb, line 28 def log(str) @stdout.puts str end
An HTTP parse error has occured. server is the Server object, env the request, and error a parsing exception.
# File lib/puma/events.rb, line 43 def parse_error(server, env, error) @stderr.puts "#{Time.now}: HTTP parse error, malformed request (#{env[HTTP_X_FORWARDED_FOR] || env[REMOTE_ADDR]}): #{error.inspect}" @stderr.puts "#{Time.now}: ENV: #{env.inspect}\n---\n" end
An unknown error has occured. server is the Server object, env the request, error an exception object, and kind some additional info.
# File lib/puma/events.rb, line 52 def unknown_error(server, error, kind="Unknown") if error.respond_to? :render error.render "#{Time.now}: #{kind} error", @stderr else @stderr.puts "#{Time.now}: #{kind} error: #{error.inspect}" @stderr.puts error.backtrace.join("\n") end end
Generated with the Darkfish Rdoc Generator 2.