Module: OneApm::Support::VM

Defined in:
lib/one_apm/support/vm.rb,
lib/one_apm/support/vm/mri_vm.rb,
lib/one_apm/support/vm/jruby_vm.rb,
lib/one_apm/support/vm/snapshot.rb,
lib/one_apm/support/vm/rubinius_vm.rb,
lib/one_apm/support/vm/monotonic_gc_profiler.rb

Defined Under Namespace

Classes: JRubyVM, MonotonicGCProfiler, MriVM, RubiniusVM, Snapshot

Class Method Summary collapse

Class Method Details

.create_vmObject



19
20
21
22
23
24
25
26
27
# File 'lib/one_apm/support/vm.rb', line 19

def self.create_vm
  if OneApm::LanguageSupport.using_engine?('jruby')
    JRubyVM.new
  elsif OneApm::LanguageSupport.using_engine?('rbx')
    RubiniusVM.new
  else
    MriVM.new
  end
end

.snapshotObject



11
12
13
# File 'lib/one_apm/support/vm.rb', line 11

def self.snapshot
  vm.snapshot
end

.vmObject



15
16
17
# File 'lib/one_apm/support/vm.rb', line 15

def self.vm
  @vm ||= create_vm
end