Class: XRayMethodTracer

Inherits:
Object
  • Object
show all
Defined in:
lib/xray_method_tracer.rb

Class Attribute Summary collapse

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(base_klasses: [], klasses: []) ⇒ XRayMethodTracer

Returns a new instance of XRayMethodTracer.



13
14
15
16
# File 'lib/xray_method_tracer.rb', line 13

def initialize(base_klasses: [], klasses: [])
  @base_klasses = base_klasses
  @klasses = klasses
end

Class Attribute Details

.path_prefixObject

dockerなどでWORKDIRを変更した場合に対応するためのprefix



10
11
12
# File 'lib/xray_method_tracer.rb', line 10

def path_prefix
  @path_prefix
end

Instance Attribute Details

#base_klassesObject (readonly)

Returns the value of attribute base_klasses.



7
8
9
# File 'lib/xray_method_tracer.rb', line 7

def base_klasses
  @base_klasses
end

#klassesObject (readonly)

Returns the value of attribute klasses.



7
8
9
# File 'lib/xray_method_tracer.rb', line 7

def klasses
  @klasses
end

Instance Method Details

#traceObject



18
19
20
21
22
23
24
25
26
27
28
# File 'lib/xray_method_tracer.rb', line 18

def trace
  if empty_klasses?
    Loggers::TraceLogger.new.warn("At least one klasses or base_klasses is required No Tracing will be done")
    return
  end

  Loggers::TraceLogger.new.info("setup method trace")
  method_trace_setup = MethodTraceSetUpFactory.create(base_klasses, klasses)
  method_trace_setup.apply_trace
  Loggers::TraceLogger.new.info("setup method trace done")
end