Module: Vernier
- Defined in:
- lib/vernier.rb,
lib/vernier/hooks.rb,
lib/vernier/marker.rb,
lib/vernier/result.rb,
lib/vernier/autorun.rb,
lib/vernier/version.rb,
lib/vernier/collector.rb,
lib/vernier/middleware.rb,
lib/vernier/output/top.rb,
lib/vernier/stack_table.rb,
lib/vernier/thread_names.rb,
lib/vernier/output/firefox.rb,
lib/vernier/parsed_profile.rb,
lib/vernier/output/cpuprofile.rb,
lib/vernier/hooks/memory_usage.rb,
lib/vernier/output/file_listing.rb,
lib/vernier/stack_table_helpers.rb,
lib/vernier/hooks/active_support.rb,
lib/vernier/output/filename_filter.rb,
ext/vernier/vernier.cc
Defined Under Namespace
Modules: Autorun, Hooks, Marker, Output, StackTableHelpers
Classes: Collector, Error, MemoryTracker, Middleware, ParsedProfile, Result, StackTable, ThreadNames
Constant Summary
collapse
- VERSION =
"1.8.1"
Class Method Summary
collapse
Class Method Details
59
60
61
|
# File 'ext/vernier/memory.cc', line 59
static VALUE (VALUE self) {
return ULL2NUM(());
}
|
.profile(mode: :wall, **collector_options) ⇒ Object
Also known as:
trace, run
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/vernier.rb', line 21
def self.profile(mode: :wall, **collector_options)
collector = Vernier::Collector.new(mode, collector_options)
collector.start
result = nil
begin
yield collector
ensure
result = collector.stop
end
result
end
|
.start_profile(mode: :wall, **collector_options) ⇒ Object
42
43
44
45
46
47
48
49
50
51
52
|
# File 'lib/vernier.rb', line 42
def self.start_profile(mode: :wall, **collector_options)
if @collector
@collector.stop
@collector = nil
raise "profile already started, stopping..."
end
@collector = Vernier::Collector.new(mode, collector_options)
@collector.start
end
|
.stop_profile ⇒ Object
54
55
56
57
58
59
60
61
|
# File 'lib/vernier.rb', line 54
def self.stop_profile
raise "profile not started" unless @collector
result = @collector.stop
@collector = nil
result
end
|
.trace_retained(**profile_options, &block) ⇒ Object
63
64
65
|
# File 'lib/vernier.rb', line 63
def self.trace_retained(**profile_options, &block)
profile(**profile_options.merge(mode: :retained), &block)
end
|