Module: TypeFusion

Defined in:
lib/type_fusion.rb,
lib/type_fusion/config.rb,
lib/type_fusion/sampler.rb,
lib/type_fusion/version.rb,
lib/type_fusion/processor.rb,
lib/type_fusion/sample_job.rb,
lib/type_fusion/sample_call.rb,
lib/type_fusion/rails/railtie.rb,
lib/type_fusion/rack/middleware.rb

Defined Under Namespace

Classes: Config, Middleware, Processor, Railtie, SampleCall, SampleJob, Sampler

Constant Summary collapse

VERSION =
"0.0.6"

Class Method Summary collapse

Class Method Details

.config {|@config| ... } ⇒ Object Also known as: configure

Yields:



7
8
9
10
11
12
13
# File 'lib/type_fusion/config.rb', line 7

def config
  @config ||= Config.instance

  yield @config if block_given?

  @config
end

.processorObject



45
46
47
# File 'lib/type_fusion.rb', line 45

def processor
  @processor ||= TypeFusion::Processor.new(4)
end

.startObject



13
14
15
16
17
18
# File 'lib/type_fusion.rb', line 13

def start
  return if Sampler.instance.trace.enabled?

  puts "[TypeFusion] Starting Sampler..."
  Sampler.instance.trace.enable
end

.start_processingObject



27
28
29
30
# File 'lib/type_fusion.rb', line 27

def start_processing
  puts "[TypeFusion] Start processing..."
  processor.start!
end

.stopObject



20
21
22
23
24
25
# File 'lib/type_fusion.rb', line 20

def stop
  return unless Sampler.instance.trace.enabled?

  puts "[TypeFusion] Stopping Sampler..."
  Sampler.instance.trace.disable
end

.stop_processingObject



32
33
34
35
# File 'lib/type_fusion.rb', line 32

def stop_processing
  puts "[TypeFusion] Stop processing..."
  processor.stop!
end

.with_samplingObject



37
38
39
40
41
42
43
# File 'lib/type_fusion.rb', line 37

def with_sampling
  start

  yield if block_given?

  stop
end