Class: Crawlscope::ServerTiming::Reporter

Inherits:
Object
  • Object
show all
Defined in:
lib/crawlscope/server_timing/reporter.rb

Instance Method Summary collapse

Constructor Details

#initialize(io:) ⇒ Reporter

Returns a new instance of Reporter.



8
9
10
# File 'lib/crawlscope/server_timing/reporter.rb', line 8

def initialize(io:)
  @io = io
end

Instance Method Details

#report(summary, base_url:) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/crawlscope/server_timing/reporter.rb', line 12

def report(summary, base_url:)
  return unless summary.present?

  @io.puts("")
  @io.puts("Server Timing:")
  @io.puts(
    "  Coverage: #{summary.coverage}/#{summary.pages.size} pages " \
    "(#{percentage(summary.coverage, summary.pages.size)}); " \
    "durations on #{summary.duration_pages} #{pluralize(:page, summary.duration_pages)}"
  )

  report_metrics(summary.metrics)
  report_signals(summary.signals)
  report_worst_pages(summary.worst_pages, base_url: base_url)
  @io.puts("  Ignored malformed entries: #{summary.invalid_count}") if summary.invalid_count.positive?
end