class HeimdallApm::Visitors::PrettyPrintVisitor
Public Class Methods
new(scope)
click to toggle source
# File lib/heimdall_apm/visitors/pretty_print_visitor.rb, line 4 def initialize(scope) @indent = 0 @scope = scope @io = File.open('log/heimdall_apm.log', 'ab') at_exit { @io.close } pprint("Request #{@scope}:\n") end
Public Instance Methods
after_children()
click to toggle source
# File lib/heimdall_apm/visitors/pretty_print_visitor.rb, line 18 def after_children @indent -= 2 end
before_children()
click to toggle source
# File lib/heimdall_apm/visitors/pretty_print_visitor.rb, line 14 def before_children @indent += 2 end
store_in_vault()
click to toggle source
# File lib/heimdall_apm/visitors/pretty_print_visitor.rb, line 29 def store_in_vault @io.flush end
visit(segment)
click to toggle source
# File lib/heimdall_apm/visitors/pretty_print_visitor.rb, line 22 def visit(segment) pprint("#{segment.type}/#{segment.name}\n") @indent += 2 pprint("duration=#{segment.total_exclusive_time}ms\n") @indent -= 2 end
Private Instance Methods
pprint(str)
click to toggle source
# File lib/heimdall_apm/visitors/pretty_print_visitor.rb, line 35 def pprint(str) @io.write(' ' * @indent) if @indent > 0 @io.write(str) end