Module: RenderGuardian

Defined in:
lib/render_guardian.rb,
lib/render_guardian/budget.rb,
lib/render_guardian/report.rb,
lib/render_guardian/profiler.rb,
lib/render_guardian/helper_tracker.rb,
lib/render_guardian/n_plus_one_detector.rb

Defined Under Namespace

Classes: Budget, Error, HelperTracker, NPlusOneDetector, Profiler, RenderEvent, Report

Class Method Summary collapse

Class Method Details

.analyze(render_log:, budget: nil) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/render_guardian.rb', line 12

def self.analyze(render_log:, budget: nil)
  budget   ||= Budget.new
  profiler = Profiler.new(budget)
  profiler.ingest(render_log)

  n_plus_one = NPlusOneDetector.new(profiler).detect
  helpers    = HelperTracker.new(profiler).analyze

  Report.new(budget, profiler, n_plus_one, helpers)
end