class Rack::WebProfiler::Engine::Processor
Attributes
record[R]
Public Class Methods
new(request, response)
click to toggle source
# File lib/rack/web_profiler/engine.rb, line 77 def initialize(request, response) @record = new_record(request, response) end
Public Instance Methods
save!()
click to toggle source
# File lib/rack/web_profiler/engine.rb, line 81 def save! @record.save({ transaction: true }) rescue => e # @todo raise_if_debug WebProfiler::RuntimeError, "Error while processing to save datas", e.backtrace end
Private Instance Methods
collect_datas(request, response)
click to toggle source
# File lib/rack/web_profiler/engine.rb, line 100 def collect_datas(request, response) datas = {} Rack::WebProfiler.config.collectors.all.each do |name, definition| begin datas[name.to_sym] = definition.collect!(request, response).to_h rescue => e # @todo raise_if_debug WebProfiler::RuntimeError, "Error while collecting datas of collector '#{name}'" end end datas end
new_record(request, response)
click to toggle source
# File lib/rack/web_profiler/engine.rb, line 89 def new_record(request, response) WebProfiler::Model::CollectionRecord.new({ url: request.url, ip: request.ip, http_method: request.request_method, http_status: response.status, content_type: response.content_type, datas: collect_datas(request, response), }) end