Class: RequestTrail::Formatters::FlameGraph

Inherits:
Object
  • Object
show all
Includes:
Base
Defined in:
lib/request_trail/formatters/flame_graph.rb

Constant Summary collapse

BAR_WIDTH =
36
BAR_CHAR =
""
COLORS =
{
  header: "\e[1m",
  controller: "\e[34m",
  sql: "\e[33m",
  cache: "\e[32m",
  view: "\e[35m",
  http: "\e[36m"
}.freeze
RESET =
"\e[0m"

Instance Method Summary collapse

Constructor Details

#initialize(colorize: false, colors: {}) ⇒ FlameGraph

Returns a new instance of FlameGraph.



21
22
23
24
# File 'lib/request_trail/formatters/flame_graph.rb', line 21

def initialize(colorize: false, colors: {})
  @colorize = colorize
  @colors = COLORS.merge(colors)
end

Instance Method Details

#format(request, collector) ⇒ Object



26
27
28
29
30
# File 'lib/request_trail/formatters/flame_graph.rb', line 26

def format(request, collector)
  total = collector.elapsed_ms.to_f
  lines = [header_line(request, collector)] + detail_rows(collector, total)
  lines.join("\n")
end