Class: AppMap::Trace::Tracers

Inherits:
Object
  • Object
show all
Defined in:
lib/appmap/trace/tracer.rb

Instance Method Summary collapse

Constructor Details

#initializeTracers

Returns a new instance of Tracers.



7
8
9
# File 'lib/appmap/trace/tracer.rb', line 7

def initialize
  @tracers = []
end

Instance Method Details

#delete(tracer) ⇒ Object



28
29
30
31
32
33
# File 'lib/appmap/trace/tracer.rb', line 28

def delete(tracer)
  return unless @tracers.member?(tracer)

  @tracers.delete(tracer)
  tracer.disable
end

#empty?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/appmap/trace/tracer.rb', line 11

def empty?
  @tracers.empty?
end

#record_event(event) ⇒ Object



22
23
24
25
26
# File 'lib/appmap/trace/tracer.rb', line 22

def record_event(event)
  @tracers.each do |tracer|
    tracer.record_event(event)
  end
end

#trace(functions, enable: true) ⇒ Object



15
16
17
18
19
20
# File 'lib/appmap/trace/tracer.rb', line 15

def trace(functions, enable: true)
  AppMap::Trace::Tracer.new(functions).tap do |tracer|
    @tracers << tracer
    tracer.enable if enable
  end
end